私は以下のクラスを持っています。マーシャリングの際、「config」タグを省略したいのですが可能ですか?
@XmlRootElement(name = "config")
@XmlAccessorType(XmlAccessType.FIELD)
public static class Config {
@XmlElement(name = "dry-run")
protected Boolean dryRun;
@XmlElementWrapper(name = "filters")
@XmlElement(name = "filter")
protected List<String> filters;
public Boolean isDryRun() {
return dryRun;
}
public void setDryRun(boolean dryRun) {
this.dryRun = dryRun;
}
public List<String> getFilters() {
return filters;
}
}
例:
現在の出力:
<Root>
<config xmlns:wf="nspace">
<dry-run>false</dry-run>
<filters>
<filter>
myFilter
</filter>
</filters>
</config>
</Root>
望ましい出力:
<Root>
<dry-run>false</dry-run>
<filters>
<filter>
myFilter
</filter>
</filters>
</Root>
アップデート:
私が知りたかったのは、「JAXBだけでできるかどうか」だけです。この質問を確認してください(答えではありません)。彼がJAXBのみでどのようにマーシェル化したのかわかりませんでした。ルート要素は書かれていませんでした。それはまさに私が欲しいものです。