このトピックでは、問題を回避する方法や、エラーが発生したときの解決方法について説明します。
問題を回避するための注意事項
- Workshop for WebLogic は、Eclipse プラットフォームをベースとしたオープン ソース環境に実装されており、BEA 以外によって開発されたさまざまなソフトウェアと共存しています。そのため、Eclipse のコマンドや機能の中には、対応する Workshop for WebLogic コマンドのサブセットになっていたり、Workshop for WebLogic プロジェクトでは使用できないものが数多くあります。コマンドや機能が想定どおりに動作しない場合は、Workshop for WebLogic のドキュメントを参照して、そのタスクを実現するための適切な方法を判断してください。
- サーバ ベースのアプリケーションをテストしたりデバッグしたりするには、サーバにデプロイされているファイルを適切に管理できている必要があります。サーバを正しく管理してください。
- プロジェクトが正しくビルドまたはデプロイされていないと、エンタープライズ アプリケーション (EAR) プロジェクト上の依存関係が正しく設定されなかったり、ビルド パスやクラス パスが正しく設定されなかったりするおそれがあります。プロジェクト依存関係が正しく設定されていることを確認してください。
- 同じドメインで 2 つのサーバを実行した場合、実質的には 1 つのサーバとして認識され、衝突や予期しない動作が発生するおそれがあります。2 つのサーバを同時に実行する場合は別々のドメインを使用してください。
- ある Web サービスが別の Web サービスにアクセスする場合は、それらの Web サービスを同じプロジェクトに含めないようにしてください。
- WebLogic プロジェクト タイプ (EJB プロジェクトではなく WebLogic EJB プロジェクト) を使用してください。また、EAR プロジェクトを作成する際は、[新規モジュール] ボタンを使用しないでください。このボタンを使用すると、Workshop for WebLogic 機能をサポートしない Eclipse プロジェクトが作成されてしまいます。
- アーカイブ ファイルやプロジェクトをインポートするには [ファイル|インポート] を使用してください。また、WebLogic Workshop 8.1 で作成したプロジェクトをインポートする場合は、[アップグレード] ウィザードを使用してください。
- アーカイブ ファイルを作成するときは [ファイル|エクスポート] を使用してください。
- Workshop for WebLogic 機能は、他の Workshop for WebLogic 機能と一緒に使用すると適切な情報が表示されるように設計されています。Workshop for WebLogic パースペクティブ ([Workshop]、[ページ フロー]) を使用してください。それ以外に使用できる Eclipse パースペクティブは、[デバッグ]、[リソース]、および [J2EE] です。
- 動的 Web アプリケーションは、スタンドアロン プロジェクトまたは WAR としてデプロイメントおよびテストできます。しかし、それ以外のすべてのプロジェクト (Web サービス プロジェクト、EJB プロジェクト、およびユーティリティ プロジェクト) は、必ず「エンタープライズ アプリケーション (EAR) プロジェクト」を使用してデプロイする必要があります。
Workshop for WebLogic で Eclipse コマンドを使用する場合の問題
Workshop for WebLogic では、一部の Eclipse 標準コマンドは使用できません。
- [プロジェクト|プロパティ|Java のビルド・パス] を使用してプロジェクト依存関係を設定しないようにしてください。[Java のビルド・パス] では Java ビルド パスしか設定されません。Java ビルド パスは、Workshop for WebLogic で使用するプロジェクト依存関係の一部でしかありません。Workshop for WebLogic のプロジェクト依存関係の設定については、「プロジェクト依存関係の管理」を参照してください。
- [ファイル|エクスポート|Ant ビルド・ファイル] を使用しないでください。[ファイル|エクスポート|Workshop Ant スクリプト] および [ファイル|Workshop Ant スクリプト用ワークスペース メタデータのエクスポート] を使用してください。
- EAR プロジェクトを作成する際の最後の画面には、[新規モジュール] ボタンが表示されます。このボタンを使用すると、Workshop for WebLogic 機能をサポートしないプロジェクトが作成されてしまいます。[新規モジュール] ボタンは使用しないでください。
- Workshop for WebLogic Web アプリケーションのビルドには、[ファイル|新規|プロジェクト|Web|静的 Web プロジェクト] を使用しないでください。[ファイル|新規|プロジェクト|Web|動的 Web プロジェクト] を使用してください。
- Workshop for WebLogic アプリケーションを実行する際は、[実行|サーバで実行] を使用してください。
トラブルシューティングの一般的な手順
トラブルシューティングを行う際は、次の手順に従って問題を診断します。
- http://edocs.beasys.co.jp/e-docs/workshop/docs92/relnotes/index.html のリリース ノートで、このバージョンの Workshop for WebLogic での確認済みの問題をチェックします。
- Beehive、WTP、および Eclipse のリリース ノートを確認します。
- 付属のサンプル コードやチュートリアルを見直して、より優れた方法がないか確認します。「ヘルプをスタンドアロン モードで起動して、再起動の影響を受けないように」してください。
- [問題] ビューで、アプリケーションが Workshop for WebLogic で正常にビルドされているかどうか確認します。[クイック・フィックス] 機能を使用してエラーを解決します。
- ドキュメントを参照して、アプリケーションが正しくデプロイされているかどうかを確認します。
- 別のアプリケーションからではなく、テスト クライアントを使用して Web サービスを直接テストします。
プロジェクト構造の問題 (ビルド エラー)
IDE ではプロジェクトが正しくコンパイルされるのに、サーバで実行すると Class Not Found 例外が生成される場合は、[パッケージ・エクスプローラ] ビューでプロジェクト名を右クリックして [プロパティ] を選択し、モジュールの依存関係を設定する必要があります。[J2EE Module Dependencies] をクリックし、EJB プロジェクトまたはユーティリティ プロジェクトのリンクを設定します。詳細については、「標準のプロジェクト依存関係のコンフィグレーション」を参照してください。
プロジェクトを、EAR プロジェクトに正しくリンクさせるようにしてください。詳細については、「標準のプロジェクト依存関係のコンフィグレーション」を参照してください。
[プロジェクト|クリーン] コマンドを使用すると、古いビルド アーティファクトを削除できます。これらの古いアーティファクトが、現在のビルドが失敗する原因になっている可能性もあります。
デプロイメントの問題
2 つのサーバを同時に実行すると、それらのサーバが同じポートを使用することになり、サーバ間の衝突と競合が発生します。2 つのサーバを実行する場合は、それぞれのサーバが別々のドメインに定義されていることを確認してください。
「xx というモジュールをデプロイできませんでした。」というエラーでプロジェクトをデプロイできない場合は、すでに同じ名前のプロジェクトがサーバにロードされている可能性があります。このエラーは、チュートリアルを複数回実施した場合や、標準化されたモジュールを複数のアプリケーションで使用している場合に発生します。詳細については、「サーバの管理」を参照してください。
デプロイメントに長い時間がかかる場合は、ワーキング セットを使用してデプロイメント内容を管理できます。現在のワークスペース内のプロジェクトを閉じる ([プロジェクト|プロジェクトを閉じる]) と、そのプロジェクトはデプロイされなくなります。以前にデプロイしたプロジェクトをアンデプロイするのも有効です。