![]() ![]() ![]() ![]() ![]() ![]() |
Oracle TuxedoサービスはPure Java言語を使用して開発できます。Java言語で実装されるサービスは、他のTuxedoサービスと同様に機能します。Tuxedo Javaサーバー(TMJAVASVR
)によって通知されるサービスを、ATMIインタフェースを使用してクライアントまたはTuxedoサーバーから呼び出すことができます。同様に、Tuxedoサーバーによって通知されるサービスを、TJATMIインタフェースを使用してjava実装サービスから呼び出すことができます。
さらに、java実装サービスは、ネイティブ・クライアント、/WSクライアント、Joltクライアントなど、あらゆる種類のTuxedoクライアントから呼び出すことができます。
Tuxedoサービスを実装するために、TJATMIインタフェース、JATMI TypedBuffer、POLO javaオブジェクトなど、様々な主要Javaテクノロジの使用がサポートされます。
次のガイドラインは、Javaサービス開発の基本的な手順です。
TuxedoJavaServer
クラスを継承し、デフォルトのコンストラクタを有している必要があります。 TPSVCINFO
インタフェースのみを使用する必要があります。また、publicとして宣言する必要があります。tpsvrinit()
メソッドを実装する必要があります。tpsvrdone()
メソッドを実装する必要があります。tpcall
、tpbegin
など)を使用できる状態にある必要があります。tpreturn
を使用してクライアントに結果を返したり、例外をスローして終了できる状態にある必要があります。
ユーザーは、tpsvrinit()
メソッドを実装する必要があります。tpsvrinit()
はサーバーの起動時に呼び出されるため、このメソッドにクラス範囲の初期化を設定することをお薦めします。あるクラスのtpsvrinit()
が失敗した場合、警告メッセージがユーザー・ログに報告され、Javaサーバーは実行を続けます。
ユーザーは、tpsvrdone()
メソッドを実装する必要があります。tpsvrdone()
はサーバーの停止時に呼び出されるため、このメソッドにクラス範囲のクリーンアップ処理を設定することをお薦めします。
Javaサービスのtpreturn()
は、Javaサービス・メソッドの実行をすぐには中断しませんが、Tuxedo Javaサーバーに結果を返します。
Javaサービスにおけるtpreturn()
の動作と、既存のTuxedoシステムにおけるtpreturn()
の動作の違いを次に示します。
注意: | Javaサービスで、先行するtpreturn() 文なしでJavaのreturn 文を使用することはお薦めしません。そうすると、Javaサーバーは対応するクライアントにrcode設定0を指定したTPFAIL を返します。 |
![]() ![]() ![]() |