0
我正在使用jaxb創建rss供稿,試圖按照google的rss 2.0規範生成產品供稿。僅在對象名稱jaxb中省略命名空間前綴
我已經創建了我的根對象,並設置
@XmlElement(name = "id", namespace="http://base.google.com/ns/1.0")
,並創建了自己的前綴映射器生成的前綴(我知道我可以使用包的信息,但不希望被命名空間分配給我的所有孩子元素)
marshaller.setProperty("com.sun.xml.bind.namespacePrefixMapper", new NamespacePrefixMapper() {
@Override
public String getPreferredPrefix(String uri, String arg1, boolean arg2) {
return uri.equals("http://base.google.com/ns/1.0") ? "g" : "";
}
});
然而,我的所得根元素的XML是這樣的:
<g:rss xmlns:g="http://base.google.com/ns/1.0" version="2.0">
當我期望的結果是這樣的:
<rss version="2.0" xmlns:g="http://base.google.com/ns/1.0" >
如何選擇性地省略我的名字前綴?元素名稱RSS是不是谷歌的命名空間的一部分,據我可以告訴
嗨,你能提供你的根對象的完整代碼?尤其是@XmlRootElement部分。謝謝 –