IMSInteractionSpec および IMSConnectionSpec のプロパティーを公開し、データとして入力できるようにすることで、Java アプリケーションでそのプロパティー値を設定したり取得したりできます。例えば、ご使用の Java アプリケーションでコンポーネント管理の EIS サインオンを使用している場合、
IMSConnectionSpec の userName および password プロパティーを公開することができます。また、Java アプリケーションが専用永続的ソケット接続上での対話を実行している場合、
IMSConnectionSpec の clientID プロパティーを公開することができます。
IMSInteractionSpec および IMSConnectionSpec のプロパティーを入力データとして公開するには、
J2C Java Bean をアプリケーションで使用する前に、そのインターフェース・ファイルおよび実装ファイルを変更する必要があります。通常は、Java アプリケーションで入力データとして必要なプロパティーだけを公開します。このトピックのステップでは、
J2C Java Bean の作成および IMS への接続プロパティーの追加で作成したプロジェクト
PhoneBookJ2CBean の J2C Java Bean を使用して、IMSInteractionSpec および
IMSConnectionSpec のすべてのプロパティーを公開する方法について説明します。
IMSInteractionSpec および IMSConnectionSpec のすべてのプロパティーを入力データとして公開するには、次のステップを実行します。
- プロジェクト「PhoneBookJ2CBean」を展開し、Java エディターでインターフェース・ファイル「PB.java」を開く。
- PB.java ファイルで、メソッド「runPB()」を更新する。 IMSInteractionSpec および IMSConnectionSpec の入力プロパティー用の引数を追加します。これらの引数は、公開されたプロパティーの入力値を指定するために使用します。その使用法は、IMS トランザクションの入力メッセージの値を指定するために、引数 INPUTMSGarg を使用する方法と同じです。メソッド runPB() に引数を追加すると、コードは次のようになります。
package sample.ims;
/**
* @generated
*/
public interface PB {
/**
* @generated
*/
public OUTPUTMSG runPB(INPUTMSG arg,
int myCommitMode,
int myExecutionTimeout,
int myImsRequestType,
int myInteractionVerb,
String myLtermName,
String myMapName,
boolean myPurgeAsyncOutput,
boolean myReRoute,
String myReRouteName,
int mySocketTimeout,
String myUserName,
String myPassword,
String myGroupName,
String myClientID) throws javax.resource.ResourceException;
}
- ファイルを保管して閉じる。
- プロジェクト「PhoneBookJ2CBean」を展開し、Java エディターでバインディング・ファイル「PBImpl.java」を開く。
- PBImpl.java ファイルで、公開したいプロパティーごとにドックレット・タグを追加して、メソッド runPB() の javadoc を更新する。
- メソッド runPB() のシグニチャーを更新する。実装のための引数を追加します。 メソッドに追加する引数は、対応するドックレット・タグで参照されます。
J2C ドックレット・タグの編集について詳しくは、『J2C Java Bean の編集』を参照してください。
ドックレット・タグを追加し、メソッドのシグニチャーを更新すると、コードは次のようになります。
/**
* @j2c.interactionSpec class="com.ibm.connector2.ims.ico.IMSInteractionSpec"
* @j2c.interactionSpec-property name="commitMode" argumentBinding="myCommitMode"
* @j2c.interactionSpec-property name="executionTimeout" argumentBinding="myExecutionTimeout"
* @j2c.interactionSpec-property name="imsRequestType" argumentBinding="myImsRequestType"
* @j2c.interactionSpec-property name="interactionVerb" argumentBinding="myInteractionVerb"
* @j2c.interactionSpec-property name="ltermName" argumentBinding="myLtermName"
* @j2c.interactionSpec-property name="mapName" argumentBinding="myMapName"
* @j2c.interactionSpec-property name="purgeAsyncOutput" argumentBinding="myPurgeAsyncOutput"
* @j2c.interactionSpec-property name="reRoute" argumentBinding="myReRoute"
* @j2c.interactionSpec-property name="reRouteName" argumentBinding="myReRouteName"
* @j2c.interactionSpec-property name="socketTimeout" argumentBinding="mySocketTimeout"
*
* @j2c.connectionSpec class="com.ibm.connector2.ims.ico.IMSConnectionSpec"
* @j2c.connectionSpec-property name="userName" argumentBinding="myUserName"
* @j2c.connectionSpec-property name="password" argumentBinding="myPassword"
* @j2c.connectionSpec-property name="groupName" argumentBinding="myGroupName"
* @j2c.connectionSpec-property name="clientID" argumentBinding="myClientID"
*
* @generated
*/
public OUTPUTMSG runPB(INPUTMSG arg,
int myCommitMode,
int myExecutionTimeout,
int myImsRequestType,
int myInteractionVerb,
String myLtermName,
String myMapName,
boolean myPurgeAsyncOutput,
boolean myReRoute,
String myReRouteName,
int mySocketTimeout,
String myUserName,
String myPassword,
String myGroupName,
String myClientID) throws javax.resource.ResourceException {
- ファイルを保管して閉じる。 新しい実装コードが、メソッド runPB() 用に生成されました。
公開された各プロパティーで、ドックレット・タグは value 属性ではなく argumentBinding 属性を使用します。
argumentBinding 属性の値は、対応する IMSInteractionSpec または IMSConnectionSpec プロパティーのメソッド引数を表します。これで、IMSConnectionSpec のすべてのプロパティーが入力データとして公開されました。