2

名前空間を使用して xml を非整列化して、そこからオブジェクトを作成しようとしています。要素が予期されていないという例外が発生しています。これが私が持っているものです。

@XmlRootElement(name="package")
@XmlAccessorType(XmlAccessType.NONE)
public class DenPackage { 
.....

}

xml:

<?xml version="1.0" encoding="ASCII"?>
<pkg:package xmlns:pkg="http://www.leap.com/rest/package">
</pkg:package>

例外:

javax.xml.bind.UnmarshalException: unexpected element (uri:"http://www.leap.com/rest/package", local:"package"). Expected elements are <{}package>

@XmlRootElement(name="package")変化するものであるべきですか?または、私よりも多くのことを知っている場合は、どんな助けでも大歓迎です. ありがとう

4

3 に答える 3

1

pkg namespaceクラスで次のように定義する必要があります。

@XmlRootElement(name="package" namespace = "http://www.leap.com/rest/package")
@XmlAccessorType(XmlAccessType.NONE)
public class DenPackage { 
.....

}

xml に子要素があり (サンプルには表示されていません)、それらが名前空間にも属している場合は、それらの名前空間を定義するだけでなく、 バ​​インドされたクラスのフィールドによって名前空間が「継承」されないことに注意してください。

于 2013-08-01T19:58:12.320 に答える