我想在Mule 3.4社区中公开一个简单的SOAP Web服务。 服务的某些字段需要是强制/必需的。怎么办?
以下是Web服务方法:
public String methodname(String field1, String field2, String field3);
以下是生成的wsdl:
<xsd:element minOccurs="0" name="field1" nillable="true" type="xsd:string"/>
<xsd:element minOccurs="0" name="field2" nillable="true" type="xsd:string"/>
<xsd:element minOccurs="0" name="field3" nillable="true" type="xsd:string"/>
如何创建这些字段minOccurs =“1”和nillable =“false”
请注意@XmlElement(required = true)不适用于我的Java版本1.6
答案 0 :(得分:1)
minOccurs="1"
使元素强制,minOccurs="0"
使可选
因此,请进行以下更改以强制执行: -
<xsd:element minOccurs="1" name="field1" nillable="true" type="xsd:string"/>
<xsd:element minOccurs="1" name="field2" nillable="true" type="xsd:string"/>
<xsd:element minOccurs="1" name="field3" nillable="true" type="xsd:string"/>
和
How to tell if XML element is marked as required in the XSD file
和nillable
指定是否可以为元素分配显式空值
参考: - http://www.w3schools.com/schema/el_element.asp
因此,您需要在WSDL中进行更改,以便生成的Java类实现属性的属性
答案 1 :(得分:1)
我担心你不能通过一项简单的服务来做到这一点(因为它的定义很简单,它可能适用于你指出的后一版本的java)。
您应该在没有自动生成的wdsl的情况下切换到全功能的jaxws服务。