Spring:RequestBody在指定xml名称空间的数据POST上进行编组

时间:2014-10-20 17:02:50

标签: java xml spring rest

当父类具有命名空间时,我在编组RequestBody时遇到问题。

类别:

@XmlRootElement(name = "blah")
public class Test {
    private String id;

    public String getId() {
        return id;
    }

    public void setId(String id) {
       this.id = id;
    }

}

XML:
<blah>
<id>23333</id>
</blah>

代码:

@RequestMapping( value = "/blah", method = RequestMethod.POST, consumes = { MediaType.TEXT_XML_VALUE }, produces = { MediaType.TEXT_XML_VALUE})
public String getBlah( @RequestBody Test request ) throws Exception
{
    assert(null != request.getId());
    return "blah";
}

这很好用。但是,如果我在类上使用@XmlRootElement(name = "blah", namespace="home"),并在请求中使用<blah xmlns="home">,则Test类构造,但它的ID值永远不会设置。

我很茫然。

1 个答案:

答案 0 :(得分:0)

public void setId 方法之前添加注释@XmlElement