2016-11-06 5 views
1

ich mein Controller die folgende XML möchte zurückkehren:Spring MVC - Jackson XML-Format

<?xml version="1.0"?> 
<ResponseDTO result=”OK” timestamp=”20110322T152403Z"> 
<myId>9999.99</myId> 
<currency>USD</currency> 
</ResponseDTO > 

Im Grunde meine DTO sieht wie folgt aus:

public class ResponseDTO { 

    private String myId; 
    private String currency; 

} 

Und mein Controller sieht wie folgt aus:

Ich verwende die folgende Abhängigkeit, Gradle Snippet unten angegeben:

compile group: 'com.fasterxml.jackson.dataformat', name: 'jackson-dataformat-xml', version:'2.8.2' 

Wie ist es möglich, mit jackson xml parser die Eigenschaften 'result = OK' und 'timestamp = 20110322T152403Z' zu erreichen?

Antwort

1

Verwenden JacksonXmlProperty Attribute des Jackson Wurzelelement zu setzen, wie unten:

@JacksonXmlRootElement 
public class ResponseDTO { 

    @JacksonXmlProperty(isAttribute=true) 
    private String response; 
    @JacksonXmlProperty(localName="myId") 
    private String myId; 
    @JacksonXmlProperty(localName="currency") 
    private String currency; 
} 

Result: 

<ResponseDTO response="test"> 
<myId>test</myId> 
<currency>test</currency> 
</ResponseDTO> 
Verwandte Themen