我需要定义一个Jax-RPC Web服务,其参数的最大长度为。
@SOAPBinding(style = Style.RPC)
public interface MessageService {
public String sendMessage(@WebParam(partName = "id") String id,
@WebParam(partName = "name") String name,
@WebParam(partName = "mesg") String mesg);
其中 id 必须为8个字符。 如何在Jax-RPC注释中或使用配置定义此约束?
答案 0 :(得分:0)
你能描述一下你想做什么吗?为什么在收到/发送ID之前验证长度是不够的?
可能您可以尝试使用您的类型的对象而不是String,并对其运行验证? 此外,您可以尝试使用绑定文件 - 您可以生成数据类型转换器,并尝试这样的事情:
<jaxb:bindings version="2.1"
xmlns:jaxb="http://java.sun.com/xml/ns/jaxb"
xmlns:xjc="http://java.sun.com/xml/ns/jaxb/xjc"
xmlns:xs="http://www.w3.org/2001/XMLSchema">
<jaxb:globalBindings generateElementProperty="false" >
<jaxb:javaType
name="java.util.Calendar"
xmlType="xs:dateTime"
parseMethod="javax.xml.bind.DatatypeConverter.parseDateTime"
printMethod="javax.xml.bind.DatatypeConverter.printDateTime" />
</jaxb:globalBindings>
</jaxb:bindings>