我需要编写一个休息服务,它接受XML/JSON作为输入(POST方法)和XML/JSON作为输出(基于输入格式).我尝试过以下方法来实现这一点,但没有帮助.Endpoint方法同时接受XML/JSON但在响应时它总是根据@RequestMapping -produces中指定的顺序提供JSON或XML.任何帮助都将非常感谢.
我的端点方法:
@RequestMapping(value = "/getxmljson", method = RequestMethod.POST,produces={"application/json","application/xml"},
consumes={"application/json", "application/xml"})
public @ResponseBody Student processXMLJsonRequest(@RequestBody Student student)
throws Exception {
System.out.println("*************Inside Controller");
return student;
}
Run Code Online (Sandbox Code Playgroud)
POJO课程:Student.java
import java.io.Serializable;
import java.util.ArrayList;
import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlRootElement;
import javax.xml.bind.annotation.XmlType;
import com.fasterxml.jackson.annotation.JsonIgnore;
import com.fasterxml.jackson.annotation.JsonPropertyOrder;
@XmlRootElement(name = "student")
@XmlType(propOrder = {"id", "name", "graduationTime", "courses"})
@JsonPropertyOrder({"id", "name", "graduationTime", "courses"})
public class Student implements Serializable {
private static final long serialVersionUID = 1L;
private int id;
private String name;
private String graduationTime;
private ArrayList<Course> courses = new …Run Code Online (Sandbox Code Playgroud)