Jacorb/Tao 互操作性
我有 Appl A,它是 JacORB 客户端,Appl B 是 TAO 服务器。
执行细节:
a) Appl A 最初使用其 corbaloc URL 为服务器进程 (Appl B) 创建 object_reference,并在映射中维护此引用以供后续使用。 这意味着相同的对象引用用于 Appl B 上的所有 corba 调用。
b) Appl A 在上面创建的 Appl B 的缩小对象引用上调用清单方法。
c) 在服务器端(TAO),仆人完成请求并发送响应。
d)经过很长一段时间(我认为在超时间隔之后),在 Jacorb 客户端上我得到了一个异常:
org.omg.CORBA.COMM_FAILURE: vmcid: 0x0 minor code: 0 completed: Maybe
at org.jacorb.orb.giop.ReplyPlaceholder.getInputStream(ReplyPlaceholder.java:133)
。 e) 如果在上述请求超时之前,如果在服务器上再次进行相同的查询(使用相同的连接对象),则两个响应都会收到并正确处理,
知道在这种情况下如何继续吗? 我的猜测是套接字缓冲区正在等待刷新,这就是为什么它总是第二次工作 知道如何强制刷新连接对象吗?
I have Appl A which is JacORB client and Appl B is the TAO server .
Details of execution:
a) Appl A initially creates the object_reference for server process (Appl B) using its corbaloc URL and maintains this reference in a map for subsequent usage.
This mean the same object reference is used for all the corba calls on Appl B.
b) Appl A calls a inventory method on the narrowed object reference of Appl B as created above.
c) On Server side (TAO), the servant completes the request and sends the reponse.
d) After a long time (I think after the timeout interval)on the Jacorb Client side I get an exception :
org.omg.CORBA.COMM_FAILURE: vmcid: 0x0 minor code: 0 completed: Maybe
at org.jacorb.orb.giop.ReplyPlaceholder.getInputStream(ReplyPlaceholder.java:133)
.
e) In case, before the above request times out, if same query is again made on the server, ( uses same connection object ), both responses are received ,processed properly
Any idea how to proceed in this case ?
My guess is that socket buffer is waiting for a flush ,thats why it always works the second time
Any idea how to force the flush on the connection object ?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
使用 -ORBDebugLevel 10 运行 TAO 端并查看 ORB 将哪些内容打印为消息。您的 TAO 版本相当旧,请检查 TAO 2.0.3,您可以从 http://download.dre.vanderbilt 下载。教育
Run the TAO side with -ORBDebugLevel 10 and see what the ORB prints as messages. Your TAO version is pretty old, check TAO 2.0.3 which you can download from http://download.dre.vanderbilt.edu