JAXB和@XmlType propOrder属性

Luc*_*uke 1 java jaxb java-ee

有这个方法:

public Boolean isCorrect() {
    return correct;
}
Run Code Online (Sandbox Code Playgroud)

我不能写:

@XmlType(propOrder = {"id", "description", "correct"})
Run Code Online (Sandbox Code Playgroud)

因为它似乎依赖于访问者方法的命名get...可以is..改用吗?

dar*_*man 6

可以创建一个类型适配器或更改JAXB检索变量以进行编组的方式,如其他答案中所建议的那样,但这里的问题是您的Boolean返回类型.

JavaBeans规范只允许以is<propertyName>返回类型为原语命名的getter boolean,否则它应遵循通常的约定get<propertyName>.

这个:

public Boolean isCorrect() {
    return correct;
}
Run Code Online (Sandbox Code Playgroud)

应改为:

public boolean isCorrect() {
    return correct;
}
Run Code Online (Sandbox Code Playgroud)

要么:

public Boolean getCorrect() {
    return correct;
}
Run Code Online (Sandbox Code Playgroud)

否则,您可能会遇到使用getter/setter来发现POJO变量的库的其他问题.