Cosminexus アプリケーションサーバ V8 Webサービス開発の手引

[目次][用語][索引][前へ][次へ]

付録B.4 WS-RM 1.1機能のAPI一覧

WS-RM 1.1機能のAPIのインタフェース,クラス,および列挙型の一覧を次の表に示します。

表B-2 WS-RM 1.1機能のAPIのインタフェース,クラス,および列挙型の一覧

項番 インタフェース,クラス,または列挙型名 説明
com.cosminexus.wsrm.rms.apiパッケージ
1 RMSProvider WS-RM 1.1機能を使用する場合に最初に呼び出すクラスです。メインのAPI群であるRMSMessagingインタフェースを取得します。
2 RMSMessaging WS-RM 1.1機能の操作を実行するための,クライアントから使用するインタフェースです。シーケンス生成やシーケンス終了などの操作を実行できます。
3 RMSConfigurations RMSのプロパティをプログラムから動的に設定する場合に使用するクラスです。
com.cosminexus.wsrm.common.exceptionパッケージ
4 RMException WS-RM 1.1機能で使用する例外クラスです。
5 FaultType 例外に対応づけられたフォルトの種類を表す列挙型です。
com.cosminexus.wsrm.rms.handlerパッケージ
6 RMSAtMostOnceHandler AtMostOnce送達保証に対応したRMS機能を提供するハンドラです。
com.cosminexus.wsrm.rmd.handlerパッケージ
7 RMDAtMostOnceHandler AtMostOnce送達保証に対応したRMD機能を提供するハンドラです。
com.cosminexus.wsrm.common.modelパッケージ
8 SequenceStatesEnum シーケンスの状態を表す列挙型です。
<この項の構成>
(1) com.cosminexus.wsrm.rms.api.RMSProviderクラス
(2) com.cosminexus.wsrm.rms.api.RMSMessagingインタフェース
(3) com.cosminexus.wsrm.rms.api.RMSConfigurationsクラス
(4) com.cosminexus.wsrm.common.exception.RMExceptionクラス
(5) com.cosminexus.wsrm.common.exception.FaultType列挙型
(6) com.cosminexus.wsrm.rms.handler.RMSAtMostOnceHandlerクラス
(7) com.cosminexus.wsrm.rmd.handler.RMDAtMostOnceHandlerクラス
(8) com.cosminexus.wsrm.common.model.SequenceStatesEnum列挙型

(1) com.cosminexus.wsrm.rms.api.RMSProviderクラス

com.cosminexus.wsrm.rms.api.RMSProviderクラスの目的およびメソッドについて説明します。

(a) 目的

WS-RM 1.1機能を使用するためには,WS-RM 1.1機能のAPIを呼び出す必要があります。WS-RM 1.1機能を利用するユーザは,最初にcom.cosminexus.wsrm.rms.api.RMSProviderクラスを使用して,APIを提供するRMSMessagingクラスを取得する必要があります。

(b) メソッド

com.cosminexus.wsrm.rms.api.RMSProviderクラスのメソッドの一覧を次の表に示します。

表B-3 com.cosminexus.wsrm.rms.api.RMSProviderクラスのメソッドの一覧

項番 メソッド名/説明
1 public static com.cosminexus.wsrm.rms.api.RMSMessaging getRMSMessaging(Service service) throws com.cosminexus.wsrm.common.RMException
説明 RMSMessagingオブジェクトを取得するためのメソッドです。
引数

javax.xml.ws.Service service:
Webサービスとの通信で使用するサービスクラスです。
例外

com.cosminexus.wsrm.common.exception.RMException:
次の場合に発生します。
  • 引数のserviceにnullを指定した場合
  • 処理中にエラーが発生した場合
2 public static com.cosminexus.wsrm.rms.api.RMSMessaging getRMSMessaging (Service service, PortInfo portInfo) throws com.cosminexus.wsrm.common.RMException
説明 RMSMessagingオブジェクトを取得するためのメソッドです。
引数

javax.xml.ws.Service service:
Webサービスとの通信で使用するサービスクラスです。

javax.xml.ws.handler.PortInfo portInfo:
HandlerResolverオブジェクトからHandlerChainオブジェクトを取得するためのPortInfoオブジェクトです。
例外

com.cosminexus.wsrm.common.exception.RMException:
次の場合に発生します。
  • 引数のserviceにnullを指定した場合
  • 処理中にエラーが発生した場合
3 public static com.cosminexus.wsrm.rms.api.RMSMessaging getRMSMessaging (Service service, RMSConfigurations rmsConfigurations) throws com.cosminexus.wsrm.common.RMException
説明 RMSMessagingオブジェクトを取得するためのメソッドです。
引数

javax.xml.ws.Service service:
Webサービスとの通信で使用するサービスクラスです。

com.cosminexus.wsrm.common.exception.RMSConfigurations rmsConfigurations:
プログラムから動的に設定する場合に使用するRMSを設定します。
例外

com.cosminexus.wsrm.common.exception.RMException:
次の場合に発生します。
  • 引数のserviceにnullを指定した場合
  • 処理中にエラーが発生した場合
4 public static com.cosminexus.wsrm.rms.api.RMSMessaging getRMSMessaging (Service service, PortInfo portInfo, RMSConfigurations rmsConfigurations) throws com.cosminexus.wsrm.common.RMException
説明 RMSMessagingオブジェクトを取得するためのメソッドです。
引数

javax.xml.ws.Service service:
Webサービスとの通信で使用するサービスクラスです。

javax.xml.ws.handler.PortInfo portInfo:
HandlerResolverオブジェクトからHandlerChainオブジェクトを取得するためのPortInfoオブジェクトです。

com.cosminexus.wsrm.common.exception.RMSConfigurations rmsConfigurations:
プログラムから動的に設定する場合に使用するRMSを設定します。
例外

com.cosminexus.wsrm.common.exception.RMException:
次の場合に発生します。
  • 引数のserviceにnullを指定した場合
  • 処理中にエラーが発生した場合

(2) com.cosminexus.wsrm.rms.api.RMSMessagingインタフェース

com.cosminexus.wsrm.rms.api.RMSMessagingインタフェースの目的およびメソッドについて説明します。

(a) 目的

シーケンス生成やシーケンス終了など,WS-RM 1.1機能のメインAPIを提供します。

(b) メソッド

com.cosminexus.wsrm.rms.api.RMSMessagingインタフェースのメソッドの一覧を次の表に示します。

表B-4 com.cosminexus.wsrm.rms.api.RMSMessagingインタフェースのメソッドの一覧

項番 メソッド名/説明
1 public boolean createSequence() throws com.cosminexus.wsrm.common.exception.RMException
説明 シーケンスを生成します。なお,このメソッドを呼び出す前に,RMS定義ファイルまたはRMSConfigurationsクラスを使用して,正しいRMD(SEI)のURLを設定する必要があります。
シーケンス生成に成功した場合はtrue,失敗した場合はfalseを返します。
例外

com.cosminexus.wsrm.common.exception.RMException:
処理中にエラーが発生した場合に発生します。
2 public boolean closeSequence() throws com.cosminexus.wsrm.common.exception.RMException
説明 シーケンスをクローズします。
シーケンスのクローズに成功した場合はtrue,失敗した場合はfalseを返します。
例外

com.cosminexus.wsrm.common.exception.RMException:
処理中にエラーが発生した場合に発生します。
3 public boolean terminateSequence() throws com.cosminexus.wsrm.common.exception.RMException
説明 シーケンスを終了します。
シーケンスの終了に成功した場合はtrue,失敗した場合はfalseを返します。
例外

com.cosminexus.wsrm.common.exception.RMException:
処理中にエラーが発生した場合に発生します。
4 public long getLastMessageNumber() throws com.cosminexus.wsrm.common.exception.RMException
説明 最後に送信したアプリケーションメッセージのメッセージ番号を取得します。
例外

com.cosminexus.wsrm.common.exception.RMException:
処理中にエラーが発生した場合に発生します。
5 public boolean getMessageStatus(long messageNumber) throws com.cosminexus.wsrm.common.exception.RMException
説明 特定のメッセージ番号を持つメッセージが届いたかどうかを取得します。
メッセージが届いている場合はtrue,届いていない場合はfalseを返します。
引数

long messageNumber:
状態を取得したいメッセージのメッセージ番号です。
例外

com.cosminexus.wsrm.common.exception.RMException:
処理中にエラーが発生した場合に発生します。
6 public com.cosminexus.wsrm.common.model.SequenceStateEnum getSequenceState() throws com.cosminexus.wsrm.common.exception.RMException
説明 使用中のシーケンスの状態を取得します。
例外

com.cosminexus.wsrm.common.exception.RMException:
処理中にエラーが発生した場合に発生します。
7 public boolean isExpired() throws com.cosminexus.wsrm.common.exception.RMException
説明 シーケンスの有効期限を超過しているかどうかを取得します。
有効期限を超過している場合はtrue,超過していない場合はfalseを返します。
例外

com.cosminexus.wsrm.common.exception.RMException:
処理中にエラーが発生した場合に発生します。

(3) com.cosminexus.wsrm.rms.api.RMSConfigurationsクラス

com.cosminexus.wsrm.rms.api.RMSConfigurationsクラスの目的およびメソッドについて説明します。

(a) 目的

プログラムからRMSを動的に設定するためのクラスです。RMS定義ファイルより優先度が高いため,com.cosminexus.wsrm.rms.api.RMSConfigurationsクラスを使用することで,RMS定義ファイルの設定を上書きできます。

(b) メソッド

com.cosminexus.wsrm.rms.api.RMSConfigurationsクラスのメソッドの一覧を次の表に示します。

表B-5 com.cosminexus.wsrm.rms.api.RMSConfigurationsクラスのメソッドの一覧

項番 メソッド名/説明
1 public final void setExpiresDuration(long expiresDuration)
説明 生成するシーケンスの有効期限を設定します。生成済みのシーケンスの有効期限は変更されません。
引数

long expiresDuration:
シーケンスの有効期限(秒)です。0を指定した場合,有効期限は設定されません。
2 public final long getExpiresDuration()
説明 設定されているシーケンスの有効期限を取得します。
3 public final void setCwsrmSeiUrl(String wsrmSeiUrl)
説明 RMD(SEI)のURLを設定します。
引数

String wsrmSeiUrl:
RMD(SEI)のURLです。
4 public final String getCwsrmSeiUrl()
説明 設定されているRMD(SEI)のURLを取得します。

(4) com.cosminexus.wsrm.common.exception.RMExceptionクラス

com.cosminexus.wsrm.common.exception.RMExceptionクラスの目的およびメソッドについて説明します。

(a) 目的

WS-RM 1.1機能でエラーが発生した場合にスローされる例外クラスです。

(b) メソッド

com.cosminexus.wsrm.common.exception.RMExceptionクラスのメソッドの一覧を次の表に示します。

表B-6 com.cosminexus.wsrm.common.exception.RMExceptionクラスのメソッドの一覧

項番 メソッド名/説明
1 public RMException(Throwable throwable)
説明 RMExceptionクラスのコンストラクタです。
引数

Throwable throwable:
原因例外です。
2 public RMException(String errorCode, String errorMessage)
説明 RMExceptionクラスのコンストラクタです。
引数

String errorCode:
エラーコードです。

String errorMessage:
エラーメッセージです。
3 public RMException(String errorCode, String errorMessage, Throwable throwable)
説明 RMExceptionクラスのコンストラクタです。
引数

String errorCode:
エラーコードです。

String errorMessage:
エラーメッセージです。

Throwable throwable:
原因例外です。
4 public RMException(String errorCode, String errorMessage, FaultType faultType)
説明 RMExceptionクラスのコンストラクタです。
引数

String errorCode:
エラーコードです。

String errorMessage:
エラーメッセージです。

com.cosminexus.wsrm.common.exception.FaultType faultType:
フォルトの種類です。
5 public RMException(String errorCode, String errorMessage, FaultType faultType, Throwable throwable)
説明 RMExceptionクラスのコンストラクタです。
引数

String errorCode:
エラーコードです。

String errorMessage:
エラーメッセージです。

com.cosminexus.wsrm.common.exception.FaultType faultType:
フォルトの種類です。

Throwable throwable:
原因例外です。
6 public final com.cosminexus.wsrm.common.exception.FaultType getFaultType()
説明 例外に対応づけられているフォルトの種類を取得します。
7 public final String getErrorCode()
説明 例外に対応づけられているエラーコードを取得します。
8 public final String getErrorDetails()
説明 例外の詳細情報を取得します。

(5) com.cosminexus.wsrm.common.exception.FaultType列挙型

com.cosminexus.wsrm.common.exception.FaultType列挙型の目的および要素について説明します。

(a) 目的

RMExceptionクラスに対応づけられたフォルトの種類を表す列挙型です。

(b) 要素

com.cosminexus.wsrm.common.exception.FaultType列挙型の要素の一覧を次の表に示します。

表B-7 com.cosminexus.wsrm.common.exception.FaultType列挙型の要素の一覧

項番 要素名 説明
1 UNKNOWN_SEQUENCE_FAULT wsrm:UnknownSequenceフォルトを受信したことを示します。
2 CREATE_SEQUENCE_REFUSED_FAULT wsrm:CreateSequenceRefusedフォルトを受信したことを示します。
3 SEQUENCE_CLOSED_FAULT wsrm:SequenceClosedフォルトを受信したことを示します。
4 SEQUENCE_TERMINATED_FAULT wsrm:SequenceTerminatedフォルトを受信したことを示します。
5 WSRM_REQUIRED_FAULT wsrm:WSRMRequiredフォルトを受信したことを示します。

(6) com.cosminexus.wsrm.rms.handler.RMSAtMostOnceHandlerクラス

com.cosminexus.wsrm.rms.handler.RMSAtMostOnceHandlerクラスの目的およびメソッドについて説明します。

(a) 目的

AtMostOnce送達保証に対応したRMSハンドラクラスです。WS-RM 1.1機能を使用する場合は,com.cosminexus.wsrm.rms.handler.RMSAtMostOnceHandlerクラスをWebサービスクライアントの最後のハンドラとして組み込む必要があります。

com.cosminexus.wsrm.rms.handler.RMSAtMostOnceHandlerクラスはスレッドセーフではありません。RMSAtMostOnceHandlerオブジェクトや,RMSAtMostOnceHandlerオブジェクトを含むHandlerResolverやServiceオブジェクトをスレッド間で共有しないでください。

(b) メソッド

com.cosminexus.wsrm.rms.handler.RMSAtMostOnceHandlerクラスのメソッドの一覧を次の表に示します。

表B-8 com.cosminexus.wsrm.rms.handler.RMSAtMostOnceHandlerクラスのメソッドの一覧

項番 メソッド名 説明
1 public RMSAtMostOnceHandler() RMSAtMostOnceHandlerクラスのコンストラクタです。

(7) com.cosminexus.wsrm.rmd.handler.RMDAtMostOnceHandlerクラス

com.cosminexus.wsrm.rmd.handler.RMDAtMostOnceHandlerクラスの目的およびメソッドについて説明します。

(a) 目的

AtMostOnce送達保証に対応したRMDハンドラクラスです。WS-RM 1.1機能を使用する場合は,com.cosminexus.wsrm.rmd.handler.RMDAtMostOnceHandlerクラスをWebサービスの最後のハンドラとして組み込む必要があります。

(b) メソッド

com.cosminexus.wsrm.rmd.handler.RMDAtMostOnceHandlerクラスのメソッドの一覧を次の表に示します。

表B-9 com.cosminexus.wsrm.rmd.handler.RMDAtMostOnceHandlerクラスのメソッドの一覧

項番 メソッド名 説明
1 public RMDAtMostOnceHandler() RMDAtMostOnceHandlerクラスのコンストラクタです。

(8) com.cosminexus.wsrm.common.model.SequenceStatesEnum列挙型

com.cosminexus.wsrm.common.model.SequenceStatesEnum列挙型の目的および要素について説明します。

(a) 目的

シーケンスの状態を表す列挙型です。

(b) 要素

com.cosminexus.wsrm.common.model.SequenceStatesEnum列挙型の要素の一覧を次の表に示します。

表B-10 com.cosminexus.wsrm.common.model.SequenceStatesEnum列挙型の要素の一覧

項番 要素名 説明
1 NONE シーケンスがないことを示します。
2 CREATING シーケンスが生成中であることを示します。
3 CREATED シーケンスが生成されたことを示します。
4 CLOSING シーケンスがクローズ中であることを示します。
5 CLOSED シーケンスがクローズされたことを示します。
6 TERMINATING シーケンスが終了中であることを示します。
7 TERMINATED シーケンスが終了されたことを示します。