Jax RPC Web服务定义,参数最大长度

时间:2013-03-08 15:01:04

标签: java web-services jax-rpc

我需要定义一个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注释中或使用配置定义此约束?

1 个答案:

答案 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>