在我的wsdl文件中,我有以下部分
<s:element maxOccurs="1" minOccurs="0" name="Request">
<s:complexType>
<s:sequence>
<s:any/>
</s:sequence>
</s:complexType>
</s:element>
因此,我为此wsdl生成了axis2存根,并将其创建为元素Request this class
Request_type0 rqType0 = new Request_type0();
只有方法rqType0.setExtraElement(OMElement);
我需要发送这样的请求,
<web:Request>
<test1>
<t>1</t>
</test1>
<test2>
<t>2</t>
</test2>
</web:Request>
请帮帮我!!!
答案 0 :(得分:1)
根据我对XML Schema的理解,你的wsdl片段指出在Request元素下面,只能有一个任何类型的元素。对于任何类型的更多元素,任何元素声明都应该存在maxOccurs =“unbounded” 有关详细说明,请参阅此链接:http://www.w3schools.com/schema/el_any.asp
要创建OMElements,您可以使用以下代码:
OMFactory fac = OMAbstractFactory.getOMFactory();
OMElement test1 = fac.createOMElement("test1", "", "");
OMElement t1 = fac.createOMElement("t", "", "");
t1.setText("1");
test1.addChild(t1);
希望这会有所帮助。 :)