2012-11-28 21 views
1

我想在兩臺機器上使用java運行一個CORBA應用程序。當我在一臺機器上運行此應用程序時,沒有麻煩,我可以看到「Hello World!」。在cmd屏幕上的字符串。但是當我嘗試在兩臺機器上運行它時,我遇到了一個異常。java中的客戶端應用程序異常

enter image description here 雖然我在我的相關目錄中有一個HelloClient.class! 我用來編譯和運行該應用程序的命令是: 在客戶機上:

idlj -fall Hello.idl //to mapping the Hello.idl to java 
javac *.java HelloApp\*.java //to compile the all .java files such as    HelloClient,Hello,Hellostub,HelloHelper,HelloHolder,HelloOperation and HelloPOA. 

在服務器計算機:

javac *.java //to compile HelloServer and HelloImpl classes. 
srart orbd -ORBInitialPort 1050 -ORBInitialHost 192.168.138.134 //to start Object Request Broker Daemon 
start java HelloServer -ORBInitialPort 1050 //to start HelloServer 

在客戶端機器:

java HelloClient -ORBInitialHost 192.168.138.134 //to run the Hello application client. 

但當我在一臺機器上運行這個應用程序時,我可以正確地得到輸出。 enter image description here

+0

哪裏是你的ClientApp設置類路徑的目錄?你有一個默認包中的HelloClient類嗎? – tuergeist

+0

我的HelloClient,Hello,Hellostub,HelloHelper,HelloHolder,HelloOperation和HelloPOA類在HelloApp包中,而HelloClent類在沒有包的情況下單獨進行copmiled。我使用本教程中實現的類。[鏈接](http://docs.oracle.com/javase/1.4.2/docs/guide/idl/jidlExample.html) – Azad

回答

1

你必須運行的目錄中HelloClient.class所在的HelloClient或者你有通過java -cp <dirname> HelloClient