以前の 2 つの投稿 (投稿 1、投稿 2 ) への参照。今、私は別の奇妙な問題で立ち往生しています(私はJAXBの初心者です)。book.xsd (ルート要素として bookList と book を含む) を使用して Java クラスを生成しました。すべてが正常に機能しています。現在、レビュー用に完全に個別の XSD を作成しています。
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
elementFormDefault="qualified" attributeFormDefault="unqualified">
<xs:element name="reviews">
<xs:complexType>
<xs:sequence>
<xs:element name="review" type="reviewType" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:attribute name="self" type="xs:anyURI" />
</xs:complexType>
</xs:element>
<xs:complexType name="reviewType">
<xs:sequence>
<xs:element name="name" type="xs:string" minOccurs="1" maxOccurs="1" />
<xs:element name="comments" type="xs:string" minOccurs="1" maxOccurs="1" />
<xs:element name="rating" type="xs:integer" minOccurs="1" maxOccurs="1" />
</xs:sequence>
<xs:attribute name="self" type="xs:anyURI" />
</xs:complexType>
JAXBを使用してJavaクラスを生成すると、次のようなエラーが発生し始めますThe element declaration with name 'reviews' and namespace '' cannot be resolved
。
何か案が ?
UPDATED
複数のxsdで使用されている基本情報を持つcommon.xsdを使用していることがわかった。などの情報authorType
。現在、common.xsd は自分の books.xsd と reviews.xsd でも使用されており、おそらくそれがこの名前空間エラーが発生する理由です。ここでこのエラーを回避するにはどうすればよいですか?
スキーマはすでにここにあります。