1

テーブルを模倣する JPA エンティティ クラスがあります。このようなもの:

@XmlType(name="MyClassElementType")
public class MyClass {
    String name;
    String xmlDesc;

    public MyClass() {}

    @XmlElement
    String getName() { return name; }
    void setName(String name) { this.name = name; }

    @XmlElement
    String getXmlDesc() { return xmlDesc; }
    void setXmlDesc(String xmlDesc) { this.xmlDesc = xmlDesc; }
}

Jersey REST get 呼び出しで、このクラスを返そうとしています:

@Get
@Produces("application/xml")
public MyClass get() {

    return myClass;
}

今、私はすでにxml文字列(xmlStr)がそのまま返されることを期待していますが、Jersey/JAXBはそれをエスケープします...

とにかくこのあたり?

4

1 に答える 1

3

xmlDescJAXB は、XML 文字列が含まれていることを知る方法がなく、何でもかまいません。そのため、エスケープする必要があります。

任意の XML を JAXB オブジェクト モデルに格納する場合は、.xml のインスタンスとして格納する必要がありますorg.w3c.dom.Element。JAXB は、必要に応じてそれを XML との間で変換する必要があります。

于 2010-06-03T07:19:29.687 に答える