2013-02-27 6 views
1

Я пытаюсь создать класс java из Xml-схемы, доступной по указанному url.Я использую привязку netbeans Jaxb для достижения этого.Ошибка Jaxb в Netbeans

я получаю сообщение об ошибке:

[ERROR] Property "Title" is already defined. Use <jaxb:property> to resolve this conflict. 
line 481 of file:/C:/Users/Documents/NetBeansProjects/JavaApplication1/xml-resources/jaxb/newbinding/tims.cisco.com/xsd/T2.xsd 

[ERROR] The following location is relevant to the above error 
line 38 of file:/C:/Users/Documents/NetBeansProjects/JavaApplication1/xml- resources/jaxb/newbinding/tims.cisco.com/xsd/xlink.xsd 

failure in the XJC task. Use the Ant -verbose switch for more details 
    C:\Users\Documents\NetBeansProjects\JavaApplication1\nbproject\xml_binding_build.xml:15: unable to parse the schema. Error messages should have been provided 

Я также проверил несколько постов, которые говорят, чтобы изменить Но я не знаю, как сделать это в netbeans..It было бы полезно, если кто-то может дать мне пример XML-схемы и объясните, как преодолеть эту ошибку в netbeans.

Мой пример схемы будет выглядеть следующим образом:

 <xs:schema xmlns="http://someurl" xmlns:xs="http://www.w3.org/2001/XMLSchema" 
xmlns:xlink="http://www.w3.org/1999/xlink" targetNamespace="http://nsurl" 
elementFormDefault="qualified" attributeFormDefault="unqualified" version="3.7"> 
<xs:include schemaLocation="./something.xsd" /> 
<xs:import namespace="http://www.w3.org/1999/xlink" schemaLocation="./xlink.xsd" /> 
<xs:element name="elename"> 
<xs:annotation> 
    <xs:documentation>Root element</xs:documentation> 
</xs:annotation> 
<xs:complexType> 
<xs:sequence> 
<xs:element ref="element1" minOccurs="0" /> 
<xs:choice maxOccurs="unbounded"> 
<xs:element ref="Element2" maxOccurs="unbounded" /> 
<xs:element ref="element3" maxOccurs="unbounded" /> 

<xs:element ref="element4" /> 
<xs:element ref="element5" /> 
<xs:element ref="element6" maxOccurs="unbounded" /> 
<xs:element ref="Elemnt7" maxOccurs="unbounded" /> 
<xs:element name="Member" type="MemberType" /> 
<xs:element ref="Path" /> 
</xs:choice> 
<xs:element name="Timestamp" type="xs:dateTime" minOccurs="0" /> 
<xs:element name="ExecutionTime" type="xs:double" minOccurs="0" /> 
</xs:sequence> 
<xs:attribute name="msgID" type="xs:NMTOKEN" use="optional" /> 
<xs:attributeGroup ref="xlink:simpleLink" /> 
</xs:complexType> 
</xs:element> 
</xs:schema> 

Я новичок в XML also.can кто-нибудь помочь мне создать классы в NetBeans с помощью JAXB или почтовых указателей вручную создать класс Java для этой схемы ,

Результат должен быть, как нечто данное в ссылке: http://www.java2s.com/Code/Java/JDK-6/GenerateJavaSourceFromXMLSchemaXSD.htm

Я использую внешний связывающий файл следующим образом

<jxb:bindings xmlns:jaxb="http://java.sun.com/xml/ns/jaxb" 
       xmlns:xsd="http://www.w3.org/2001/XMLSchema" 
       jxb:version="2.0"> 
     <jxb:bindings [schemaLocation="T2.xsd" node="/xs:schema"> 
     <jxb:bindings node=".//xs:element[@name='Title']"> 
     <jxb:property name="TitleElement"/> 
     </jxb:bindings> 
     </jxb:bindings> 
     </jxb:bindings> 

Я использовал этот внешний связывающий файл при создании JAXB связываниях в Netbeans но все же он показывает мне ту же ошибку. Было бы полезно, если бы вы могли сказать, что я делаю неправильно Мне нужна срочная помощь, пожалуйста, сделайте свободное время, чтобы решить эту проблему заранее.

ответ

1

Ваши проблемы могут быть решены путем изменения схемы, например, способом, указанным в how to work around duplicate variables.

+0

Я не могу изменить схему, поскольку она уже существует и используется несколькими другими. Поэтому было бы полезно, если бы вы могли узнать, как использовать внешнее связывание в NETBEANS 7.2 – user2083089

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