COBOL 呼び出しスタブの Java クラスの使用例
COBOL 呼び出しスタブの Java™ クラスの使用例では、バッチ・アプリケーションが COBOL コンテナーを使用して COBOL プロシージャーを呼び出す方法を示しています。
この例では、次の順序で処理が行われます。
- COBOL コンテナーが作成されます。
- COBOL プロシージャー呼び出しスタブが作成されます。
- パラメーター・データが COBOL プロシージャー呼び出しスタブに設定されます。
- 共有 DB2® 接続がコンテナーで設定されます。
- コンテナーを使用して COBOL プロシージャーが呼び出されます。
ステップ 1、2、および 5 は、コンテナーを使用して COBOL プロシージャーを呼び出すために最低限必要なステップです。ステップ 3 と 4 はオプションです。ステップ 3 は、COBOL プロシージャーがパラメーターを受け取る場合にのみ必要です。また、ステップ 4 は、COBOL プロシージャーが DB2 にアクセスする場合にのみ必要です。
import com.ibm.websphere.batch.ilc.ILContainerFactory;
import com.ibm.websphere.batch.ilc.ILContainer;
import com.ibm.websphere.batch.ilc.ILContainerException;
import com.ibm.websphere.batch.ilc.ILProcedureException;
import com.ibm.ws.batch.ilc.sample.Sample;
import com.ibm.ws.batch.ilc.sample.parameters.SampleDataBinding;
import javax.naming.InitialContext;
import javax.sql.DataSource;
import java.sql.Connection;
try {
// Create the container.
ILContainer container = ILContainerFactory.getFactory().create();
// Create target procedure using call stub.
Sample proc = new Sample();
// Set parameters.
SampleDataBinding binding = proc.getSampleDataBinding();
binding.setCDummy("foo");
binding.setIlen((short)employeeNumber);
// Set db2 connection for use by COBOL (if necessary).
// InitialContext ic = new InitialContext();
// DataSource datasourceType2 = (DataSource) ic.lookup(jdbcJndi);
// Connection connectionType2 = datasourceType2.getConnection();
// container.setDB2Connection(connectionType2);
// Invoke the COBOL procedure.
int rc = container.invokeProcedure(proc);
}
catch (ILProcedureException) {
…
}
catch (ILContainerException) {
…
}