第6章 既知の問題
6.1. 4.2 リリースの既知の問題 リンクのコピーリンクがクリップボードにコピーされました!
リンクのコピーリンクがクリップボードにコピーされました!
本セクションでは、Eclipse Vert.x 4.2 の既知の問題について説明します。
6.1.1. RH-SSO が発行するトークンは、Eclipse Vert.x 4.2 に移行した後、OAuth2 検証に失敗します。 リンクのコピーリンクがクリップボードにコピーされました!
リンクのコピーリンクがクリップボードにコピーされました!
- 説明
- Red Hat Single Sign-On (RH-SSO) を認証プロバイダーとして使用する場合、Eclipse Vert.x の以前のリリースで有効であったトークンは、Eclipse Vert.x 4.2 に移行すると検証チェックに失敗します。
- 原因
- Eclipse Vert.x 4.2 では、OAuth2 認証は、Eclipse Vert.x の以前のリリースよりも厳密なセキュリティー検証を提供します。
- 回避策
-
デフォルトでは、RH-SSO はクライアント ID ではなく
accountオーディエンスでトークンを発行します。RH-SSO を認証プロバイダーとして使用している場合、Eclipse Vert.x 4.2 に移行した後、accountオーディエンスとクライアント ID を明示的に JWTOptions 設定に追加し、トークンが正常に検証されるようにする必要があります。
6.1.2. ROWID でテーブルデータを検索する場合の JDBCClient エラー リンクのコピーリンクがクリップボードにコピーされました!
リンクのコピーリンクがクリップボードにコピーされました!
- 説明
-
Eclipse Vert.x 4.2 では、
ROWIDを使用してテーブルデータを取得しようとすると、Oracle JDBC ドライバーを持つvertx-jdbc-clientがjava.sql.SQLExceptionを出力します。 - 原因
-
Eclipse Vert.x 4.2 では、
ROWIDがバイトの配列として利用可能になりました。Eclipse Vert.x の以前のリリースでは、ROWIDは文字列タイプとして使用可能でした。 - 回避策
行 ID をバイトの配列にキャストし、この配列から新しい
ROWIDオブジェクトを作成します。以下に例を示します。
ROWID rowid = new ROWID(updateResultAsyncResult.result().getKeys().getString(0).getBytes());
ROWID rowid = new ROWID(updateResultAsyncResult.result().getKeys().getString(0).getBytes());Copy to Clipboard Copied! Toggle word wrap Toggle overflow
6.1.3. ROWID 解析時の JDBCPool エラー リンクのコピーリンクがクリップボードにコピーされました!
リンクのコピーリンクがクリップボードにコピーされました!
- 説明
-
Eclipse Vert.x 4.2 では、
ROWIDを解析しようとすると、JDBC プールはjava.lang.UnsupportedOperationExceptionを出力します。 - 原因
-
Eclipse Vert.x 4.2 では、
ROWIDをバイトの配列として直接解析することはできません。Eclipse Vert.x の以前のリリースでは、ROWIDは文字列タイプとして解析できました。 - 回避策
getValue()メソッドを使用して、行 ID をオブジェクトとして取得し、このオブジェクトをバイトの配列にキャストします。以下に例を示します。
Row lastInsertId = rows.property(JDBCPool.GENERATED_KEYS); ROWID rowid = new ROWID((byte[]) lastInsertId.getValue(0));
Row lastInsertId = rows.property(JDBCPool.GENERATED_KEYS); ROWID rowid = new ROWID((byte[]) lastInsertId.getValue(0));Copy to Clipboard Copied! Toggle word wrap Toggle overflow
6.1.4. PostgreSQL JDBC ドライバー 9.0 以降を使用すると、ストアドプロシージャコールで予期しない結果が発生する リンクのコピーリンクがクリップボードにコピーされました!
リンクのコピーリンクがクリップボードにコピーされました!
- 説明
-
Eclipse Vert.x 4.2 では、PostgreSQL JDBC ドライバー 9.0 以降を使用する
vertx-jdbc-clientは、ストアドプロシージャの呼び出しで予期しない結果を生成します。 - 原因
-
Eclipse Vert.x 4.2 では、
vertx-jdbc-clientは現在、最新の PostgreSQL データベースドライバーとサーバーが呼び出し可能なステートメントを実行するときに必要とする明示的な SQL 型情報をサポートしていません。 - 回避策
- 9.0 より前のバージョンの PostgreSQL JDBC ドライバーを使用します。
6.1.5. JDK 8 で vertx-oracle-client を使用するとコンパイルエラーが発生する リンクのコピーリンクがクリップボードにコピーされました!
リンクのコピーリンクがクリップボードにコピーされました!
- 説明
-
Eclipse Vert.x 4.2 では、OpenJDK 8 を使用すると、
vertx-oracle-clientがbad class fileコンパイルエラーを出力します。 - 原因
-
Eclipse Vert.x 4.2 では、
vertx-oracle-clientは OpenJDK 11 以降で動作するように設計されています。 - 回避策
- OpenJDK 11 または OpenJDK 17 を使用します。