草庐IT

java - 如何设置 rmiregistry 使用的类路径?

我正在尝试制作一个JavaRMI客户端/服务器应用程序。我在启动我的应用程序的服务器端时遇到问题,因为当我尝试启动应用程序。我从这里的简单教程开始:http://docs.oracle.com/javase/1.5.0/docs/guide/rmi/hello/hello-world.html.按照这些说明进行操作后,它最初抛出ClassNotFoundException并提示找不到“example.hello.Hello”。我能够通过在教程中从destDir目录启动rmiregistry来解决这个问题,因为rmiregistry显然将其初始起始目录用作其类路径的一部分。在那之后我开始

java - 请问java RMI的意义?

按照目前的情况,这个问题不适合我们的问答形式。我们希望答案得到事实、引用或专业知识的支持,但这个问题可能会引发辩论、争论、投票或扩展讨论。如果您觉得这个问题可以改进并可能重新打开,visitthehelpcenter指导。关闭9年前。为什么人们使用RMI,或者我应该什么时候使用RMI?我在oracle的网站上阅读了那些关于RMI的教程。但它没有提供足够的实际示例。据我了解,软件的模块应该尽可能“不相关和分离”。RMI在某种程度上对我来说似乎是高耦合的一个例子。为什么这不是一个糟糕的编码习惯?我认为客户端应该只触发指令,而对象的所有实际操作都由服务器完成。

Java问题解决:严重 [RMI TCP Connection(3)-127.0.0.1] org.apache.tomcat.util.descriptor.web.WebXmlParser.par

问题如下: tomcat服务器启动是,出现多个严重错误:03-Oct-202213:54:17.374严重[RMITCPConnection(3)-127.0.0.1]org.apache.tomcat.util.descriptor.web.WebXmlParser.parseWebXml出现在第[32]行第[44]列03-Oct-202213:54:17.391严重[RMITCPConnection(3)-127.0.0.1]org.apache.catalina.startup.ContextConfig.configureStart由于之前的错误,标记当前应用程序不可用03-Oct-2

漏洞名称:RMI 未授权访问漏洞

漏洞描述:RMI默认使用序列化来完成所有的交互,如果该端口暴露在公网上,且使用了ApacheCommonsCollections的漏洞版本,就可以在该服务器上执行相关命令。漏洞危害:攻击者可在没有认证的情况下直接操作对应的API接口,可直接被非法增删改次数据。且因为攻击是在未认证下进行的,所以后续无法通过定位用户进行异常排查。漏洞位置:1.关闭rmi的外网访问2.如果没有用到该服务,可以关闭该rmi服务要关闭WSO29999RMI漏洞,您可以按照以下步骤进行操作:1.打开WSO2服务器的`carbon.xml`文件。该文件通常位于`WSO2_HOME/repository/conf`目录中。2

spring - 集成基于 Spring 的 Java 应用程序和 Clojure 库

我们有一个基于Spring4.0的Web应用程序在Tomcat8中运行(或者我们有一个Undertow的启动脚本)。SpringMVC正在处理请求。我正在寻找一种方法,将一些请求处理代码推迟到Clojure库,同时对遗留Java代码进行最少的更改。例如,URL以.java结尾的请求将由传统Java处理,而以.clj结尾的请求将由Clojure处理。现在,我看到三个选项:在Java项目的依赖项中包含Clojure库jar,并使用clojure.java.api从Java调用Clojure代码。使用某种RPC/RMI或消息队列,例如Redis和Carmine的消息队列处理能力。这样,Clo

spring - 集成基于 Spring 的 Java 应用程序和 Clojure 库

我们有一个基于Spring4.0的Web应用程序在Tomcat8中运行(或者我们有一个Undertow的启动脚本)。SpringMVC正在处理请求。我正在寻找一种方法,将一些请求处理代码推迟到Clojure库,同时对遗留Java代码进行最少的更改。例如,URL以.java结尾的请求将由传统Java处理,而以.clj结尾的请求将由Clojure处理。现在,我看到三个选项:在Java项目的依赖项中包含Clojure库jar,并使用clojure.java.api从Java调用Clojure代码。使用某种RPC/RMI或消息队列,例如Redis和Carmine的消息队列处理能力。这样,Clo

项目启动报错RMI TCP Accept-0: accept loop for ServerSocket[addr=0.0.0.0/0.0.0.0,localport=53137]的解决方案之一

IDEA启动项目时不时就会出现一些奇怪的问题,如以下错误代码2022-10-2809:09:54[RMITCPAccept-0]WARNsun.rmi.transport.tcp-RMITCPAccept-0:acceptloopforServerSocket[addr=0.0.0.0/0.0.0.0,localport=53137]throwsjava.io.IOException:TheserversocketscreatedusingtheLocalRMIServerSocketFactoryonlyacceptconnectionsfromclientsrunningonthehost

java - 为什么java rmi一直连接到127.0.1.1。什么时候ip是192.168.X.X?

我有一个javarmi应用程序,我只是这样做:客户:Registryregistry=LocateRegistry.getRegistry("localhost");costApi=(CostApi)registry.lookup("server.CostApi");当我在本地主机上托管服务器时一切正常。当我在本地网络的另一台机器上启动相同的程序时,在192.168.x.x并更改为:客户:Registryregistry=LocateRegistry.getRegistry("192.168.x.x");costApi=(CostApi)registry.lookup("server.

java - 为什么java rmi一直连接到127.0.1.1。什么时候ip是192.168.X.X?

我有一个javarmi应用程序,我只是这样做:客户:Registryregistry=LocateRegistry.getRegistry("localhost");costApi=(CostApi)registry.lookup("server.CostApi");当我在本地主机上托管服务器时一切正常。当我在本地网络的另一台机器上启动相同的程序时,在192.168.x.x并更改为:客户:Registryregistry=LocateRegistry.getRegistry("192.168.x.x");costApi=(CostApi)registry.lookup("server.

java - 如何让 JMX 绑定(bind)到特定接口(interface)?

我目前正在使用com.sun.management.jmxremote.*属性启动我的JavaVM,以便我可以通过JConsole连接到它以进行管理和监视。不幸的是,它监听机器上的所有接口(interface)(IP地址)。在我们的环境中,经常会出现在一台机器上同时运行多个JavaVM的情况。虽然可以告诉JMX监听不同的TCP端口(使用com.sun.management.jmxremote.port),但最好让JMX使用标准JMX端口并绑定(bind)到一个特定的IP地址(而不是全部)。这将使我们更容易确定我们通过JConsole连接到哪个VM(因为每个VM实际上“拥有”自己的IP地