2.4.1 Servletの作成方法
生成したTP1/COBOLアクセス用Beanを呼び出すServlet(Java UAP)を作成します。以下のことに注意して作成してください。
- 〈この項の構成〉
(1) setterの使用
一般のJavaBeansを利用したServletプログラムと同様に,自動生成されたBeanを参考にして,COBOL引数の設定を行います。設定時にはsetter(setXxx)を使用して引数領域をすべて設定しておかなければなりません。設定されていない領域の値は保証しません。
(a) 通常の例
- (COBOL引数の登録集原文例)
01 PERSONAL-DATA. 05 P-NUMBER PIC 9(9) USAGE COMP. 05 P-NAME PIC X(50). 05 P-ADDRESS PIC X(100).
- (例)引数設定例
bean.setP_numberI (new Integer(number)); bean.setP_nameI (""); bean.setP_addressI ("");
(b) OCCURS句を使った例
- (COBOL引数の登録集原文例)
01 G1. 02 G2 OCCURS 10. 05 B1 PIC X(50).
- (例)JavaBeansの場合の引数設定例
int i = 0; for (i = 0; i<10 ; i++) { bean.setB1I ("XXXXX", i); }
(2) COBOL SPPの場合のcallメソッド呼び出し
(3) COBOL MHPの場合のsendメソッド呼び出し
(4) COBOL MHPの場合のreceiveメソッド呼び出し
TP1/COBOLアクセス用Beanのreceiveメソッドを呼び出します。受信したメッセージはBeanのgetterメソッドで取得できます。
- [指定形式]
bean.receive(クライアントID,"メッセージ受信時の最大待ち時間(秒)”, コネクション解放の指定);
(5) COBOL MHPの場合のreceive2メソッド呼び出し
TP1/COBOLアクセス用Beanのreceive2メソッドを呼び出します。受信したメッセージはBeanのgetterメソッドで取得できます。
- [指定形式]
bean.receive2(クライアントID,"ホスト名”,“メッセージ受信時の最大待ち時間(秒)”,コネクション解放の指定);
(6) getterの指定
この値をServletで使用する場合は,Beanのgetter(getXxx)を使用することでCOBOLの引数を取得できます。
(a) 通常の例
- (COBOL引数の登録集原文例)
01 PERSONAL-DATA. 05 P-NUMBER PIC 9(9) USAGE COMP. 05 P-NAME PIC X(50). 05 P-ADDRESS PIC X(100).
- (例)引数取得指定例
Integer wkint = bean.getP_numberO (); String wkstr1 = bean.getP_nameO (); String wkstr2 = bean.getP_addressO ();