RMI 클라이언트는 원격 객체의 원격 메소드 만을 호출 할 수 있으며 이 호출을 위해 실제의 원격객체에 대한 참조 대신 원격 객체의 stub reference를 이용한다고 하였다. 이는 곧 원격객체가 구현한 모든 원격메소드를 원격객체에 대한 stub 객체도 함께 가지고 있다는 것을 의미 한다.(물론 동일 한 것은 아니다.)
•앞서
작성한 “Hello
World”의
경우 HelloImpl은
원격 인터페이스 Hello를
구현한 원격 객체 클래스 이며 이를 통해 rmic를
통해 작성된 HelloImpl_stub
역시
HelloImpl과
동일한 Hello를
구현 한 클래스
이다.
•앞서
작성한 “Hello
World”의
클라이언트 Application인
HelloClient.java를
살펴보면 lookup
메소드를
통해 Return되는
실제 객체는
HelloRemote라는
이름으로 등록된 원격객체 HelloImpl
객체에
대한 stub인
HelloImpl_stub
객체가
Return
될
것이다.
•또한
stub
reference renoteObj를
Hello로
캐스팅 가능한 이유는
remoteObj가
참조하는 stub
객체인
HelloImpl_stub이
Hello
인터페이스를
구현
했기 때문이다.
•javap
HelloImpl_stub
명령을
통해 stub
객체의
메소드를
확인하는 것은 가능하다.
댓글 없음:
댓글 쓰기