【问题标题】:Soap: How to validate empty elementsSoap:如何验证空元素
【发布时间】:2014-01-30 10:34:07
【问题描述】:

如何验证 Soap-Request 中的元素必须存在且必须包含值? 我有一个接收包含强制值的 Soap 请求的网络服务。这些值不能为空,并且必须存在于 xml 文档中。

如果我使用

@XmlElement(nillable=false, required=true)

为了实现这一点,我可以验证元素必须存在,并且如果元素具有属性,它可能不为空

xsi:nil="true"

但是如果客户端不添加 nil 属性而只是发送一个空元素,例如

<element/>

如何定义这是禁止的?换句话说:我怎样才能定义只有像

这样的元素
<element>value</element> 

允许吗?

谢谢!

【问题讨论】:

    标签: java soap jaxb jax-ws cxf


    【解决方案1】:

    JAXB facets 声称

    生成的描述服务接口的 WSDL 文件将包含 XSD 声明

    使用注释定义。
    如果您使用代码优先的方法,您可以生成 WSDL 并部署您的 WS,而不是将 WSLD 生成留给 JAX-WS 运行时。

    【讨论】:

    • 我使用的是代码优先的方法。 wsdl 是从 ServiceImplementation 生成的。我不想在生成 wsdl 后手动编辑它。所以我需要一种方法来定义一个字段不能通过注释或其他影响生成过程的东西为空。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-07-08
    • 2023-02-02
    • 1970-01-01
    相关资源
    最近更新 更多