2016-09-25 4 views
1

2つのxmlスキーマファイルschema1.xsd schema2.xsdがあります。 schema2.xsdは、私は、次のようJAXBでschema1.xsdを解析しようとschema1.xsd Whanの内側にインポートされます:名前 'common:DateRange'を(n) 'タイプ定義'コンポーネントに解決できません

Schema schema = factory.newSchema(new StreamSource(schemaString)); 

私は次の例外だ:Schema1.xsd

org.xml.sax.SAXParseException; lineNumber: 12; columnNumber: 62; src-resolve: Cannot resolve the name 'common:DateRange' to a(n) 'type definition' component. 

<?xml version="1.0" encoding="UTF-8" ?> 
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" 
    targetNamespace="http://www.example.com" xmlns="http://www.example.com" 
    xmlns:common="http://www.example.com/common"> 

<xs:import namespace="http://www.example.com/common" schemaLocation="schema2.xsd" /> 

    <xs:element name="exType" type="ExampleType" /> 
    <xs:complexType name="ExampleType"> 
     <xs:sequence> 
      <xs:sequence minOccurs="0"> 
       <xs:element name="activeDates" type="common:DateRange" /> 
      </xs:sequence> 
     </xs:sequence> 
    </xs:complexType> 
</xs:schema> 

Schema2.xsd:

<?xml version="1.0" encoding="UTF-8" ?> 
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" 
    xmlns="http://www.example.com/common" 
targetNamespace="http://www.example.com/common"> 

    <xs:complexType name="DateRange"> 
     <xs:sequence> 
      <xs:element name="startDate" type="xs:dateTime"/> 
      <xs:element name="endDate" type="xs:dateTime"/> 
     </xs:sequence> 
    </xs:complexType> 
</xs:schema> 

答えて

0

iはschema2.xsd路

の完全なパスを定義したときに解決される問題
関連する問題