Tengo un método de sericice web que recibe un objeto. Uno de los atributos es "intervalo" que es un número entero.CXF - ¿Cómo declarar un atributo requerido y no primitivo?
Me gustaría hacer este atributo requerido pero sin proporcionar ningún valor predeterminado: deseo que el usuario tenga que establecer un valor explícitamente.
Si uso int interval
- el atributo se expone como int y si el usuario no establece explícitamente el atributo, se enviará un cero (valor predeterminado de Java para primitive int).
Si uso Integer interval
- el atributo se expone como entero y se declara opcional en el WSDL para que el usuario no pueda verlo antes de enviar la solicitud.
Si uso Integer interval
con o @XmlElement(nillable = false)
- el atributo está expuesto como int.
El atributo puede tener cualquier número entero negativo, cero y positivo, por lo que no puedo usar un valor predeterminado para indicar que el atributo no se estableció explícitamente.
Puedo usar BigInteger interval
con @XmlElement(required = true)
pero nos faltan las ventajas de usar el tipo de núcleo Entero.
Me gustaría exponer el atributo como Entero así que obtendré nulo si el usuario no configuró el atributo y al mismo tiempo me gustaría que el WSDL exponga que el atributo es necesario para que los usuarios sepan que es necesario simplemente mirando el WSDL.