当RequestBody具有嵌套类时,postForObject返回null

时间:2020-08-14 19:42:32

标签: xml spring resttemplate

发送带有嵌套元素的requestBody时,无法从RestTemplate()。postForObject()获得响应,它返回null。但是,如果requestBody没有nest元素,则可以正确返回响应。

这就是我使用postForObject的方式:

    HttpEntity<Object> entity = new HttpEntity<>(request, headers);
    String response = new RestTemplate().postForObject(uri, entity, String.class);

如果我的requestBody没有嵌套的类,它将正确返回共振

<RequestBody>
  <Id>abc</Id>
</RequestBody>

但是如果我发送带有嵌套类的requestBody,则postForObject返回null

<RequestBody>
  <Id>abc</Id>
  <Options>
    <IsTrue>true</IsTrue>
    <Name>abc<Name>
  </Options>
</RequestBody>

这是我的POJO:

@JacksonXmlRootElement(localName = "RequestBody")
 public class RequestBody {
   @JacksonXmlProperty(localName = "Id")
   protected String Id;

   @JacksonXmlProperty(localName = "Options")
   protected Options options;

    public class Options {
    @JacksonXmlProperty(localName = "IsTrue")
    protected Boolean isTrue;

    @JacksonXmlProperty(localName = "Name")
    protected String name;
    
    //getters and setters
   }
 //getters and setters
}

非常感谢您的帮助。

0 个答案:

没有答案