【发布时间】:2011-09-14 10:24:27
【问题描述】:
我有一个接收对象的网络服务方法。其中一个属性是“interval”,它是一个整数。
我想将此属性设为必需,但不提供任何默认值 - 我希望要求用户明确设置一个值。
如果我使用int interval - 属性公开为 int 并且如果用户没有明确设置属性,则将发送零(Java 默认为原始 int)。
如果我使用Integer interval - 该属性公开为整数并在 WSDL 中声明为可选,因此用户在发送请求之前看不到它是必需的。
如果我将 Integer interval 与 @XmlElement(required = true) 或 @XmlElement(nillable = false) 一起使用 - 该属性将显示为 int。
该属性可以有任何整数 - 负数、零和正数,因此我不能使用默认值来指示该属性未明确设置。
我可以将BigInteger interval 与@XmlElement(required = true) 一起使用,但我们缺少使用核心类型Integer 的优势。
我想将属性公开为整数,因此如果用户没有设置属性,我将获得 null,同时我希望 WSDL 公开该属性是必需的,这样用户就会知道它是必需的通过查看 WSDL。
【问题讨论】:
标签: web-services cxf