通过Ip地址访问ejb,提示找不到对应服务器的机器名

本文介绍了在使用JBoss服务器时遇到的RMI (Remote Method Invocation) 通信异常问题及解决方案。异常主要表现为 javax.naming.CommunicationException 和 java.rmi.UnknownHostException。文章提供了三种解决方法:修改主机文件、调整JBoss启动参数以及结合使用-b选项和-D系统属性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

[Loaded java.net.UnknownHostException from L:\java\jdk\jdk1.6.0_20\jre\lib\rt.jar]
javax.naming.CommunicationException [Root exception is java.rmi.UnknownHostException: Unknown host: wis-58441e79382; nested exception is:java.net.UnknownHostException: wis-58441e79382]
[Loaded java.rmi.UnknownHostException from L:\java\jdk\jdk1.6.0_20\jre\lib\rt.jar]
[Loaded sun.rmi.transport.DGCClient$EndpointEntry$1 from L:\java\jdk\jdk1.6.0_20\jre\lib\rt.jar]
[Loaded java.util.Vector$1 from L:\java\jdk\jdk1.6.0_20\jre\lib\rt.jar]
    at org.jnp.interfaces.NamingContext.lookup(NamingContext.java:841)
    at org.jnp.interfaces.NamingContext.lookup(NamingContext.java:688)
    at javax.naming.InitialContext.lookup(InitialContext.java:392)
    at dnn.Ejb.ping(Ejb.java:50)

 

本机通过ip访问没问题,同一网段好像也没问题

不同网段才出这个异常

搜索了下解决方法

1)

在host文件中添加ip地址和机器名映射关系

这个方法能解决,方向不对,应该从服务器端找思路

2)

JBosss服务器启动时,指定了-b 0.0.0.0 导致出现这个问题

改成:

run.bat -b 你的Ip地址

这个方法可以,但是有点不方便,jboss内部无法通过local调用ejb了

3)run -b 0.0.0.0 -Djava.rmi.server.hostname=你的Ip地址 -Dremoting.bind_by_host=false

这个方法比较好

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值