2

我需要定义一个带有最大长度参数的 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 注释或配置中定义此约束?

4

1 回答 1

0

你能再描述一下你想做什么吗?为什么在您收到/发送 id 之后验证长度是不够的?

也许您可以尝试使用您的类型的对象而不是字符串,并对其进行验证?此外,您可以尝试使用绑定文件 - 您可以生成数据类型转换器,并尝试以下操作:

    <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>
于 2013-03-19T12:45:53.480 回答