Объекты JAXB, инициализированные со значениями по умолчанию
There is little problem with JAXB.
Given:
Java 1.5; jaxb -jars from jaxws-2_0. .xsd scheme and generated JAXB classes. Every simple element in .xsd has default value. And as result class members has annotations like "@XmlElement(name = "cl_fname", required = true, defaultValue = "[______]")"Required
Получить объект Java (корневой элемент), который полностью представляет xml и каждый элемент, инициализированный по умолчанию.
Когда я пытаюсь маршалировать xml без явной установки значений, значения по умолчанию не имеют смысла ... есть ли способ маршалировать xml, заполненный значениями по умолчанию, без настройки сгенерированных классов?
example of .xsd:
<xs:element name="document">
<xs:complexType>
<xs:sequence>
<xs:element ref="d_int"/>
<xs:element ref="d_double"/>
<xs:element ref="d_string"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="d_int" type="xs:int" default="-1"/>
<xs:element name="d_double" type="xs:double" default="-1.0"/>
<xs:element name="d_string" type="xs:string" default="false"/>
and java class:
public class Document {
@XmlElement(name = "d_int", defaultValue = "-1")
protected int dInt;
@XmlElement(name = "d_double", defaultValue = "-1.0")
protected double dDouble;
@XmlElement(name = "d_string", required = true, defaultValue = "Default")
protected String dString;
...
}