Hitachi

TPBroker Version 5 トランザクショナル分散オブジェクト基盤 TPBroker 運用ガイド


13.1 現象

JDK9では,Java Module Systemの考え方を導入し,内部API(フィールドアクセスを含む)のカプセル化によって,Javaプログラム実行環境の安全性を高めています。

JDK9とJDK8以前との互換性については,内部APIやフィールドに対するアクセスを可能とする手段として,--add-opensなどのオプションを用意しています。試行錯誤的な方法で,必要最小限の場所を指定できます。そのため,互換性を維持しながら,安全性を保った実行環境を実現しています。この仕様や考え方など,JDK9の詳細については次のOracle社のページをご参照ください。

JDK9で導入されたJava Module Systemの影響によって,JDK8以前でコンパイルまたは実行できていたRMI-IIOPアプリケーションを,JDK9以降でコンパイルまたは実行しようとした場合,アプリケーションの実装によって次の現象が発生することがあります。

項番

現象が発生する契機

現象

1

コンパイル時

java2iiopコマンド実行時に,次のメッセージが標準エラー出力に出力されます。クライアントスタブやサーバスケルトンなどの生成に失敗します。

java2iiop: fatal error: internal problem; please contact Inprise Customer Support

2

実行時

リクエストコールで,java.lang.reflect.InaccessibleObjectException例外が発生します。