Właściwości klas IMSInteractionSpec i IMSConnectionSpec można udostępnić do wprowadzania danych, aby umożliwić aplikacji Java ustawianie lub pobieranie wartości tych właściwości. Na przykład można udostępnić właściwości userName i password klasy IMSConnectionSpec, jeśli dana aplikacja Java używa logowania EIS zarządzanego przez komponent. Można również udostępnić właściwość clientID klasy IMSConnectionSpec, jeśli dana aplikacja Java przeprowadza interakcję za pośrednictwem dedykowanego połączenia trwałego gniazda.
Aby udostępnić właściwości klas IMSInteractionSpec i IMSConnectionSpec jako wejścia, należy zmodyfikować pliki interfejsu i implementacji komponentu Java bean J2C przed użyciem go w aplikacji. Zazwyczaj udostępniane są tylko te właściwości, które są wymagane jako dane wejściowe dla aplikacji Java. Kroki w tym temacie ilustrują sposób udostępnienia wszystkich właściwości klas IMSInteractionSpec i IMSConnectionSpec za pomocą komponentu Java bean J2C w projekcie
PhoneBookJ2CBean, który został utworzony w temacie
Tworzenie komponentu Java bean J2C.
Aby udostępnić wszystkie właściwości klas IMSInteractionSpec i IMSConnectionSpec do wprowadzania, należy wykonać następujące czynności:
- Rozwiń projekt PhoneBookJ2CBean i w edytorze Java otwórz plik interfejsu PB.java.
- W pliku PB.java zaktualizuj metodę runPB(). Dodaj argumenty dla właściwości wejścia klasy IMSInteractionSpec i IMSConnectionSpec. Te argumenty są używane w celu podania wartości wejściowych udostępnionych właściwości, zaś argument INPUTMSGarg jest używany w ten sam sposób do podawania wartości dla komunikatów wejściowych transakcji IMS. Po dodaniu argumentów do metody runPB() kod będzie wyglądał podobnie do poniższego:
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;
}
- Zapisz i zamknij plik.
- Rozwiń projekt PhoneBookJ2CBean i w edytorze Java otwórz plik wiązania PBImpl.java.
- W pliku PBImpl.java zaktualizuj dokumentację Javadoc dla metody runPB(), usuwając znaczniki biblioteki Doclet dla każdej właściwości, która ma zostać zaprezentowana.
- Zaktualizuj sygnaturę metody runPB(). Dodaj argumenty dla implementacji. Argumenty dodane do metody są przywoływane przez odpowiednie znaczniki biblioteki Doclet. Informacje na temat edytowania znaczników biblioteki Doclet J2C można znaleźć w sekcji Edycja komponentu Java bean J2C. Po dodaniu znaczników biblioteki Doclet i aktualizacji sygnatury metody kod będzie podobny do poniższego:
/**
* @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 {
- Zapisz i zamknij plik. Dla metody runPB() został wygenerowany nowy kod implementacji.
Dla każdej prezentowanej właściwości znacznik biblioteki Doclet używa atrybutu argumentBinding zamiast atrybutu value. Wartość atrybutu argumentBinding reprezentuje argument metody odpowiedniej właściwości klasy IMSInteractionSpec lub IMSConnectionSpec. Teraz wszystkie właściwości klasy IMSConnectionSpec zostały udostępnione do wprowadzania.