JAXB - маршальный объект со свойством XML-строки - PullRequest
2 голосов
/ 24 декабря 2009

предположим, у меня есть объект со свойством String, в котором есть строка XML. как:

class myObject {
    String xml;

    @XmlElement(name = "xml", type = String.class)
    public String getXml() {
        return xml;
    }

    public void setXml(String xml) {
        this.xml = xml;
    }
}

Я установил строку XML для этого свойства, например

 myObject.setXml("<xml>bbb</xml>");

Теперь я хочу упорядочить его, используя JAXB, и получаю:

<xml>&lt;xml&gt;bbb&lt;/xml&gt;</xml>

где я хочу получить

<xml>bbb</xml>

как я могу это сделать?

Ответы [ 2 ]

2 голосов
/ 24 декабря 2009

Для этого вы используете @ XmlAnyElement . Однако сначала необходимо преобразовать строку XML в структуру DOM и вставить ее в модель, а не в необработанную строку XML.

0 голосов
/ 04 декабря 2010

Если вы хотите вывести предварительно сконструированный XML (а не только XML, сериализованный в виде Strings, что JAXB правильно дает), вам лучше передать его DOM Element. В противном случае JAXB не сможет заставить генератор XML выводить случайный текст без надлежащего экранирования.

Где вы берете XML? Если это DOM, это должно быть относительно просто.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...