我們正在創建一個Spring boot REST服務,它可以支持XML和JSON格式。我們正在使用這里描述的相同方法。接受/回傳 XML/JSON 請求和回應 - Spring MVC
除了我們需要在XML回應中擁有一個命名空間外,它基本上是有效的,目前的回應xml沒有任何命名空間。我們嘗試在DTO類中添加以下內容,也嘗試創建一個 "package-info.java"。兩者都不奏效。有誰有建議嗎?
@javax.xml.bind.annotation.XmlSchema(namespace = "http://www.aa.com/bb", elementFormDefault = javax.xml.bind.annotation.XmlNsForm.QUALIFIED, xmlns = { @javax.xml.bind.annotation.XmlNs(prefix="ns1", namespaceURI="http://www.aa.com/bb") })
uj5u.com熱心網友回復:
你是否嘗試過像這樣向XMLElement或XMLRootElement提供命名空間:
@XmlRootElement(name = "student", namespace="ns1")
public class Student 實作 Serializable {
private static final long serialVersionUID = 1L;
我還沒有在一個專案中試過這個方法,但似乎很有意義。 這里有一個類似的問題/答案。https://stackoverflow.com/a/46501216/402341
uj5u.com熱心網友回復:
解決方案是使用 "JacksonXmlRootElement"(而不是 "XmlRootElement")和 "JacksonXmlProperty"(而不是 "XmlElement")注釋。例如:
@JacksonXmlRootElement(namespace="http://www. aa.com/bb", localName="courseName")
public class Course implementments Serializable {
private static final long serialVersionUID = 1L;
private String courseName;
@JacksonXmlProperty(namespace="http://www.aa.com/bb"/span>)
public String getCourseName() { return courseName; }
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/324041.html
標籤:
