0

を使用して WSDL をインポートしようとすると、奇妙な解析エラーが発生しwsimportます。

エラー:-

org.xml.sax.SAXParseException: 無効な WSDL ファイル: 予期された
{http://schemas.xmlsoap.org/wsdl/}definitions は 1 行目に定義が見つかりました)

WSDL を確認しましたが、その最初の要素がそうではないことにも驚きました。

<wsdl:definitions ...>

むしろ:

<definitions   xmlns:soap="https://schemas.xmlsoap.org/wsdl/soap/" ...>

これが問題でしょうか?Web サービスは外部にあるため、WSDL を制御することはできません。私が知っていることの 1 つは、それが JAX-WS 2.1.5 によって生成されていることです。私の wsimport ツールが理解できないのはカスタマイズされた WSDL ですか? はいの場合、この問題を解決する方法を教えてください。ありがとう。

4

2 に答える 2

0

wsdlの最初の行に次の部分がありますか?

<definitions   ...   xmlns="http://schemas.xmlsoap.org/wsdl/">

そうでない場合は、それを追加すれば問題ないはずです。理由は、wsdlの名前空間宣言が欠落しているためです。

于 2012-05-11T11:14:20.977 に答える
0

この会話に基づいて、JAX-WS の 2.1.5 バージョンが誤った WSDL を生成し、新しいバージョンの wsimport を使用している可能性があります。

于 2012-05-10T15:48:23.190 に答える