2

外部サービスと統合する Java SOAP クライアントを生成しようとしています。これは外部の会社であるため、WSDL への変更はオプションではありません。

cxf-codegen-plugin Maven プラグインを使用してクライアントを生成しようとすると、次のエラーが発生します。

Two declarations cause a collision in the ObjectFactory class.

この問題は、WSDL の次の宣言に関連しています。

<s:element name="CallSomeMethod">
    <s:complexType>
      <s:sequence>
        <s:element minOccurs="1" maxOccurs="1" name="GetSomeDataResult" type="tns:InterfaceReturnCode" />
        <s:element minOccurs="0" maxOccurs="1" name="getSomeDataResult" type="tns:GetSomeDataResult" />
      </s:sequence>
    </s:complexType>
  </s:element>

問題がどこにあるかは明らかです。私の問題は、WSDL がオンラインの一般的な SOAP クライアントによって正常にインポートされるように見えるため、少なくとも有効である必要があることです。-pまた、オプションなしで Java コードを生成すると、ジェネレーターが別のパッケージを作成することになり、問題が解決されることも読みました。しかし、cxf-codegen-plugin Maven プラグインを使用してこれを行うにはどうすればよいですか?

4

1 に答える 1