首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Spring RMI -查找RMI存根失败

Spring RMI -查找RMI存根失败
EN

Stack Overflow用户
提问于 2013-09-19 01:24:13
回答 1查看 4.6K关注 0票数 0

我使用的是Spring3.2,在尝试创建基于“远程”RMI服务的bean定义时出现以下错误。客户端和服务器都在同一台主机上实现。

代码语言:javascript
复制
org.springframework.remoting.RemoteLookupFailureException: 
Lookup of RMI stub failed; nested exception is java.rmi.UnmarshalException: error unmarshalling return; nested exception is: java.io.EOFException. 

我正在尝试部署到Glassfish 3.1.2。涉及的代码如下所示-

spring-servlet.xml

代码语言:javascript
复制
<!-- Remoting Config (server) -->
<bean id="testRmiService" class="com.test.backend.rmi.TestRmiServiceImpl" />
<bean class="org.springframework.remoting.rmi.RmiServiceExporter">
    <property name="serviceName" value="CountryService"/>
    <property name="service" ref="testRmiService"/>
    <property name="serviceInterface" value="com.test.backend.rmi.TestRmiService"/>
    <property name="registryPort" value="1099"/>
</bean>


<!-- Remoting Config (client) -->
<bean id="helloService" class="org.springframework.remoting.rmi.RmiProxyFactoryBean">
    <property name="serviceUrl" value="rmi://localhost:1099/CountryService"/>
    <property name="serviceInterface" value="com.test.backend.rmi.TestRmiService"/>
</bean>
代码语言:javascript
复制
package com.test.backend.rmi;

public interface TestRmiService {

public String doSomething();
}
代码语言:javascript
复制
package com.test.backend.rmi;

public class TestRmiServiceImpl implements TestRmiService {

    public String doSomething() {
        return "hello";
    } 

}

我使用netstat进行了检查,发现该服务似乎正在端口1099上运行。任何想法都是值得感谢的--提前谢谢。

EN

回答 1

Stack Overflow用户

发布于 2013-09-19 02:11:46

问题可能是Glassfish不喜欢通过“后门”打开的RMI连接。我更倾向于建议通过HTTP调用程序实现远程处理:http://www.javatpoint.com/spring-remoting-by-http-invoker-example

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18878554

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档