我构建了一个订阅事件服务器的 Java CORBA 应用程序。应用程序缩小并正常登录,但一旦将事件发送到客户端,它就会因以下错误而中断。请指教。
2010/04/25!13.00.00!E00555!enserver!EventServiceIF_i.cpp!655!PID(7390)!enserver - e._info=system exception, ID 'IDL:omg.org/CORBA/TRANSIENT:1.0'
TAO exception, minor code = 54410093 (invocation connect failed; ECONNRESET), completed = NO
编辑: 请注意,这只会在某些机器上运行时发生。它对某些人有效,但对其他人无效。即使在同一个平台上(我试过 Windows XP/7 和 CentOS linux)有些工作,有些不...
这是 WireShark 输出...看起来工作 PC 与非工作 PC 相比与网络的交互要多得多。
工作电脑
No. Time Source Destination Protocol Info
62 28.837255 10.10.10.209 10.10.10.250 TCP 50169 > 23120 [SYN] Seq=0 Win=8192 Len=0 MSS=1260 WS=8
63 28.907068 fe80::5de0:8d21:937e:c649 ff02::1:3 LLMNR Standard query A isatap
64 28.907166 10.10.10.209 224.0.0.252 LLMNR Standard query A isatap
65 29.107259 10.10.10.209 10.255.255.255 NBNS Name query NB ISATAP<00>
66 29.227000 10.10.10.250 10.10.10.209 TCP 23120 > 50169 [SYN, ACK] Seq=0 Ack=1 Win=32768 Len=0 MSS=1260 WS=0
67 29.227032 10.10.10.209 10.10.10.250 TCP 50169 > 23120 [ACK] Seq=1 Ack=1 Win=66560 Len=0
68 29.238063 10.10.10.209 10.10.10.250 GIOP GIOP 1.1 Request s=326 id=5 (two-way): op=logon
69 29.291765 10.10.10.250 10.10.10.209 GIOP GIOP 1.1 Reply s=420 id=5: No Exception
70 29.301395 10.10.10.209 10.10.10.250 GIOP GIOP 1.1 Request s=369 id=6 (two-way): op=registerEventStat
71 29.348275 10.10.10.250 10.10.10.209 GIOP GIOP 1.1 Reply s=60 id=6: No Exception
72 29.405250 10.10.10.209 10.10.10.250 TCP 50170 > telnet [SYN] Seq=0 Win=8192 Len=0 MSS=1260 WS=8
73 29.446055 10.10.10.250 10.10.10.209 TCP telnet > 50170 [SYN, ACK] Seq=0 Ack=1 Win=32768 Len=0 MSS=1260 WS=0
74 29.446128 10.10.10.209 10.10.10.250 TCP 50170 > telnet [ACK] Seq=1 Ack=1 Win=66560 Len=0
75 29.452021 10.10.10.209 10.10.10.250 TELNET Telnet Data ...
76 29.483537 10.10.10.250 10.10.10.209 TELNET Telnet Data ...
77 29.483651 10.10.10.209 10.10.10.250 TELNET Telnet Data ...
78 29.523463 10.10.10.250 10.10.10.209 TCP telnet > 50170 [ACK] Seq=4 Ack=5 Win=32768 Len=0
79 29.554954 10.10.10.209 10.10.10.250 TCP 50169 > 23120 [ACK] Seq=720 Ack=505 Win=66048 Len=0
电脑不工作
No. Time Source Destination Protocol Info
1 0.000000 10.10.10.209 10.10.10.250 TCP 64161 > 23120 [SYN] Seq=0 Win=8192 Len=0 MSS=1260 WS=8
2 2.999847 10.10.10.209 10.10.10.250 TCP 64161 > 23120 [SYN] Seq=0 Win=8192 Len=0 MSS=1260 WS=8
3 4.540773 Cisco_3c:78:00 Cisco-Li_55:87:72 ARP Who has 10.0.0.1? Tell 10.10.10.209
4 4.540843 Cisco-Li_55:87:72 Cisco_3c:78:00 ARP 10.0.0.1 is at 00:1a:70:55:87:72
5 8.992284 10.10.10.209 10.10.10.250 TCP 64161 > 23120 [SYN] Seq=0 Win=8192 Len=0 MSS=1260
最佳答案
Benny你还在受着corba的枷锁吗?
如果是这样,以下内容可能会有所帮助:
- 你能找出服务器运行的 TAO 版本吗?
- 你用 Sun 的球体(远射)试过了吗?
- 你可以给OpenORB尝试一下。
- 如果以上都失败,如果您有 python 知识,您可以使用 omniORBpy 访问服务器吗?
如果以上方法都不起作用,那么我不确定,但请告诉我,我可能会想出更多的想法。服务器使用的 TAO 版本会有所帮助,至少您可以了解正在处理的 corba 规范版本。
关于Java CORBA 客户端在事件触发时断开连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2726006/