UDDI ユーティリティー・ツールの制限および解決方法
UDDI ユーティリティー・ツールにはいくつかの制限があり、それぞれの問題を解決するためのアクションがあります。
- UDDI ユーティリティー・ツールを実行しようとしますが、次のエラーを検出します。
java.lang.noClassDefFoundError: com/ibm/uddi/promoter/CommandLineProcessor
- 提供されているプロパティー・ファイル、UDDIUtilityTools.properties を編集したこと、および環境に適した値がファイルに含まれていることを確認します。クラスパスで必要とされるファイルの詳細、およびサンプルのプロパティー・ファイルについては、UDDI ユーティリティー・ツールの前提条件、および UDDI ユーティリティー・ツールの構成ファイルに関するトピックを参照してください。
- WebSphere® Application Server とともに提供されている Java コードのレベルを使用していることを確認します。
- PublisherAssertions はサポートされていないため、プロモートされません。
この問題を解決するには、関連のあるビジネスをプロモートした後に、publisherAssertion の関係を再作成します。
- サービス展開で参照されるビジネスは、
参照される tModel エンティティーと同じ方法ではエンティティー定義ファイルに自動的に追加されません。
この問題を解決するには、展開サービスを所有する参照されるビジネスを、エンティティー定義ファイルに追加します。ターゲット・レジストリー内にビジネスがない場合は、エンティティー定義ファイルでサービスがビジネスを所有する前にビジネスを配置してください。
- サービス展開のサイクル検出は、
参照される tModel エンティティーと同じ方法では検出されません。
この問題を解決するには、2 つ以上のサービス展開の間に循環参照がある場合は、展開のうちの 1 つを一時的に除去してサイクルを断ち、インポートを実行し、変更されたエンティティーを更新してターゲット・レジストリーでサイクルを再確立します。
- ソース・レジストリー内で、論理的な意味で削除された tModel エンティティーは、ターゲット・レジストリーにインポートされ、
削除の取り消しとしてプロモートされます。これは、UDDI バージョン 2 仕様では、
tModel エンティティーの削除状態は API 呼び出しとして公開されないためです。
この問題を解決するには、tModel エンティティーをインポートした後で、UDDI ユーティリティー・ツールの削除関数、または、その他の UDDI レジストリー API アクセス・メソッドを使用して削除を実行します。
- hostingRedirectors が参照する bindingTemplates は、
参照される tModel エンティティーと同じ方法ではエンティティー定義ファイルに自動的に追加されません。
この問題を解決するには、参照される bindingTemplate をエンティティー定義ファイルに追加します。
- owningBusiness keyedReference が参照するビジネスは、エンティティー定義ファイルに自動的に追加されません。
この問題を解決するには、ビジネスを参照する tModel をインポートする前に、参照されるビジネスをターゲット・レジストリーにインポートします。
- 組み込み Apache Derby データベースを使用してターゲット・レジストリーを参照する場合、インポート関数およびプロモート関数はサポートされません。
この問題を解決するには、組み込み Apache Derby データベースをネットワーク対応にします。 ネットワーク Apache Derby の構成については、「Derby Server and Administration Guide」の Derby Network Server の管理に関するセクションを参照してください。
組み込み Apache Derby データベースを使用してソース・レジストリーを参照する場合は、エクスポート関数および削除関数がサポートされます。
- コマンド行引数の一部の組み合わせは検証されていないため、回避されます。例えば、同じコマンドで -import と -keysFile path_to_file を指定することはできますが、-keysFile オプションは無視されます。