ページの先頭行へ戻る
Interstage Service Integrator V9.5.0 アプリケーション開発ガイド
FUJITSU Software

D.3.3 SOAPのRPC機能(JAX-RPC)の利用

例をもとに、SOAPのRPC機能(JAX-RPC)を、共通APIで利用するアプリケーションの開発手順を説明します。
アプリケーションの開発は、以下の手順で行います。

図D.10 開発の手順

前提

サービスエンドポイント名:endpointRPC

手順

  1. サービスエンドポイント定義を作成します。
    SOAPのRPC機能を利用するためのサービスエンドポイント定義にサービスエンドポイント名“endpointRPC”を定義します。
    作成方法については、“ISI Studio ヘルプ”を参照してください。

  2. 手順1で作成したサービスエンドポイント名をパラメタに設定し、通信制御クラス(ESIService)を生成します。

  3. 共通メッセージ(ESIMessage)を作成します。
    共通メッセージの作成方法については、“D.5 共通メッセージの作成・操作”を参照してください。

  4. ISIを呼び出します。

アプリケーションの例

import com.fujitsu.esi.client.ESIAPIException;
import com.fujitsu.esi.client.ESIService;
import com.fujitsu.esi.client.ESIServiceFactory;
import com.fujitsu.esi.message.ESIMessage;

public class ESISend {

    public static void main(String[] args) {
        try {
          //(2)通信制御クラスを生成
          ESIService service = ESIServiceFactory.getService("endpointRPC");

          //(3)ESIMessageを作成
          ESIMessage message= new ESIMessage();
                :
          //(4)ISIを呼び出す
          ESIMessage returnMessage = service.send(message);……(a)
                :
          } catch (ESIAPIException e) {
                     e.printStackTrace();
          }
        }
}
  1. ISIの呼出しとして提供しているメソッドは、以下のとおりです。

    • 同期/非同期送信呼出し:send(ESIMessage)
      同期、非同期の設定は手順1のサービスエンドポイント定義で指定してください。

    • 非同期受信呼出し:receive(ESIFilter)

注意

非同期受信メソッド“receive(ESIFilter)”を使用する場合は、引数としてESIFilterが必要です。ESIFilterにクエリを設定しない場合は、キューの先頭に格納されている共通メッセージを受信します。

ポイント

同期送信アプリケーションの作成方法は、RMI利用時と同じです。詳細については、“D.3.1 RMIの利用”を参照してください。非同期送信・受信アプリケーションの作成方法は、JMS利用時と同じです。詳細については、“D.3.2 JMS,JMS-Rの利用”を参照してください。RMIの利用・JMSの利用/JAX-RPCの利用は、サービスエンドポイント定義のサービス情報で切り替えます。

Proxy、Basic認証、接続タイムアウト時間の設定

プロキシ情報、Basic認証、接続タイムアウト時間の設定は、サービスエンドポイント定義で設定します。設定方法は、“ISI Studio ヘルプ”を参照してください。

SSLの設定

Interstage Application Serverを利用した場合

クライアント認証なしの場合、以下の手順で設定します。

  1. 動作環境の設定

  2. 証明書環境の構築

    1. 証明書の登録・管理用ファイルを配置するディレクトリの作成

    2. 証明書管理ファイルの作成

    3. サーバのサイト証明書を登録している認証局からの認証局証明書取得

    4. 認証局証明書の登録

    5. 証明書管理ファイルの作成

  3. クライアントアプリケーションの設定

クライアント認証ありの場合以下の手順で設定します。

  1. 動作環境の設定

  2. 証明書環境の構築

    1. 証明書の登録・管理用ファイルを配置するディレクトリの作成

    2. 証明書管理ファイルの作成

    3. 証明書発行要求の作成

    4. 証明書の発行依頼

    5. 認証局から証明書の取得

    6. 認証局から発行された証明書の登録

    7. 認証局から発行されたサイト証明書の登録

  3. クライアントアプリケーションの設定

SSLの設定方法の詳細については、“Interstage Application Server セキュリティシステム運用ガイド”を参照してください。

AXISを利用した場合

SSL情報は、アプリケーション実行時のJavaVMオプションからシステムプロパティに設定します。

例:ESISend.java

# java
-Djavax.net.ssl.trustStore=C:\cert\truststore\keystore
-Djavax.net.ssl.trustStorePassword=trustpass
-Djavax.net.ssl.trustStoreType=jks
-Djavax.net.ssl.keyStore=C:\cert\keystore\keystore
-Djavax.net.ssl.keyStorePassword=keystorepass
-Djavax.net.ssl.keyStoreType=jks
: ………(注)
ESISend

注:コンパイル・実行時に必要な設定を確認してください。必要な設定については、“D.6 アプリケーションのコンパイルと実行”を参照してください。

表D.1 プロパティ値

プロパティ名

javax.net.ssl.trustStore

SSLサーバ認証用のキーストアのパス名
例)C:\cert\truststore\keystore

javax.net.ssl.trustStorePassword

SSLサーバ認証用のキーストアのパスワード
例)trustpass

javax.net.ssl.trustStoreType

SSLサーバ認証用のキーストアのタイプ
例)jks

javax.net.ssl.keyStore

SSLクライアント認証用のキーストアのパス名
例)C:\cert\keystore\keystore

javax.net.ssl.keyStorePassword

SSLクライアント認証用のキーストアのパスワード
例)keystorepass

javax.net.ssl.keyStoreType

SSLクライアント認証用のキーストアのタイプ
例)jks