嗨,我有一个JAXB类,如下所示,用作参数 POST方法。它有一个名为isTrue的参数,它是一个 可选参数,参数的默认值应为true 当它没有在REST请求中传递。但是当我想要的时候 调用方法而不是传递set的默认值为 任何人都建议我这个问题可能是什么原因?我 当我没有为isTrue传递任何值时,需要true作为值。 我正在使用使用jersey的REST webservices。
@XmlRootElement(name = "param")
public class Param {
private boolean isTrue;
@XmlElement(required = false, name = "isTrue", defaultValue = "true")
public boolean isTrue() {
return isTrue;
}
public void setTrue(boolean isTrue) {
this.isTrue = isTrue;
}
}
提前致谢
答案 0 :(得分:1)
这实际上是一个已知问题,请参阅https://java.net/projects/jaxb2-commons/pages/Default-Value
基本上,上面的文章描述了一个JAXB插件,如果需要,可以将默认的布尔变量显式初始化为true。由于您没有生成JAXB代码并手动编写它,因此您只需将参数显式初始化为true:
private boolean isTrue = true;
这就是上面引用的插件作为解决方案。