問題 RAD 8.0 (ローカル ワークステーションにインストール) では、Iseries 上の DB2 に接続するようにデータ ソースを構成しました。RAD の Web コンソールでのテスト操作は、2 つの警告で成功しました。
ただし、アプリケーションから (プログラムで) 接続しようとすると、次の例外が発生します。
java.lang.Class.throwNoSuchMethodException: J2CA0009E: リソース jdbc/iSeries_Conn によって使用される ManagedConnectionFactory クラス com.ibm.ws.rsadapter.spi.WSManagedConnectionFactoryImpl をインスタンス化しようとしているときに例外が発生しました: java.lang.NoSuchMethodException: com.ibm.ejs. j2c.DefaultSecurityHelper. (javax.resource.spi.ManagedConnectionFactory、com.ibm.ejs.j2c.MCFExtendedProperties)
たどった手順
- プロバイダードライバーのセットアップ中に選択された JDBC プロバイダー: DB2 UDB for iSeries (Toolbox XA)
- 使用するドライバー ライブラリ: jt400.jar (IBM の開発スタジオから選択しました)
データソースを作成し、テストすると、接続は 2 つの警告で成功しました
を。警告: プロパティー「translateBoolean」は DataSource クラス com.ibm.as400.access.AS400JDBCXADataSource に存在しません。
b. 警告: プロパティー「metaDataSource」は DataSource クラス com.ibm.as400.access.AS400JDBCXADataSource に存在しません。
次のステートメントを使用して、プログラムでデータソースにアクセスしようとしました
を。コンテキスト ctx = 新しい InitialContext();
b. db2DataSource = (データソース) ctx.lookup(“jdbc/iSeries_Conn”); //この行で例外が発生
この問題の適切な解決策を提案してください。