
Developer Tools の既知の制約事項
WebSphere® Application Server Developer Tools for Eclipse で作業しているときに、いくつかの既知の制約事項が適用されます。
『ランタイム環境での既知の問題および制約事項』も参照してください。
既知の問題および制約事項のリスト:
コンソール・ログ・レベル設定を変更した後で、Liberty サーバーと対話できない
コンソール・ログ・レベルが WARNING、ERROR、または OFF に設定されている場合、既知の制限があります。サーバーを開始または停止できない、サーバーに公開できないなど、ワークベンチで Liberty サーバーと対話しているときに問題が発生します。例えば、ワークベンチが Liberty サーバーを開始することができず、以下のタイムアウト・エラー・メッセージが表示されます。
コンソール・ログ・レベル (consoleLogLevel) は、サーバー構成 (server.xml) ファイル内の logging 構成エレメントの属性で、オプションの範囲は INFO、AUDIT、WARNING、ERROR、および OFF です。コンソール・ログ・レベル設定のデフォルト値は、AUDIT です。詳細については、Liberty Kernelのトピックで consoleLogLevel 属性を探してください。
この既知の制限を回避するには、コンソール・ログ・レベルに INFO を指定するか、またはデフォルトである AUDIT 設定を使用します。- 「サーバー」ビューで、Liberty サーバーを展開します。
- 「サーバー構成 [server.xml]」ノードを右クリックし、「開く」を選択します。
- サーバー構成エディターの「構成構造」セクションで、「サーバー構成」ノードを展開します。次のステップは、「ロギング」エレメントが使用可能かどうかによって異なります。
- 「ロギング」エレメントが使用可能な場合は、それを選択し、サーバー構成エディターの「ロギング」セクションの下にある「コンソール・ログ・レベル」フィールドのドロップダウン・メニューを使用して、「AUDIT」または「INFO」のいずれかのオプションを選択します。「Ctrl+s」を押して、エディターでの変更を保存します。
- 「ロギング」エレメントが使用不可な場合は、ワークベンチが既にデフォルトの AUDIT 設定を使用しています。その結果、ワークベンチと Liberty サーバー間の対話が失敗する原因となっている別の問題が発生している可能性があります。
サーバーのコピーおよび貼り付けを行うと、公開状態が非同期になる可能性がある
サーバーのコピーおよび貼り付けを行った場合、それらのサーバーは同じ構成ファイルを指すため、サーバーのコピーおよび貼り付けは行わないようにしてください。サーバーのコピーおよび貼り付けを行うと、公開状態が非同期になる可能性があります。例えば、あるサーバーからアプリケーションを削除すると、そのアプリケーションは他のサーバーにデプロイされていないのに、まだそのサーバーにデプロイされているように見えます。サーバー状態の同期化は、次の公開操作まで再実行されません。hideMessage 属性を使用してメッセージを抑止した場合にサーバーの始動を認識できない
サーバー構成 [server.xml] の Logging エレメントで <hideMessage> 属性を構成して、メッセージを抑止できます。サーバー始動メッセージを非表示にするように構成した場合 (例えば、<logging hideMessage="CWWKF0011I"/>)、サーバーの始動時にサーバーの状態をツールで認識できません。そのような場合、「サーバー」ビューのサーバーの状態は、タイムアウトになるまで starting のままになり、最終的に以下のメッセージが表示されます。

リモート・サーバーが Java の新バージョンで作成されたプロジェクトを実行できない
リモート・サーバーで実行されているよりも高いバージョンの Java でプロジェクトをコンパイルした場合、以下のエラー・メッセージを受け取ることがあります。
エラー 404: javax.servlet.UnavailableException:
SRVE0202E: サーブレット [s1]: s1 が見つかりましたが、破損しています。
SRVE0227E: クラスが適切なパッケージ・ディレクトリーに常駐していることを確認してください。
SRVE0228E: クラス名が、大文字または小文字を適切に使用し、完全修飾パッケージでサーバーに定義されていることを確認してください。
SRVE0229E: クラスがバイナリー転送モードでファイル・システムに転送されたことを確認してください。
SRVE0230E: クラスが大文字小文字を適切に (クラス定義の定義どおりに) 使用してコンパイルされたことを確認してください。
SRVE0231E: クラス・ファイルがコンパイル後に名前変更されていないことを確認してください。
リモート・サーバーで実行されているよりも高いバージョンの Java でパッケージにプロジェクトを作成した場合、以下のエラー・メッセージを受け取ることがあります。
エラー 404: java.io.FileNotFoundException: SRVE0190E: ファイルが見つかりません: /s2
コンソール出力: [ERROR] SRVE0266E: サーブレットの初期化中にエラーが発生しました: java.lang.UnsupportedClassVersionError: JVMCFRE003 メジャー・バージョンが正しくありません; class=s1, offset=6
at java.lang.ClassLoader.defineClassImpl(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:383)
at com.ibm.ws.classloading.internal.AppClassLoader.definePackageAndClass(AppClassLoader.java:318)
at [internal classes]
これらのエラーを回避するには、リモート・サーバーで実行されているのと同じバージョンの Java またはそれ以前のバージョンでプロジェクトをコンパイルします。また、リモート・サーバーで実行されているのと同じバージョンの Java またはそれ以前のバージョンでパッケージにプロジェクトを作成することもできます。 リモート・サーバーの Java バージョンを検出するには、messages.log ファイルを確認します。messages.log ファイルの表示について詳しくは、開発者ツールを使用したトレース・ファイルおよびメッセージ・ログ・ファイルの表示を参照してください。
リモート Liberty サーバーの使用時、または Docker コンテナーでの Liberty サーバーの使用時に、一部のユーティリティーが使用できない
- Web サーバー・プラグイン生成
- 構成スニペット追加
- Web サーバー・プラグイン生成
- サーバーのパッケージ化
- 構成スニペット追加