1

指定されたURLで利用可能なXmlスキーマからJavaクラスを作成しようとしています。これを実現するためにnetbeansJaxbバインディングを使用しています。

エラーが発生しています:

    [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でそれを行う方法がわかりません。誰かが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も初めてです。誰かが、jaxbを使用してnetbeansにクラスを作成するのを手伝ったり、このスキーマの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>

Netbeansでjaxbバインディングを作成するときにこの外部バインディングファイルを使用しましたが、それでも同じエラーが表示されます。何が間違っているのかを教えていただければ、すぐにサポートが必要です。これを解決するために時間を割いてください。よろしくお願いします。 。

4

1 に答える 1

1

問題は、スキーマを変更することで解決できます。たとえば、変数の重複を回避する方法に示されている方法で解決できます。

于 2013-02-27T10:28:53.543 に答える