2011-07-02 5 views
0

저는 JacORB 클라이언트 인 Appl A를 가지고 있고 Appl B는 TAO 서버입니다. 실행Jacorb/Tao 상호 운용성

세부 사항 :

A) 출원 A가 처음에 그 corbaloc URL을 사용하여 서버 프로세스 (출원의 B에 대한 object_reference)를 생성하고 이후 사용을 위해지도에서이 참조를 유지

. 이는 Appl B의 모든 corba 호출에 대해 동일한 오브젝트 참조가 사용됨을 의미합니다.

b) Appl A는 위에서 작성한 Appl B의 narrowed 오브젝트 참조에서 inventory 메소드를 호출합니다.

c) 서버 측 (TAO)에서 서번트는 요청을 완료하고 응답을 보냅니다.

 org.omg.CORBA.COMM_FAILURE: vmcid: 0x0 minor code: 0 completed: Maybe 
    at org.jacorb.orb.giop.ReplyPlaceholder.getInputStream(ReplyPlaceholder.java:133) 

다음 Jacorb 클라이언트 측에서 장시간 (I 타임 아웃주기 이후) 생각 후

d)는 I 예외를 얻는다. e) 위의 요청이 시간 초과되기 전에 서버에서 동일한 쿼리를 다시 수행하면 (동일한 연결 개체 사용) 두 응답을 모두 수신하고 올바르게 처리합니다.

이 경우 진행 방법에 대해 알고 싶습니다. 내 생각 엔 소켓 버퍼가 플러시를 기다리고 있다는 것입니다. 항상 두 번째로 작동하는 이유는 무엇입니까 연결 개체에 플러시를 적용하는 방법을 알려주세요.

답변

0

-ORBDebugLevel 10을 사용하여 TAO 측면을 실행하고 ORB가 메시지로 인쇄 한 내용을 확인하십시오. TAO 버전은 꽤 오래되었습니다. TAO 2.0.3을 확인하십시오. http://download.dre.vanderbilt.edu

에서 다운로드 할 수 있습니다.