Head First Design Pattern 의 RMI 실습예제

개발자/자바 | 2011. 11. 7. 13:11

Server 에서 할 일

  1. MyRemote, MyRemoteImpl 작성
  2. Start rmiregistry
  3. rmic MyRemoteImpl
  4. MyRemoteImpl_Stub 클래스 파일을 Client 측에 복사
  5. Java MyRemoteImpl 실행

Client 에서 할 일

  1. Server 에 존재하는 MyRemote 인터페이스를 동일하게 생성( or 복사)
  2. Server 의 class path 와 동일한 위치에 MyRemoteClient 생성 (MyRemote Interface를 사용함)
  3. Java MyRemoteClient 실행

   

주의 사항

  1. rmic 도 java 패키지 안에 있는 API 이기 때문에 rmic.exe 를 실행하려면, Path 에 jdk 경로를 등록 시켜줘야 해

       

       

  2. javac / java 명령으로 컴파일/실행할 때는 CLASSPATH가 사용되니까 참고.
  3. Client 에서 RMI 를 통해 Server 의 동일한 기능을 사용하려고 할 때는 Package 구성이 같아야 하나봐.. Client 따로 했을 경우에..

    MyRemoteImpl_Stub Cast can not be MyRemote … 이런 메시지가 나와.

  4. rmiregistry 는 서버 프로세스에 실행 중이어야 함. (그래서 Start rmiregistry 로 cmd 새 창으로 띄워놓음)

   

MyRemote

MyRemoteImpl

   

   

Server 의 MyRemoteImpl 의 Stub 파일 생성됨.
해당 클래스가 있는 위치에서 명령어 실행

생성됨

파일을 클라이언트 측으로 복사해.

   

Server 측 MyRemoteImpl 실행

 

 

Client 에 MyRemoteClient 생성

Client 측 MyRemoteClient 실행

   

Port 사용 중인 Error 발생 시 rmiregistry 가 프로세스에 떠있다는 얘기…

   

'개발자 > 자바' 카테고리의 다른 글

JSP에서 소수점 처리  (0) 2013.07.24
[eclipse] 맥용 이클립스 Content Assist 설정 변경  (0) 2013.07.18
Java  (1) 2009.05.20
Java 3/11(수)  (0) 2009.03.11
eclipse 설치시 오류 (JVM terminated. Exit code=-1)  (2) 2009.03.11
,