当我尝试使用来自@org.springframework.web.bind.annotation.RestController
的'javax.xml.bind.annotation'类时,我不会看到显示name
属性中的值在回应中。我在RestController中使用了@org.springframework.web.bind.annotation.RequestBody
和@org.springframework.web.bind.annotation.ResponseBody
。
例如,课程Foo
的注释为@javax.xml.bind.annotation.XmlRootElement(name="foo")
。
我得到的是<Foo>
而不是<foo>
。后者是我想要实现的目标。
有人可以帮帮我吗?
TIA。
答案 0 :(得分:1)
如果您还没有运气,请尝试使用Jackson XML注释而不是JAXB注释:
import com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlRootElement
@JacksonXmlRootElement(localName="foo")
public class Foo{
...
}
您应该拥有此注释,因为它已打包在您已声明已包含在项目中的jackson-dataformat-xml
依赖项中。
如果您更喜欢使用JAXB注释,则应将spring-mvc
配置为使用org.springframework.http.converter.xml.Jaxb2RootElementHttpMessageConverter
作为XML消息转换器而不是Jackson的消息转换器。