문제

나는 다음과 같은 추가하는 방법 기존 서버의 CORBA 인터페이스입니다.이 필요로 하는 다시 컴파일하는 모든 클라이언트가 있는가?

내가 사용하여 타오.

도움이 되었습니까?

해결책

다시 컴파일 클라이언트는 필요하지 않음(하지 않아야에 관계 없이 구를 사용하는).Adam 표시된 조회가에 의해 수행 가동 이름(직선한 텍스트는 비교).

나는 당신을 설명하는 우리의 에이스/타오 기반 시스템,그리고 발생하는 문제 없음(서버에서 에이스/타오 C++,클라이언트들 ACE/타오 C++,C#를 사용하여 Borland's Janeva 및 OmniORBPy).

다른 팁

다고 가정하면 클라이언트와 서버의 통신을 통해 IIOP,며 다시 컴파일할 필요가 없습니다.는 IIOP 메시지의 이름이 들어 인터페이스,메소드의 이름,그리고 매개 변수입니다.없는 경우에는 그 일이 변경되었,그 모든 것을 남아 있어야 호환됩니다.추가하는 또 다른 방법은 인터페이스 변경되지 않는 모든 사람들의 기존하는 것들입니다.

다른 한편으로는 경우,귀하의 물 사용하는 다른 프로토콜,는 경우 또는 클라이언트에 있는 프로세스와 함께 서버에서 우회 IIOP,필요할 수 있는 모든 사항을 확인하려면 컴파일됩니다.

작업(방법)보 의 이름이다,그래서 당신은 다시 컴파일해야 하는 클라이언트를 사용하여 새로운 작업입니다.

클라이언트를 사용하여 코로케이션(i.e에서 실행되는 동일한 프로세스 코로케이션에서 사용 ORB)다시 컴파일해야 합니다.원격 클라이언트는 동일하게 유지될 수 있으로 말하는 이전에,방법에 의해 일치와 상징적인 이름입니다.

에 따라 사용법의 새로운 idl 방법입니다.는 경우 Corba 호출은 정적(SII),을 의미하는 것은 클라이언트와 연결되어 스텁,당신은 다음과 같이 다시 컴파일 스텁 사용하려면 새로 추가되는 방법 인터페이스입니다.

는 경우 corba 호출은 동적(DII),이 없 stub 에 필요한 클라이언트입니다.도 다시 컴파일할 필요합니다.이 경우 클라이언트 코드 같아야 한다:

     remoteObjRef->invoke("methodname", args); // send("methodname", args)

았다 CORBA DII 호출 네 년 전에 그리고 작동 타오 클라이언트&TAO/Jacorb/오 corba 서비스입니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top