4

suppose i have an object with String property that has an XML string. like:

 class myObject {
    String xml;

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

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

i set an XML String to this property - such as

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

now i want to marshal it using JAXB and i get:

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

where i want to get

<xml>bbb</xml>

how can i do it?

EDIT: the problem is that String xml, stores a well formatted XML as a string. so I want this string to be marshaled without escaping the XML characters.

1 Answer 1

3

If you want to store an XML fragment as a String in your Java model, then you can use the @XmlAnyElement annotation with a DomHandler specified to achieve this.

Examples on Stack Overflow

Sign up to request clarification or add additional context in comments.

2 Comments

never used a DOMHandler. How to do that?
@kosta - The three Stack Overflow answers I linked to each contain a full example of how to implement a DomHandler.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.