gpt4 book ai didi

java - 尝试连接到 Jacorb 命名服务时出错

转载 作者:搜寻专家 更新时间:2023-10-31 20:16:14 24 4
gpt4 key购买 nike

我希望得到一些帮助来解决这个奇怪的问题。我们正在运行 Jacorb 名称服务器,我有一个简单的客户端,我正在使用它来尝试连接并执行很棒的 CORBA voodoo。名称服务器正在运行,但是当我尝试启动我的 java 应用程序时,我收到 “连接失败”错误(org.omg.CORBA.COMM_FAILURE,次要代码 201,“由 java.net.ConnectionException 引起:连接拒绝:连接”)

这是奇怪的部分。错误报告它正在尝试使用默认端口 900 进行连接,但我正在传递一个参数以尝试覆盖名称服务的端口号以匹配名称服务器正在使用的端口号。我的java命令是这样的:

java -classpath . HelloClient -Djava.endorsed.dirs="bla bla bla" <br>
-Dorg.omg.CORBA.ORBClass=org.jacorb.orb.ORB
-Dorg.omg.CORBA.ORBSingletonClass=org.jacorb.orb.ORBSingleton
-DORBInitRef.NameService=corbaloc::localhost:2809/StandardNS/NameServer-POA/_root

我也试过没有第一个大写字母D的参数(两种方式我都见过,但我不知道有什么区别)。

现在,如果我输入 -ORBInitialPort 2809,那么客户端确实会尝试连接,但随后我会收到一个 corba.OBJECT_NOT_EXIST 错误。

我可以使用任何人的任何帮助或建议。

最佳答案

连接被拒绝。这听起来像是防火墙/程序未运行的问题。试试 telnet <machine> 2809 .你应该得到一个“连接到”如果一切正常运行/启用,则不是拒绝。

我在 UNIX 客户端上运行,因此路径使用 UNIX 风格。

  1. jacORB 安装正确吗?例如从中获取名称服务条目orb.properties 文件(在 ${JAVA_HOME}/jre/lib/我使用“ORBInitRef.NameService=corbaloc::localhost:2809/NameServer”因为“NameServer”用于生产名称服务器而不是其他“标准......”的字符串

    属性文件中的其他更改是将路径设置为 UNIX样式(即 e:\NS_Ref ->/tmp/NS_Ref) jacorb.naming.ior_filename=/tmp/NS_Ref

1a.在属性文件中设置 http://似乎没有做任何事情 关于在客户端解决问题。

1b。注意:以以下方式启动 ns: ns -DOAPort=2809

日志将显示: 2010-05-27 10:00:47.777 FINE Created socket listener on 0.0.0.0/0.0.0.0:2809 2010-05-27 10:00:47.777 FINE Using port 2809运行: $ lsof | grep 2809
java 27529 jbsymolo 15u IPv6 693300 TCP *:2809 (LISTEN)
$ lsof -Pnl +M -i6
COMMAND PID USER FD TYPE DEVICE SIZE NODE NAME
Naming_Se 9678 1000 7u IPv6 45779 TCP *:51148 (LISTEN)
java 27959 1000 15u IPv6 696092 TCP *:2809 (LISTEN)

未运行:(不显示任何内容)

  1. ns 启动时会记录它从哪里读取属性,它不应该抛出任何错误。如果确实如此,您的属性文件有问题。

  2. 虚拟机参数。 -D 用于设置系统属性。任何Java代码都可以然后访问通过 System.getProperty() 定义的任何属性。虽然我也见过用的“非D”,我一直用的是D。

    -DORBInitRef.NameService=corbaloc::localhost:2809/NameService -Dorg.omg.CORBA.ORBClass=org.jacorb.orb.ORB -Dorg.omg.CORBA.ORBSingletonClass=org.jacorb.orb.ORBSingleton

在 Eclipse 中运行客户端时,我在控制台中看到以下内容:

May 27, 2010 10:01:06 AM org.jacorb.config.JacORBConfiguration init
INFO: base configuration loaded from file /usr/lib/java/jdk1.6.0_18/jre/lib/orb.properties
...
2010-05-27 10:01:09.836 FINE Trying to connect to 127.0.0.1:2809 with timeout=90000.
2010-05-27 10:01:09.844 INFO Connected to 127.0.0.1:2809 from local port 45745
2010-05-27 10:01:09.846 FINE wrote 12 bytes to 127.0.0.1:2809
...

跳过大量其他读/写流量

关于java - 尝试连接到 Jacorb 命名服务时出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2633790/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com