@XmlAnyElement в одном объекте для принятия сущностей (@XmlRootElement) и java.lang.String - PullRequest
0 голосов
/ 27 октября 2011

Я хочу аннотировать отдельный элемент для маршалла следующим образом:

<root>
    <entity>Any String</entity>
</root>

и

<root>
    <entity>
        <myEntity><name>Entity id
                  </name>
        </myEntity>
    </entity>
</root>

Где entity может быть объектом, аннотированным @XmlRootElement или экземпляромjava.lang.String.Это класс:

@XmlRootElement( name = "root" )
public class Root {

    @XmlAnyElement
    private Object entity;

// setter...
}

javadoc говорит:

This annotation can be used with {@link XmlMixed} like this:
// List of java.lang.String or DOM nodes.
@XmlAnyElement @;XmlMixed
List<Object> others;

Но это для List.Тем не менее я пытался, но то же самое.Я помещаю java.lang.String, который бросает:

com.sun.istack.SAXException2: unable to marshal type "java.lang.String" as an element because it is missing an @XmlRootElement annotation

Что мне не хватает.

Спасибо.

...