有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java在生成WSDL时删除Nillable=“true”

我正在创建一个web服务,并使用Axis2生成一个契约(WSDL),就像POJO web服务一样,它反过来会给我这样的输出

<xs:element minOccurs="0" name="acHolderName" nillable="true" type="xs:string"/>

而必需的是<xs:element minOccurs="0" name="acHolderName" type="xs:string"/>

是否有任何注释可以让我这样做或任何其他更好的实现


共 (1) 个答案

  1. # 1 楼答案

    nil属性记录在here

    从java对象序列化的角度来看,它允许对象属性具有空值,并且仍然是有效的XML文档。这是在XML模式中表示Java对象的默认方式,因为对象属性不必强制在Java中填充

    如果你想对WSDL有更多的控制,你需要考虑使用像JAXW之类的东西。这里的问题是,这种技术的支持在Axis2中还不是很成熟,在我看来,部署起来更复杂

    如果您希望对WSDL拥有绝对控制权(将其用作接口规范),那么最好使用它来生成Java代码,而不是希望您的Java符合其他人的规范