JAXB @XmlElement(name = ..)具有不同名称的相同xmlElement

JAXB @XmlElement(name = ..)具有不同名称的相同xmlElement

问题描述:

是否有可能拥有名称不是常量名的相同@XmlElement? 例如,我想这一点:JAXB @XmlElement(name = ..)具有不同名称的相同xmlElement

MyObject myObj = new MyObject("myName"); 
@XmlElement(name=myObj.getName()) 
public String elementItem; 

此代码是不正确的,但我可以做这样的事情以某种方式?

** P.S我必须这样做,因为我有一个Rest属性为“name”的Web服务。用户可以通过这个休息发送一个不同的名称ws,我必须创建带有元素的XML,其中的名称就是插入的名称。

一些XML看起来像:

<a> 
    <b> 
    <c> 
<a> 

和一些看起来像:

<x> 
    <y> 
    <z> 
<x> 

这A,B,C或X,Y,Z在REST WS的输入参数给出。

+0

您是否认为改变xml元素是一个好设计?为什么不创建一个像' dynamicName>'这样的标签并询问您的xml使用者使用标签? – VinayVeluri 2014-09-02 12:21:45

+0

我有要求制作通用的XML,这取决于用户的输入。我需要将这个XML请求发送给IPTV平台,但是如果IPTV平台改变了它的服务,并且改变了它的XML请求的外观,我的程序必须是通用的,并且支持这个新的XML元素。我的输入将是元素的名称和元素的值,并且我将生成一个新的XML。 如果IPTV平台将更改其服务和XML请求,它必须伴随更改,而无需重新部署应用程序。 它必须是通用的! :/ – 2014-09-03 14:00:21

可以使用@XmlElementDecl

,你可以参考这里该怎么办呢

http://java.dzone.com/articles/jaxb-and-root-elements

祝你好运!