在XmlObject中添加数据

时间:2013-02-27 14:52:09

标签: java xml web-services cdata xmlbeans

我必须编写符合Axis2 1.5.4的Web服务客户端代码。提出问题的代码部分如下:

String my_var = "some value";
MetaDataEntry metaDataEntry = MetaDataEntry.Factory.newInstance();
metaDataEntry.setKey(MetaDataKey.Enum.forInt(key));
metaDataEntry.setValue(my_var);

现在基本上setKey很好,但setValue期望XmlObject值,而根据我得到的示例响应文档,xml结构应该是:< / p>

....
    <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 。有人可以帮我写一个正确的陈述吗?

1 个答案:

答案 0 :(得分:1)

尝试使用XmlString值:

metaDataEntry.setValue(XmlString.Factory.newValue(my_var));