파일을 패키지로 구성하기 전에이 프로그램이 잘 작동했습니다. 다음과 같이 내가 오류 메시지는 다음과 같습니다자바 RMI 응용 프로그램. "_ 스텁을 캐스팅 할 수 없습니다."오류
는 ClassCastException : a3.seneca.RemoteMethod_Stub이 a3.seneca.RemoteMethod (라인 35) 캐스트 할 수없는
다음과 같이 내 패키지 구조 (캡 디렉토리를 의미)입니다 :
-A3
--server
---- DataAccessServer
--SEN ECA
---- RemoteMethodInterface
---- remoteMethod를
--client
---- DataAccessClient
오류 메시지이되는 참조하는 라인 :
RemoteMethod rmHandler = (RemoteMethod) Naming.lookup("rmi://localhost:666/location");
사전에 DataAccessServer에서 S :
RemoteMethod rm = new RemoteMethod();
Naming.rebind("rmi://localhost:666/location", rm);
실행하는 단계는 같다은 다음과 같습니다
콘솔 창 # 1 : rmiregistry에 666
콘솔 창 2 : 자바 A3의 \의 세네카 * 된 .java
java a3 \ server * .java
java a3 \ client * .java
rmic를 -v1.2는
을 a3.seneca.RemoteMethod자바 DataAccessServer
콘솔 창 3 :
자바 a3.client.DataAccessClient
RemoteMethod_stub.class는 세네카의 디렉토리에 넣고. 또한 클라이언트 디렉토리가 생성 된 후에 클라이언트 디렉토리에 복사를 시도했습니다. 왜 이런 일이 일어나고 있는지에 대한 통찰력은 크게 감사 할 것입니다.
서버 클래스에 스텁을 캐스팅하려고
수정 : javac ... *. java Java – Dan