0

異なるマシン (localhost と 192.168.0.5) に 2 つの Glassfish 3.1.2 サーバーがあります。また、EJB を呼び出して JMS キューからメッセージを取得する appclient クライアント アプリケーションもあります。JMS キューへのトランザクション セッションを使用する場合、これが唯一のオプションであるため、appclient コンテナーを使用する必要があります。

appclient.bat スクリプトを介して localhost で appclient を実行する場合、次のようにスクリプトに targetserver パラメータを指定する必要があります: appclient.bat -targetserver localhost -jar appClient.jar -clientArg1 -clientArg2

これにより、appclient がローカルホストで実行されている Glassfish に接続されます。appclient が locahost に接続されている間に、クライアント Java アプリケーションで 192.168.0.5 の Glassfish に接続したいと考えています。

パラメータを InitialContext に設定しようとしましたが、取得されません。

Properties props = new Properties();
props.setProperty("java.naming.factory.initial", "com.sun.enterprise.naming.impl.SerialInitContextFactory");
props.setProperty("java.naming.factory.url.pkgs", "com.sun.enterprise.naming");
props.setProperty("java.naming.factory.state", "com.sun.corba.ee.impl.presentation.rmi.JNDIStateFactoryImpl");
props.setProperty("org.omg.CORBA.ORBInitialHost", sourceURL);
props.setProperty("org.omg.CORBA.ORBInitialPort", "3700");
InitialContext ic = new InitialContext(props);

EJB、JMS キューなどへの参照は、常に targetserver パラメータで指定された Glassfish サーバーから取得されます。

助言がありますか?

4

1 に答える 1

0

解決策が見つからなかったため、targetserver パラメーターを指定して appclient バッチ ファイルを何度でも実行しています。

于 2012-09-12T14:05:21.967 に答える