ランタイム環境での既知の問題および制約事項

Liberty プロファイルのランタイム環境で作業する際に適用される既知の問題および制約事項がいくつかあります。

分散プラットフォームの場合

Developer Tools の既知の問題および制約事項』も参照してください。

既知の問題および制約事項のリスト:

Java の最小サポート・レベル

Liberty プロファイルは、以下の特定の実装について示されている最小サポート・レベルを条件として、準拠する Java™ SE 6 または Java SE 7 のどのランタイム環境でもサポートされます。
Java SE 6 ランタイム環境
IBM® の Java SDK の場合、サポートされる最小レベルは 6.0 (J9 2.6) SR 1 です。Oracle の JDK の場合、サポートされる最小レベルは Java 6 Update 26 です。
Java SE 7 ランタイム環境
IBM の Java SDK の場合、サポートされる最小レベルは IBM Runtime Environment, Java Technology Edition 7.0.4.1 です。 Windows および Linux の Oracle の JDK の場合、サポートされる最小レベルは Java SDK/JRE/JDK 7.0.17 です。 Mac OS X の Oracle の JDK の場合、サポートされる最小レベルは Java SDK/JRE/JDK 7.0 Update 15 です。
[8.5.5.5 以降]Java SE 8 ランタイム環境
IBM の Java SDK の場合、サポートされる最小レベルは IBM SDK, Java Technology Edition バージョン 8 です。Oracle の JDK の場合、サポートされる最小レベルは Java 8 Update 25 です。

分散プラットフォームの場合分散プラットフォームでは、32 ビットまたは 64 ビットの Java がサポートされます。

分散プラットフォームの場合Windows システムおよび Linux システムでは、 Oracle の JDK または IBM の JDK のいずれかを使用することができます。 Windows または Linux でアプリケーションを開発していて、 WebSphere Application Server の完全プロファイルで稼働するサーバーにそれらのアプリケーションをデプロイする予定の場合は、 IBM の JDK を使用してください。 HP システムおよび Mac OS では、Oracle の JDK を使用してください。

IBM i プラットフォームの場合注: IBM iSeries® の最小サポート Java レベルを入手するには、IBM J2SE 6.0 32 ビット JVM (5761-JV1 オプション 11 [8.5.5.2 以降] または 5770-JV1 オプション 11) あるいは IBM SE 6.0 64 ビット (5761-JV1 オプション 12 [8.5.5.2 以降] または 5770-JV1 オプション 12) をインストールし、さらに JavaPTF グループ SF99562 レベル 19 (以降) (IBM i 6.1 の場合) または SF99572 レベル 8 (以降) (IBM i 7.1 の場合) をインストールしてください。

インストール・ディレクトリー名およびパスに 非 ASCII 文字は使用できない

最近の JVM は、-jar コマンドおよび -javaagent コマンドでの非 ASCII 文字の使用を完全にはサポートしていません。 インストール・ディレクトリー名およびパスには ASCII 文字のみを使用してください。

実行時に JDBC データ・ソースを変更すると、JPA で障害が発生することがある

データベース・ディクショナリー・タイプがプロパティーで指定されない場合、最初のエンティティー・マネージャーが作成されてデータベース接続が行われたときに、OpenJPA がそのタイプの検出および算出を行います。 このデータベース・ディクショナリー・タイプは、その後作成されるすべてのエンティティー・マネージャーに使用されます。 アプリケーションの実行中に JDBC データ・ソースが変更されると、 エンティティー・マネージャー・ファクトリーはこの変更を検出せずに、新しいデータ・ソースの操作に古いディクショナリーを使用し続けます。 データベースが別のベンダーに変更された場合、これにより障害が発生する可能性があります。

データベースを別のベンダーに変更した場合は、アプリケーションを再始動してください。

dataSource、jdbcDriver、connectionManager、および JDBC ベンダー・プロパティーを実行時に変更すると、JPA で障害が発生する可能性がある

サーバーの稼働中に dataSourcejdbcDriverconnectionManager、または いずれかの JDBC ベンダー・プロパティー・リスト (例えば、properties.db2.jcc または properties.oracle など) の構成を更新すると、 J2CA8040E の障害が発生することがあります。 これらの障害では、複数の dataSource エレメントを単一の connectionManager に関連付けられないことに言及しています。 構成で 1 つの connectionManager だけを dataSource エレメントに関連付けている場合にも、これらの障害は生成されます。

これらのいずれかの JDBC リソースの構成を更新したら、サーバーを再始動してください。

getRealPath で返される結果に依存するアプリケーションは、 WAR ファイルではなく、展開されたアプリケーションとしてデプロイする必要がある

Java EE 仕様では、コンテンツが Web アーカイブ (WAR) ファイルから使用可能になっている場合に、 getRealPath() メソッドが null 値を返すことを規定しています。 WAR ファイルを Liberty プロファイルにデプロイした場合、 プロファイルはアーカイブ・ファイルをディレクトリー構造に自動的に解凍しません。 そのため、アプリケーションを開始できないことがあります。 getRealPath() で返される結果にアプリケーションが依存する場合には、 アプリケーションを WAR ファイルではなく、展開された Web アプリケーションとしてデプロイする必要があります。 例えば、手動で WAR ファイルを解凍して、展開されたアプリケーションを dropins ディレクトリーにコピーすることができます。

WebSphere Application Server の完全プロファイル のスクリプトは Liberty プロファイルで動作しない

WebSphere Application Server の完全プロファイルbin ディレクトリーの下にあるスクリプトはどれも、Liberty プロファイルの管理には使用できません。

fileset の制約事項

fileset には、以下の制約事項が適用されます。
  • fileset は、ベース・ディレクトリーのサブディレクトリーを再帰的に探索しません。 例えば、次の指示はサポートされません。
    <fileset id="testFileset" dir="\temp" includes="**\a.jar"/> 
    <fileset id="testFileset" dir="\temp" includes="a\a.jar"/>
    <fileset id="testFileset" dir="\temp" includes="*\a.jar"/>
    <fileset id="testFileset" dir="\temp" includes="a\b\a.jar"/>

Java SDK のクラスのオーバーライド

Liberty プロファイルでサポートされる一部の Java EE 6 テクノロジーでは、Java SE 6 で提供されている新しいバージョンの API が必要です。JAX-WS、JAXB、および javax.annotation.Resource アノテーションはすべて、Java 6 SDK に、Java EE 6 で必要なものより古いクラスが含まれている例です。Java SDK バージョン 6 を使用してこれらの API に対してアプリケーション・コードをコンパイルする場合には、Java SDK ではなく、Liberty プロファイルで提供されているクラスを使用する必要があります。 以下のいずれかのアクションを実行する必要があります。
  • javac を使用してコマンド行からビルドする場合は、javac -endorseddirs オプションおよび ${wlp.install.dir}/dev/specs ディレクトリー内の JAR ファイルを使用してコードをコンパイルしてください。
  • Apache Ant を使用してビルドする場合は、javac タスクの <compilerarg> 子エレメントおよび ${wlp.install.dir}/dev/specs ディレクトリー内の JAR ファイルを使用してコードをコンパイルしてください。 ビルド・スクリプトでは、-endorseddirs オプションと ${wlp.install.dir}/dev/specs ディレクトリーを別々の <compilerarg> エレメントとして指定します。以下に例を示します。
    <javac srcdir="src" destdir="classes"/>
        <compilerarg value="-endorseddirs"/>
        <compilerarg value="${wlp.install.dir}/dev/specs"/>
    </javac>
  • Apache Maven を使用してビルドする場合は、Maven コンパイラー・プラグインの endorseddirs エレメントおよび ${wlp.install.dir}/dev/specs ディレクトリー内の JAR ファイルを使用してコードをコンパイルしてください。 以下に例を示します。
    <plugin>
      <groupId>org.apache.maven.plugins</groupId>
      <artifactId>maven-compiler-plugin</artifactId>
      <configuration>
        <source>1.6</source>
        <target>1.6</target>
        <compilerArguments>
          <endorseddirs>${wlp.install.dir}/dev/specs</endorseddirs>
        </compilerArguments>
      </configuration>
    </plugin>
Windows プラットフォームの場合

共有ライブラリーを非公開にしたとき、サーバーが停止するまでそれを削除できない

サーバーから共有ライブラリーを非公開にした場合、ライブラリー JAR ファイルはサーバーから即時に解放されません。 そのため、オペレーティング・システムは、そのファイルがもう使用されていないことを認識しておらず、そのファイルの削除を許可しません。 次にサーバーを停止すると、ライブラリー JAR ファイルが解放され、ファイルを削除できるようになります。

java:global 検索の制約事項

java:global 検索でアプリケーション内に定義されたリソースは、現行サーバーにデプロイ済みのアプリケーションによって宣言された名前にアクセスする場合のみ使用可能です。

appSecurity-2.0 フィーチャーの制約事項

appSecurity-2.0 フィーチャーには次の制約があります。
  • EJB アプリケーションに対して、ibm-ejb-jar-ext.xml ファイルの拡張設定において SYSTEM_IDENTITY の run-as-mode は サポートされません。
  • getCallerIdentity API は、singleton セッション Bean にはサポートされていません。
  • ロール名は HttpServletRequest.isUserInRole および EJBContext.isCallerInRole API によって参照するか、または、 デプロイメント記述子内で @DeclareRoles アノテーションまたは <security-role/> エレメントを 使用して最初にロール名を宣言することなく、デプロイメント記述子内のエレメントによって参照できます。ただし、ロールは、完全プロファイルで使用する 前に、宣言されている必要があります。

組み込み Liberty サーバーでアプリケーションが開始されない

組み込み Liberty サーバーを開始する Java プロセスが、libertyInstallDir/bin/tools/ws-javaagent.jar を指す -javaagent JVM 引数を使用して開始されたことを確認してください。-javaagent JVM 引数が使用されていない場合は、サーバー・ランタイムは開始されますが、明確な例外なしに、アプリケーションは開始に失敗します。

[8.5.5.6 以降]

WebSphere MQ リソース・アダプターおよび汎用 JCA サポートに関連した制約事項

WebSphere® MQ リソース・アダプターは、wasJmsClient-1.1 フィーチャーまたは wasJmsClient-2.0 フィーチャーまたは汎用 JCA サポートを使用して、WebSphere Application Server Liberty プロファイル内で使用することができます。

Liberty プロファイルのバージョン 8.5.5 以降で WebSphere MQ リソース・アダプターのバージョン 7.5 を使用できます。JMS 2.0 リソース・アダプターに基づいている WebSphere MQ リソース・アダプターのバージョン 8.0 を使用する場合、JMS 2.0 リソース・アダプターとの互換性がある最新の Liberty プロファイルのバージョンを使用してください。

注:
  • Liberty プロファイルのバージョン 8.5.5.2 では、wasJmsClient-1.1 フィーチャーは、IBM MQ リソース・アダプターのバージョン 7.5.0.5 以降とともに使用する必要があります。
  • Liberty プロファイルのバージョン 8.5.5.6 では、wasJmsClient-2.0 フィーチャーは、IBM MQ リソース・アダプターのバージョン 8.0.0.3 以降とともに使用する必要があります。

WebSphere MQ リソース・アダプターと Liberty プロファイル間のバージョン互換性情報について詳しくは、WebSphere MQ リソース・アダプターを入手するための参照資料を参照してください。

汎用 JCA サポートを使用する場合、以下の制約事項が適用されます。
  • IBM® WebSphere MQ リソース・アダプターを z/OS® 上で実行するには、wasJmsClient-1.1 または wasJmsClient-2.0 フィーチャーを使用する必要があります。
  • トレースおよびロギングは、汎用 JCA を使用して Liberty トレース・システム内に組み込まれていません。トレースは別のファイルに書き込まれ、システム・プロパティーを設定して使用可能にする必要があります。トレースを使用可能にする手順は、Java™ Standard Environment での JMS トレース機能用の WebSphere MQ クラスを構成する場合と同じです。『Java 標準環境トレース・スタンザ』を参照してください。

「dropins (ドロップイン)」ディレクトリー内のアプリケーションのバージョン管理はできない

「dropins (ドロップイン)」ディレクトリー内のアプリケーションの場合、 アプリケーション・モニターはファイル名とファイル拡張子を使用して、アプリケーションのタイプを判別し、 アプリケーション ID とアプリケーション名を生成します。そのため、ファイル名またはファイル拡張子を使用して、アプリケーションのバージョン番号を指定することはできません。実稼働環境では、「dropins (ドロップイン)」ディレクトリーの仕様はお勧めできません。

Admin Center フィーチャーの制約事項

adminCenter-1.0 フィーチャーには次の制約があります。
  • [8.5.5.2 以降]Network Deployment などの WebSphere Application Server の完全プロファイル 製品で使用可能な IBM Java 仮想マシン (JVM) を使用すると、WebSphere Liberty Administrative Center (「Admin Center」) がブラウザーに表示されません。デフォルトで、完全プロファイル製品で使用可能な IBM JVM は、Secure Sockets Layer (SSL) を要求する、Admin Center に必要なセキュリティー・クラスではなく、完全プロファイル製品でのみ使用可能なセキュリティー・クラスを指します。Liberty プロファイル製品と SSL をサポートする JVM を使用してください。
    [8.5.5.4 以降]以下のように、Installation Manager オファリングまたは developerWorks から、Liberty プロファイル製品および SSL をサポートする JVM を入手できます。
    • Installation Manager を使用して、まず Liberty プロファイル製品を選択してから、WebSphere SDK for Liberty を選択します。Installation Manager を使用して、Liberty プロファイル製品および Software Development Kit (SDK) をインストールします。WebSphere SDK for Liberty には、Liberty プロファイル製品と SSL に必要なサポートが含まれており、また Java クライアント JConsole が用意されています。
    • developerWorks Web サイトの http://www.ibm.com/developerworks/java/jdk/index.html にアクセスし、ご使用のオペレーティング・システム用の IBM Java Development Kit (JDK) をダウンロードします。developerWorks Web サイトでは、すべてのオペレーティング・システム用の JVM が用意されているわけではありません。例えば、Windows オペレーティング・システムの場合、Eclipse から JDK を入手する必要があります。
  • [8.5.5.4 以降]コントローラーにデプロイされるサーバー・パッケージは、サーバーがコントローラーに既に参加している場合、正常にデプロイされません。

    サーバー・パッケージをコントローラーにデプロイする場合、どのコントローラーにも参加していないサーバーのみをパッケージしてください。

    あるいは、サーバーがコントローラーに参加している場合、$WLP_INSTALL_DIR/usr/servers/server_name/resources/collective ディレクトリーを (サブディレクトリーとともに) 一時ディレクトリー (/tmp など) に移動してから、サーバーの package コマンドを実行します。次に、サーバー・パッケージが作成された後に、一時ディレクトリー内の resources/collective ディレクトリーを (サブディレクトリーとともに) $WLP_INSTALL_DIR/usr/servers/server_name に戻します。

  • [8.5.5.4 以降]Admin Center デプロイ・ツールで、「リモート管理資格情報」「各ターゲット・ホストに構成された接続メソッドおよび資格情報を使用する」オプションを使用して Liberty プロファイル 8.5.5.3 以前のサーバー・パッケージを登録済みホストにデプロイすることはできません。サーバー・パッケージでは、Liberty プロファイル 8.5.5.4 以降がサポートされる必要があります。
  • [8.5.5.6 以降]Admin Center 探索ツールでタグが表示されるのは、サーバー・リソース、クラスター・リソース、およびアプリケーション・リソースの場合のみです。ランタイム・リソースにはタグは表示されません。タグについては、Liberty リソースの管理メタデータの設定およびAdmin Center での管理メタデータの設定および表示を参照してください。
  • [8.5.5.5 以降]Admin Center モニター・ビューの CPU 使用率グラフでは、プロセス CPU 統計を提供しない JVM に対して、0% または null% の CPU 使用率が表示されます。グラフについて詳しくは、Admin Center でのメトリックのモニターを参照してください。

Bean 検証フィーチャーの制約事項

beanvalidation-1.0 フィーチャーには次の制約があります。
  • OSGi アプリケーション内の Bean 検証はサポートされません。
[8.5.5.6 以降]beanValidation-1.1 フィーチャーには次の制約があります。
  • OSGi アプリケーション内の Bean 検証はサポートされません。
  • beanValidation-1.0 フィーチャーとともに、validation.xml ファイルのカスタム ConstraintValidatorFactory 実装を提供するアプリケーションは、Bean Validation 1.1 API に対してコンパイルされません。

動的キャッシュ・フィーチャーの制約事項

以下の動的キャッシュ・フィーチャーは使用できないか、使用に制限があります。
  • キャッシュ複製はサポートされません。
  • ハイパフォーマンスのディスク・キャッシング・モードのみがランダムおよびサイズ・ベースの排除手法でサポートされます。
  • Web サービス・クライアント・サイドとサーバー・サイドのキャッシングおよび cachespec.xml ファイル内のポートレット・キャッシュはサポートされません。
  • SingleThreadModel サーブレットのサーブレット・キャッシングはサポートされません。
  • プロパティー・ファイルを使用したキャッシュ構成の定義は、Enterprise JavaBeans (EJB) のみを含む JAR ファイルではサポートされません。
  • ヒープ・キャッシュ・サイズの制限は 32 ビットの Java 仮想マシン (JVM) でのみ有効です。

ejbLite-3.1 フィーチャーの制約事項

ejbLite-3.1 フィーチャーには次の制約があります。
  • バージョン 3.0 より前の EJB モジュールはサポートされません。 この制約事項は、.xml ファイル形式ではなく .xmi ファイル形式を使用したバインディングおよび拡張がサポートされないことも表しています。
  • セッション Bean が ejblocal 名前空間にバインドされません。つまり、JNDI 検索および ejb-ref バインディング名は、java:global 名、java:app 名、または java:module 名を使用する必要があります。simple-binding-name エレメントとインターフェース binding-name エレメントは、ibm-ejb-jar-bnd.xml ファイルで無視されます。
  • ステートフル Bean 非活性化ディレクトリーは構成できません。 ファイルはサーバー作業域に非活性化されます。
[8.5.5.6 以降]

eventLogging-1.0 フィーチャーの制約事項

eventLogging-1.0 フィーチャーには次の制約があります。
  • eventLogging-1.0 フィーチャーを実行中のサーバーから削除すると、デプロイ済み Web アプリケーションが再始動されます。
[8.5.5.6 以降]

jpa-2.1 フィーチャーの制約事項

jpa-2.1 フィーチャーの場合、CORBA/RMI-IIOP を介した JPA エンティティーの交換では、通信の両側で同一の JPA フィーチャー・レベルを有効にする必要があります。

jsp-2.2 フィーチャーの制約事項

jsp-2.2 フィーチャーには次の制約があります。
  • 変換された JSP ファイルをメモリーにのみ保管する useInMemory 構成オプションのサポートはありません。

monitor-1.0 フィーチャーの制約事項

monitor-1.0 フィーチャーには次の制約があります。
  • このフィーチャーが server.xml ファイルから 削除される場合、JAX-WS アプリケーションが機能するようサーバーを再始動する必要があります。
[8.5.5.6 以降]

requestTiming-1.0 フィーチャーの制約事項

requestTiming-1.0 フィーチャーには次の制約があります。
  • requestTiming-1.0 フィーチャーを実行中のサーバーから削除すると、デプロイ済み Web アプリケーションが再始動されます。
  • requestTiming-1.0 フィーチャーは、アクティブ化されている場合に、DayTrader アプリケーションで測定すると、最大可能アプリケーション・スループットに 8% の影響を与えることが分かっています。 ご使用のアプリケーションへの影響ではこの数値が前後する可能性がありますが、パフォーマンスの低下が顕著になる可能性があることに留意する必要があります。

wmqJmsClient-1.1 フィーチャーの制約事項

wmqJmsClient-1.1 フィーチャーには次の制約があります。
  • Windows 環境変数の PATH 変数が WebSphere MQ インストール済み環境の bin ディレクトリーを指すように手動で設定する必要があります。 アプリケーションが BINDING 接続モードを使用する場合は、この path 変数を設定しなければなりません。
  • WebSphere MQ classes for Java (通常、 Base Java と呼ばれます) は、 wmqJmsClient-1.1 フィーチャーには含まれません。これは、他のアプリケーション・サーバーのリソース・アダプターに含まれていますが、 Java Enterprise Edition 環境の Base Java API には推奨されません。 詳しくは、『Using WebSphere MQ Java Interfaces in J2EE/JEE Environments』を参照してください。
  • wmqJmsClient-1.1 フィーチャーに対しては BINDINGS_THEN_CLIENT トランスポート・タイプ の WebSphere MQ リソース・アダプターはサポートされていません。
  • wmqJmsClient-1.1 フィーチャーに対しては Advanced Messaging Security (AMS) フィーチャー は組み込まれていません。
[8.5.5.6 以降]

wmqJmsClient-2.0 フィーチャーの制約事項

wmqJmsClient-2.0 フィーチャーには次の制約があります。
  • Windows 環境変数の PATH 変数が WebSphere MQ インストール済み環境の bin ディレクトリーを指すように手動で設定する必要があります。 アプリケーションが BINDING 接続モードを使用する場合は、この path 変数を設定しなければなりません。
  • WebSphere MQ classes for Java (通常、 Base Java と呼ばれます) は、 wmqJmsClient-2.0 フィーチャーには含まれません。これは、他のアプリケーション・サーバーのリソース・アダプターに含まれていますが、 Java Enterprise Edition 環境の Base Java API には推奨されません。 詳しくは、『Using WebSphere MQ Java Interfaces in J2EE/JEE Environments』を参照してください。
  • wmqJmsClient-2.0 フィーチャーに対しては BINDINGS_THEN_CLIENT トランスポート・タイプ の WebSphere MQ リソース・アダプターはサポートされていません。

concurrent-1.0 フィーチャーの制約事項

[8.5.5.4 以降]concurrent-1.0 フィーチャーでは、以下の制約事項が適用されます。

タイプが securityContext のスレッド・コンテキストで、JAAS ログイン・モジュールを使用して追加されていないサブジェクト内のカスタム情報は、伝搬されません。例えば、TAI によって追加されたカスタム・プリンシパルが送信者のサブジェクトに含まれている場合、伝搬されるサブジェクトに、このカスタム・プリンシパルは含まれません。

[8.5.5.6 以降]

jacc-1.5 フィーチャーの制約事項

jacc-1.5 フィーチャーでは、以下の構成は無視されます。
  • アプリケーションの EAR ファイルの ibm-application-bnd.xml ファイルまたは ibm-application-bnd.xmi ファイルに含まれている許可情報 (authorizations 属性の users 属性および groups 属性)。
  • server.xml ファイル内の許可情報 (application-bnd エレメント内の security-role 属性の user、group、および special-subject の各属性)。

トピックのタイプを示すアイコン 参照トピック

インフォメーション・センターに関するご使用条件 | フィードバック


タイム・スタンプ・アイコン 最終更新: 2015 年 6 月 17日
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=phil&product=was-libcore-mp&topic=rwlp_restrict
ファイル名: rwlp_restrict.html