2015-04-18 4 views
1

Я пытаюсь создать JAXB верхнего уровня (используя файл привязки) из локального файла wsdl.Не удается создать JAXB верхнего уровня из файла wsdl с помощью компилятора xjc и файла привязки

Связывание файлов (binding.xjb) содержание приведены здесь:

<jaxb:bindings 
    xmlns:xsd="http://www.w3.org/2001/XMLSchema" 
    xmlns:jaxb="http://java.sun.com/xml/ns/jaxb" 
    version="2.1"> 
<jaxb:globalBindings localScoping="toplevel"/> 

Команда Я использую следующий:

xjc -wsdl getShops.wsdl -b binding.xjb 

и файл WSDL задается here

Он успешно создает классы jaxb, но они являются вложенными классами в одном файле.

Является ли это неподдерживаемой функцией -wsdl-флагом компилятора xjc или я что-то делаю?

ответ

1

Извлечь схему XSD из wsdl.

<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" targetNamespace="http://new.webservice.namespace" elementFormDefault="qualified"> 
    <xs:element name="getShopsRequest"> 
     <xs:complexType> 
      <xs:attribute name="ui" type="xs:string"/> 
     </xs:complexType> 
    </xs:element> 
    <xs:element name="shoplist"> 
     <xs:complexType> 
      <xs:sequence> 
       <xs:element name="shop" maxOccurs="unbounded" > 
        <xs:complexType> 
         <xs:sequence> 
          <xs:element name="id" type="xs:integer"/> 
          <xs:element name="name" type="xs:string" /> 
          <xs:element name="companyname" type="xs:string"/> 
         </xs:sequence> 
        </xs:complexType> 
       </xs:element> 

      </xs:sequence> 
     </xs:complexType> 
    </xs:element> 
</xs:schema> 

Выполните команду:

xjc -wsdl getShops.xsd -b binding.xjb 

Консольный вывод:

parsing a schema... 
compiling a schema... 
namespace/webservice/_new/GetShopsRequest.java 
namespace/webservice/_new/ObjectFactory.java 
namespace/webservice/_new/Shop.java 
namespace/webservice/_new/Shoplist.java 
namespace/webservice/_new/package-info.java 
+0

работает как шарм! Благодарю. Заметьте, больше не нужно -wsdl. – theo

+0

Извините, забыл удалить. –

 Смежные вопросы

  • Нет связанных вопросов^_^