当我尝试 POST 请求时得到 400 响应
Getting 400 response when i try for POST request
我正在使用 CXF,我的 bean 如下
@XmlRootElement
@XmlAccessorType(XmlAccessType.FIELD)
public class Test {
@XmlElement(name="id")
protected Long Id;
@XmlElement(name = "students")
protected Set<String> students;
//Getters and setters
}
当我尝试使用以下请求时它有效
@POST
@Path("/test")
public String getCounts(JAXBElement<Test> jaxFilters) {
Test filter = jaxFilter.getValue();
//Some logic
}
但是当我使用以下请求时出现 400 错误
@POST
@Path("/test")
public String getCounts(JAXBElement<List<Test>> jaxFilters) {
List<Test> filter = jaxFilter.getValue();
//Some logic
}
有人可以帮助我如何编写 Post 请求以接受 jaxb bean 集合作为 post 请求中的正文。
提前致谢。
找到解决方案。实际上在 POJO class 中而不是 @XmlRootElement 用 @XMLType 注释并在 Rest 调用中删除了 JAXBElement 的包装。
我正在使用 CXF,我的 bean 如下
@XmlRootElement
@XmlAccessorType(XmlAccessType.FIELD)
public class Test {
@XmlElement(name="id")
protected Long Id;
@XmlElement(name = "students")
protected Set<String> students;
//Getters and setters
}
当我尝试使用以下请求时它有效
@POST
@Path("/test")
public String getCounts(JAXBElement<Test> jaxFilters) {
Test filter = jaxFilter.getValue();
//Some logic
}
但是当我使用以下请求时出现 400 错误
@POST
@Path("/test")
public String getCounts(JAXBElement<List<Test>> jaxFilters) {
List<Test> filter = jaxFilter.getValue();
//Some logic
}
有人可以帮助我如何编写 Post 请求以接受 jaxb bean 集合作为 post 请求中的正文。 提前致谢。
找到解决方案。实际上在 POJO class 中而不是 @XmlRootElement 用 @XMLType 注释并在 Rest 调用中删除了 JAXBElement 的包装。