AXB: XML cannot pass the XSD validation
fool 2010-06-28 11:11:31 XSD:
<xs:element name="Premium" type="xs:decimal" default="0.00"/>
JavaCode:
@XmlElement(name = "Premium", required = true, defaultValue = "0.00")
protected BigDecimal premium;
问题:JAXB转出的JavaCode中Object类型的,仍然没有默认值。然后,marshal成XML中,没有Premium的标签。觉得JAXB对defaultValue的处理不符合预期。
但XSD中对象的关系定的是Sequence,所以没有此标签,就无法通过XSD的验证。
如果增加nillable属性,会生成空标签。验证时仍然失败(应该是无法转为BigDecimal类型)。
求教:如何保证对象在Java中不被赋值,也会生成XML标签?或者说我理解错了default的意思?
请各位高人帮忙看下,万分感谢!