Использование jaxb/xkc для генерации набора классов, относящихся к моему xsd.Недопустимое значение Enum JAXB - преобразование в null, а не исключение исключения
В частности у меня есть проблема со следующим определенным перечислением (из XSD)
<xs:simpleType name="TEST">
<xs:annotation>
<xs:documentation>
BLAH
</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:string">
<xs:enumeration value="FOO"/>
<xs:enumeration value="BAR"/>
</xs:restriction>
</xs:simpleType>
Теперь, если я прохожу C в качестве значения можно было бы ожидать, что это не из-за следующий сгенерированный код
@XmlType(name = "TEST")
@XmlEnum
public enum TEST{
@XmlEnumValue("FOO")
FOO("FOO"),
@XmlEnumValue("BAR")
BAR("BAR");
private final String value;
TEST(String v) {
value = v;
}
public String value() {
return value;
}
public static TEST fromValue(String v) {
for (TEST test: TEST.values()) {
if (test.value.equals(v)) {
return test;
}
}
throw new IllegalArgumentException(v);
}
}
Теперь, на мой взгляд, это должно вызвать исключение, однако это не так. Вероятно, потому что метод fromValue, кажется, не называется нигде? Почему в этом случае он просто устанавливает значение null, и как я могу заставить его генерировать исключение?
Благодаря