我正在使用正在使用JAXB的现有应用程序。
目前,在XML文档上会发生一个unmarshell进程
例如,这是xml文档
String str = "<BACS xmlns=\"http://www.bacs.org/BACS\"><Bahut number=\"1234\"><Order Quantity=\"1\" ><Bag value=\"1\" /></Order></Bahut><BACS>";
public class One{
@XmlAttribute(name = "numberDT")
protected String id;
@XmlAttribute(name = "valueDT")
protected String src;
我的问题是,在我们的应用程序中,XML属性名称和java注释中的名称不匹配?但代码仍在运作。
如果我遗失了什么,请告诉我?
答案 0 :(得分:0)
是的,JAXB (JSR-222)元数据需要与XML匹配才能使解组成功。在您的使用案例中,您可能会看到几种可能的行为。
XmlAdapter
进行映射。 XmlAdapter
是一种可以转换域对象的机制,转换的结果是映射到XML的内容。这意味着不会使用域对象上的注释。检查字段,属性,类型或包级别上的@XmlJavaTypeAdapter
注释:http://blog.bdoughan.com/search/label/XmlAdapter