Свойство «Любой» уже определено. Используйте jaxb для разрешения этого конфликта при использовании ApacheCXF - PullRequest
1 голос
/ 03 октября 2019

Мне поручено использовать веб-сервис SOAP, разработанный с использованием .NET.

Я занимаюсь вопросами Java, поэтому я пытаюсь преобразовать их WSDL-файл: www.mycompany.com/gamingservice.svc?wsdl в классы Java с использованием ApacheCXF или Axis1.

При использовании ApacheCXF, консоль Eclipse регистрирует ошибку, которая гласит: WSDLToJava Ошибка:

www.mycompany.com/gamingservice.svc?xsd=xsd0 [0,0]: Property "Any" is already defined. Use <jaxb:property> to resolve this conflict.
 www.mycompany.com/gamingservice.svc?xsd=xsd0 [0,0]: The following location is relevant to the above error
 www.mycompany.com/gamingservice.svc?xsd=xsd0 [0,0]: Property "Any" is already defined. Use <jaxb:property> to resolve this conflict.
 www.mycompany.com/gamingservice.svc?xsd=xsd0 [0,0]: The following location is relevant to the above error
 www.mycompany.com/gamingservice.svc?xsd=xsd0 [0,0]: Property "Any" is already defined. Use <jaxb:property> to resolve this conflict.

Глядя на предлагаемое решение, мне нужно использовать jaxb и файл «binding.xml». Мой файл переплета выглядит примерно так:

<jxb:bindings xmlns:xs="http://www.w3.org/2001/XMLSchema"
    xmlns:jxb="http://java.sun.com/xml/ns/jaxb" version="2.1">

    <jxb:bindings schemaLocation=" www.mycompany.com/gamingservice.svc?xsd=xsd0">
        <jxb:bindings


            node="//xs:complexType[@name=RetrieveWeaponsForm]/xs:complexContent/xs:extension/xs:sequence/xs:element/xs:complexType/xs:sequence/xs:any[@namespace='http://tempuri.org/']">
            <jxb:property name="any2" />
        </jxb:bindings>
    </jxb:bindings>

</jxb:bindings>

Может кто-нибудь указать мне правильное направление, как это сделать правильно? Я готов прочитать документы и примеры. Не уверен, что я тоже задаю правильные вопросы. Я чувствую, что веб-служба написана неправильно, поскольку у меня возникли проблемы (как указано выше) при создании классов-заглушек Java, или это нормально для сложных файлов WSDL (где необходимо использовать привязки jaxb)

Странно, чточто Axis1 смог генерировать Java-классы, но некоторые методы не работают должным образом.

...