Jacorb/Tao 互操作性

发布于 2024-11-18 15:55:33 字数 671 浏览 3 评论 0原文

我有 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 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

深居我梦 2024-11-25 15:55:33

使用 -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

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文