問題タブ [jtopen]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
1071 参照

sql - JTOPEN を使用してストアド プロシージャを呼び出す

1 つの INOUT パラメーターと 4 つの IN パラメーターを受け入れる JTOPEN (JDBC) 接続を使用して、SQL 経由で AS400 ストアド プロシージャを呼び出す必要があります。私は次のSQLでこれをやっています

しかし、それはエラーをスローします

[SQL0313] ホスト変数の数が無効です。

疑問符の代わりに '' を使用すると、

[SQL0469] MYLIBのプロシージャMYSPのパラメータ1にIN、OUTまたはINOUTは無効です。

これは可能ですか?

0 投票する
2 に答える
3122 参照

jdbc - as400 でネイティブ jdbc ドライバーを使用する

私は通常、AS400JDBCDriver を使用して AS400 に接続し、DB を操作します。これは、AS400 の内外で正常に動作します。

今、私は AS400 で実行して DB にアクセスするクラスを開発しましたが、顧客は DB にアクセスするための資格情報を提供したくないと考えています。既にログに記録されています。

少し前に、com.ibm.as400.access.AS400JDBCDriver の代わりに com.ibm.db2.jdbc.app.DB2Driver を使用して、ローカル クラスから AS400 DB にアクセスしました。

私の最初の問題は、sourceforge の jt400.jar 内にクラス com.ibm.db2.jdbc.app.DB2Driver が見つからないことです。

2 番目の問題は、クラス com.ibm.db2.jdbc.app.DB2Driver を見つけることができると仮定すると、このクラスは資格情報なしでアクセスできるかということです。

どんなヒントでもいただければ幸いです

フラビオ

0 投票する
2 に答える
959 参照

java - RPG から Java を呼び出し、自分以外のすべてのユーザーに対して ClassNotFoundError

ClassNotFoundErrorRPG から Java メソッドを呼び出している間、ご協力をお願いいたします。これは、私以外のユーザーが私のプログラムを実行しようとしたときに発生します。文字通りCLASSPATHまたはjarファイルへのアクセスに問題があるようですが、その側面からも試しました。

説明: jar ファイルで Java メソッドを呼び出す RPG プログラムがあります。私の CLASSPATH には、適切な jar が含まれています (JtOpen jar ファイル)。緑と黒の画面 (Iseries セッション マネージャー) から RPG プログラムを実行すると、完全に動作します。別のユーザーが同じ方法で実行しようとすると、次のエラーメッセージがスローされます。

RPG Procedure received Java Exception java.lang.NoClassDefFoundError: com.ibm.as400.access.AS400 when calling method "invokeApiPgm" with signature "([Ljava.lang.String;Ljava.lang.String;I[Ljava.lang.String;)Z" in class "callIceApi.CallIceApiPgm".

上記の署名は、私が呼び出すメソッドの署名とも同じです。Java が不平を言っているクラスは AS400 のもののように見えますか、それとも私のものでしょうか? AS400 クラスが公開されていることがわかります。クラス オブジェクトは、クラスのコンストラクターによって正常に作成されました。main メソッドを呼び出すと失敗するだけinvokeApiPgmです。

みんな、私が何を見逃している、または台無しにしていると思いますか?

ご協力いただきありがとうございます!

テウェル

0 投票する
1 に答える
312 参照

java - Java ProgramCall が出力の NullPointerException を取得する

Java から RPG プログラムを呼び出すと、入力パラメーターを渡すことができ、Java に NullPointerException を取得するときに同じ入力フィールドから出力値を取得しようとします。これが私のサンプルコードです。解決策を提案してください。

出力:

0 投票する
2 に答える
211 参照

java - アプリケーション監査証跡と DB ログのリンク

私は、すべてのビジネス トランザクションを監査証跡に記録するアプリケーションに取り組んでおり、この監査証跡のイベントを、データとして使用される IBM System i (AS400) のジャーナルのレコードと関連付けることができるようにする必要があります。そのアプリケーションによる RDBMS。これをどのように達成できますか?

私は、アプリケーションがある種のビジネス トランザクション ID をデータベースに渡し、それを対応するジャーナル エントリと共に保存する方法があるかどうかを考えていました。これは可能ですか?

0 投票する
0 に答える
450 参照

db2-400 - DB2 AS/400 jtopen-7.1 DatabaseMetaData の変更

jt400 7.1 ドライバーを使用して DB2 AS 400 V6R1m0 に接続しています。7.1 ドライバーでは、IBM はデータベース メタデータ メソッドに変更を加えました。そのような変更の 1 つは、ユーザーが「*USRLIBL」キーワードを使用して現在のスキーマでテーブル名を取得できるようにすることです。同じドキュメントはhttp://sourceforge.net/projects/jt400/files/にあります。

デフォルトでは、「メタデータ ソース」接続プロパティは 1 に設定されており、その場合、スキーマ パターンに null が渡されると、すべてのスキーマからの情報が返されます。ただし、*USRLIBL の特別な値を自分で渡して、目的の結果を得ることができます。

したがって、キーワード「*USRLIBL」を使用してテーブル名をフェッチすると、次のようになります。

これはうまくいっています。

同じパターンを使用してプロシージャ名を取得すると、空のセットが返されます。

getProcedures 呼び出しでキーワード「*USRLIBL」を使用できますか? 「*USRLIBL」の使用が getProcedures() 呼び出しでサポートされているかどうか。または、getProcedures call() を使用しながらスキーマ パターンに null を使用し続ける必要があります。

0 投票する
1 に答える
488 参照

jdbc - JDBC 経由で AS400 上の DB2 の LIMIT を有効にする方法は?

DB2 でページングを行うために LIMIT 句を使用したいと考えています。DB2 は AS400 でホストされており、JTOpen 経由で JDBC 経由でアクセスしています。

LIMIT と OFFSET または ROWNUM を使用した結果セットのページングで、DB2 を MySql 互換にすることができることを学びました。

これにより、LIMIT 句を使用してページングを行うことができます。私のクエリはMySqlでも実行する必要があるため、これは非常に役立ちます.

残念ながら、JDBC 経由でこれを有効にする方法が見つかりませんでした。これが AS400 上の DB2 でまったくサポートされているかどうかはわかりません。

誰かがこれについてさらに光を当ててくれることを願っています。