アプリケーションのコンパイルと実行方法について説明します。
アプリケーションのコンパイルと実行は、管理者権限を所有するユーザ、またはInterstage運用者で動作させてください。メッセージ送信APIのメッセージ保証機能を利用する場合、常に同じユーザでアプリケーションを実行してください。
共通APIを使用したアプリケーションの場合
作成したアプリケーションをコンパイルし、実行します。コンパイル・実行時には、クラスパスに以下を含めてください。
%ESI_HOME%\lib\esicore.jar
%ESI_HOME%\lib\esiejb_jar_client.jar
%ESI_HOME%\lib\log4j-1.2.15.jar
%CLASSPATH%
SOAPのRPC機能(JAX-RPC)を使用した場合、以下のクラスパスを追加してください。
<Interstageインストールディレクトリ>\J2EE\lib\isws.jar
<Interstageインストールディレクトリ>\J2EE\lib\isws-lib.jar
実行時には、以下をVM引数に指定してください。
-Dcom.fujitsu.esi.home=%ESI_HOME%
-Dorg.omg.CORBA.ORBClass=com.fujitsu.ObjectDirector.CORBA.ORB
-Dorg.omg.CORBA.ORBSingletonClass=com.fujitsu.ObjectDirector.CORBA.SingletonORB
-Djavax.rmi.CORBA.StubClass=com.fujitsu.ObjectDirector.rmi.CORBA.StubDelegateImpl
-Djavax.rmi.CORBA.UtilClass=com.fujitsu.ObjectDirector.rmi.CORBA.UtilDelegateImpl
-Djavax.rmi.CORBA.PortableRemoteObjectClass=com.fujitsu.ObjectDirector.rmi.CORBA.PortableRemoteObjectDelegateImpl
/opt/FJSVesi/lib/esicore.jar
/opt/FJSVesi/lib/esiejb_jar_client.jar
/opt/FJSVesi/lib/log4j-1.2.15.jar
$CLASSPATH
SOAPのRPC機能(JAX-RPC)を使用した場合、以下のクラスパスを追加してください。
/opt/FJSVj2ee/lib/isws.jar
/opt/FJSVj2ee/lib/isws-lib.jar
実行時には、以下をVM引数に指定してください。
-Dcom.fujitsu.esi.home=/opt/FJSVesi
-Dorg.omg.CORBA.ORBClass=com.fujitsu.ObjectDirector.CORBA.ORB
-Dorg.omg.CORBA.ORBSingletonClass=com.fujitsu.ObjectDirector.CORBA.SingletonORB
-Djavax.rmi.CORBA.StubClass=com.fujitsu.ObjectDirector.rmi.CORBA.StubDelegateImpl
-Djavax.rmi.CORBA.UtilClass=com.fujitsu.ObjectDirector.rmi.CORBA.UtilDelegateImpl
-Djavax.rmi.CORBA.PortableRemoteObjectClass=com.fujitsu.ObjectDirector.rmi.CORBA.PortableRemoteObjectDelegateImpl
RMI、JMSを利用した場合
javac -classpath "%ESI_HOME%\lib\esicore.jar;%ESI_HOME%\lib\esiejb_jar_client.jar;%ESI_HOME%\lib\log4j-1.2.15.jar;%CLASSPATH%;." ESISend.java |
java -classpath "%ESI_HOME%\lib\esicore.jar;%ESI_HOME%\lib\esiejb_jar_client.jar;%ESI_HOME%\lib\log4j-1.2.15.jar;%CLASSPATH%;." -Dcom.fujitsu.esi.home=%ESI_HOME% -Dorg.omg.CORBA.ORBClass=com.fujitsu.ObjectDirector.CORBA.ORB -Dorg.omg.CORBA.ORBSingletonClass=com.fujitsu.ObjectDirector.CORBA.SingletonORB -Djavax.rmi.CORBA.StubClass=com.fujitsu.ObjectDirector.rmi.CORBA.StubDelegateImpl -Djavax.rmi.CORBA.UtilClass=com.fujitsu.ObjectDirector.rmi.CORBA.UtilDelegateImpl -Djavax.rmi.CORBA.PortableRemoteObjectClass=com.fujitsu.ObjectDirector.rmi.CORBA.PortableRemoteObjectDelegateImpl ESISend |
javac -classpath "/opt/FJSVesi/lib/esicore.jar:/opt/FJSVesi/lib/esiejb_jar_client.jar:/opt/FJSVesi/lib/log4j-1.2.15.jar:$CLASSPATH:." ESISend.java |
java -classpath "/opt/FJSVesi/lib/esicore.jar:/opt/FJSVesi/lib/esiejb_jar_client.jar:/opt/FJSVesi/lib/log4j-1.2.15.jar:$CLASSPATH:." -Dcom.fujitsu.esi.home=/opt/FJSVesi -Dorg.omg.CORBA.ORBClass=com.fujitsu.ObjectDirector.CORBA.ORB -Dorg.omg.CORBA.ORBSingletonClass=com.fujitsu.ObjectDirector.CORBA.SingletonORB -Djavax.rmi.CORBA.StubClass=com.fujitsu.ObjectDirector.rmi.CORBA.StubDelegateImpl -Djavax.rmi.CORBA.UtilClass=com.fujitsu.ObjectDirector.rmi.CORBA.UtilDelegateImpl -Djavax.rmi.CORBA.PortableRemoteObjectClass=com.fujitsu.ObjectDirector.rmi.CORBA.PortableRemoteObjectDelegateImpl ESISend |
JMS-Rを利用した場合
javac -classpath "%ESI_HOME%\lib\esicore.jar;%ESI_HOME%\lib\esiejb_jar_client.jar;%ESI_HOME%\lib\log4j-1.2.15.jar;%CLASSPATH%;." ESISend.java |
java -Dcom.fujitsu.ObjectDirector.DeterredMessage=YES |
javac -classpath |
java -Dcom.fujitsu.ObjectDirector.DeterredMessage=YES |
java -Dcom.fujitsu.ObjectDirector.DeterredMessage=YES |
注意
ISIサーバ(Solaris、またはLinux)を対象に例を記述しています。
LD_LIBRARY_PATHに、以下のパスを指定してください。
/opt/FJSVesi/lib
/opt/FSUNrdb2b/lib
/opt/FJSVsymjd/fjjdbc/bin
/opt/FJSVibs/lib
/opt/FSUNod/lib
/opt/FJSVjms/lib
/opt/FJSVesi/lib
/opt/FJSVrdb2b/lib
/opt/FJSVsymjd/fjjdbc/bin
/opt/FJSVibs/lib
/opt/FJSVod/lib
/opt/FJSVjms/lib
SOAPのRPC機能(JAX-RPC)を利用した場合
javac -classpath "%ESI_HOME%\lib\esicore.jar;%ESI_HOME%\lib\esiejb_jar_client.jar;%ESI_HOME%\lib\log4j-1.2.15.jar;<Interstageインストールディレクトリ>\J2EE\lib\isws.jar;<Interstageインストールディレクトリ>\J2EE\lib\isws-lib.jar;%CLASSPATH%;." ESISend.java |
java -classpath "%ESI_HOME%\lib\esicore.jar;%ESI_HOME%\lib\esiejb_jar_client.jar;%ESI_HOME%\lib\log4j-1.2.15.jar;<Interstageインストールディレクトリ>\J2EE\lib\isws.jar;<Interstageインストールディレクトリ>\J2EE\lib\isws-lib.jar;%CLASSPATH%;." -Dcom.fujitsu.esi.home=%ESI_HOME% -Dorg.omg.CORBA.ORBClass=com.fujitsu.ObjectDirector.CORBA.ORB -Dorg.omg.CORBA.ORBSingletonClass=com.fujitsu.ObjectDirector.CORBA.SingletonORB -Djavax.rmi.CORBA.StubClass=com.fujitsu.ObjectDirector.rmi.CORBA.StubDelegateImpl -Djavax.rmi.CORBA.UtilClass=com.fujitsu.ObjectDirector.rmi.CORBA.UtilDelegateImpl -Djavax.rmi.CORBA.PortableRemoteObjectClass=com.fujitsu.ObjectDirector.rmi.CORBA.PortableRemoteObjectDelegateImpl ESISend |
javac classpath "/opt/FJSVesi/lib/esicore.jar:/opt/FJSVesi/lib/esiejb_jar_client.jar:/opt/FJSVesi/lib/log4j-1.2.15.jar:/opt/FJSVj2ee/lib/isws.jar:/opt/FJSVj2ee/lib/isws-lib.jar:$CLASSPATH:." ESISend.java |
java classpath "/opt/FJSVesi/lib/esicore.jar:/opt/FJSVesi/lib/esiejb_jar_client.jar:/opt/FJSVesi/lib/log4j-1.2.15.jar:/opt/FJSVj2ee/lib/isws.jar:/opt/FJSVj2ee/lib/isws-lib.jar:$CLASSPATH:." -Dcom.fujitsu.esi.home=/opt/FJSVesi -Dorg.omg.CORBA.ORBClass=com.fujitsu.ObjectDirector.CORBA.ORB -Dorg.omg.CORBA.ORBSingletonClass=com.fujitsu.ObjectDirector.CORBA.SingletonORB -Djavax.rmi.CORBA.StubClass=com.fujitsu.ObjectDirector.rmi.CORBA.StubDelegateImpl -Djavax.rmi.CORBA.UtilClass=com.fujitsu.ObjectDirector.rmi.CORBA.UtilDelegateImpl -Djavax.rmi.CORBA.PortableRemoteObjectClass=com.fujitsu.ObjectDirector.rmi.CORBA.PortableRemoteObjectDelegateImpl ESISend |
注意
メッセージがイベントチャネルにない場合、イベントログに以下の内容が出力されることがあります。
OD: 情報: od60003:OD-Javaランタイムが例外を受け取りました。 IDL:CORBA/COMM_FAILURE:1.0
com_fujitsu_CORBA_Request.cpp [1191]
出力を抑止する場合は、実行時のJavaVMオプションに、以下を追加してください。
-Dcom.fujitsu.ObjectDirector.DeterredMessage=YES
※本メッセージが出力されても、メッセージの受信に問題はありません。
SOAPのRPC機能(JAX-RPC)による送受信を、スタブを利用して開発した場合、コンパイル・実行時に上記クラスパスやVM引数を設定する必要はありません。
環境変数CLASSPATHに適切な値が設定されている必要があります。詳細については、“ISI 導入ガイド”を参照してください。
スタブを利用したアプリケーションの場合
Interstage Application Serverを利用した場合
作成したアプリケーションをコンパイルし、実行します。コンパイル・実行時には、クラスパスに以下を含めてください。
<Interstageインストールディレクトリ>\J2EE\lib\isws.jar
<Interstageインストールディレクトリ>\J2EE\lib\isws-lib.jar
注意
上記の“isws-lib.jar”をクラスパスに設定することで、以下のjarファイルも自動的にクラスパスに設定されます。詳細については、“Interstage Application Server J2EE ユーザーズガイド(旧版互換)”を参照してください。
<Interstageインストールディレクトリ>\J2EE\lib\xerces\xercesImpl.jar
<Interstageインストールディレクトリ>\J2EE\lib\xerces\xml-apis.jar
<Interstageインストールディレクトリ>\J2EE\lib\isj2ee.jar
SSLを設定した場合、以下のクラスパスを追加してください。
<Interstageインストールディレクトリ>\lib\isadmin_scs.jar
javac -classpath "<Interstageインストールディレクトリ>\J2EE\lib\isws.jar;<Interstageインストールディレクトリ>\J2EE\lib\isws-lib.jar;%CLASSPATH%;." ESIClientSample.java |
java -classpath "<Interstageインストールディレクトリ>\J2EE\lib\isws.jar;<Interstageインストールディレクトリ>\J2EE\lib\isws-lib.jar;%CLASSPATH%;." ESIClientSample |
AXISを利用した場合
作成したアプリケーションをコンパイルし、実行します。コンパイル・実行時には、クラスパスにAXISのライブラリ(基本的に<Axisインストールディレクトリ>\libのjarファイルすべて)を含めてください。
AXIS1.3を使用した場合の例
<Axisインストールディレクトリ>\lib\axis.jar
<Axisインストールディレクトリ>\lib\axis-ant.jar
<Axisインストールディレクトリ>\lib\axis-schema.jar
<Axisインストールディレクトリ>\lib\commons-discovery-0.2.jar
<Axisインストールディレクトリ>\lib\commons-logging-1.0.4.jar
<Axisインストールディレクトリ>\lib\jaxrpc.jar
<Axisインストールディレクトリ>\lib\log4j-1.2.8.jar
<Axisインストールディレクトリ>\lib\saaj.jar
<Axisインストールディレクトリ>\lib\wsdl4j-1.5.1.jar
javac -classpath "<Axisインストールディレクトリ>\lib\axis.jar;<Axisインストールディレクトリ>\lib\axis-ant.jar;<Axisインストールディレクトリ>\lib\axis-schema.jar;<Axisインストールディレクトリ>\lib\commons-discovery-0.2.jar;<Axisインストールディレクトリ>\lib\commons-logging-1.0.4.jar;<Axisインストールディレクトリ>\lib\jaxrpc.jar;<Axisインストールディレクトリ>\lib\log4j-1.2.8.jar;<Axisインストールディレクトリ>\lib\saaj.jar;<Axisインストールディレクトリ>\lib\wsdl4j-1.5.1.jar;%CLASSPATH%;." ESIClientSample.java |
java -classpath "<Axisインストールディレクトリ>\lib\axis.jar;<Axisインストールディレクトリ>\lib\axis-ant.jar;<Axisインストールディレクトリ>\lib\axis-schema.jar;<Axisインストールディレクトリ>\lib\commons-discovery-0.2.jar;<Axisインストールディレクトリ>\lib\commons-logging-1.0.4.jar;<Axisインストールディレクトリ>\lib\jaxrpc.jar;<Axisインストールディレクトリ>\lib\log4j-1.2.8.jar;<Axisインストールディレクトリ>\lib\saaj.jar;<Axisインストールディレクトリ>\lib\wsdl4j-1.5.1.jar;%CLASSPATH%;." ESIClientSample |
CORBAを利用した場合
アプリケーションのコンパイルと実行方法については、“Interstage Application Server アプリケーション作成ガイド(CORBAサービス編)”を参照してください。