RMI有一个网络端口和一个数据端口,网络端口我们在程序里可以指定,数据端口会在程序启动的时候随机生成。如果产品现场环境有网络防火墙的限制将会是你的RMI数据端口无法正常使用。
之前同事说需要修改rmi代码,我使用jvm监视器发现结合spring设置servicePort(随机端口)、registryPort(网络端口)和修改代码结果是一样的,具体方法如下:(已在客户现场测试可用)
之前同事说需要修改rmi代码,我使用jvm监视器发现结合spring设置servicePort(随机端口)、registryPort(网络端口)和修改代码结果是一样的,具体方法如下:(已在客户现场测试可用)
<bean id="myService" class="com.a.service.impl.MyService"></bean>
<bean id="myService" class="org.springframework.remoting.rmi.RmiServiceExporter">
<property name="service" ref="controlFileInfoRmiService" />
<property name="serviceName" value="controlFileInfoRmi" />
<property name="serviceInterface" value="com.a.service.IMyService" />
<property name="registryPort" value="13087" />
<property name="servicePort" value="13088"></property>
</bean>