0
我必须编写符合Axis2 1.5.4
的Web服务客户端。的代码给该问题的部分如下:在XmlObject中添加数据
String my_var = "some value";
MetaDataEntry metaDataEntry = MetaDataEntry.Factory.newInstance();
metaDataEntry.setKey(MetaDataKey.Enum.forInt(key));
metaDataEntry.setValue(my_var);
现在基本上setKey
炒菜锅细但setValue
根据我已经得到了样品响应文档而期待一个XmlObject
值时,xml
结构应该是这样的:
....
<MetaDataEntry>
<key>some_key_enum</key>
<value>some _value</value>
</MetaDataEntry>
....
我已经尝试使用:
MetaDataEntry.setValue(XmlObject.Factory.parse("<value>"+my_var+"</value>"));
但将值的格式标记为<value><value>some_value</value></value>
。我也试过:
metaDataEntry.setValue(XmlObject.Factory.parse(my_var));
,但它给人的例外:意外的元素:CDATA。任何人都可以帮我写正确的声明吗?
什么是您的XSD样子? – 2013-02-28 15:33:05
有问题的唯一元素是值元素。 value元素被声明为xs:anytype。现在,当通过wsdl2java生成客户端代码时,为MetaDataEntry元素创建一个接口,并且在那里我有setValue方法并接受XmlObject类型的值。我基本上面临的问题是如何在setValue方法中传递简单的文本值,以便不存在嵌套的值标记。 – 2013-02-28 20:36:24