アプリケーションを使用するスプリングブート・レスト・コントローラ/ xmlデータ型を使用して作成されたレストサービスです。ネストされたxmlを送信するとき、それを解析することはできません。それは可能ですか?または私は新しい石鹸のインターフェイスを書くことに先んじる必要があります。xmlペイロード付きspringboot restコントローラ
要求ペイロード
<requestData>
<jvmCount>16</jvmCount>
<maxAttampts>345</maxAttampts>
<locationXpath>abd/adfd/bdc</locationXpath>
<requestPayload>
<userdetails>
//variabe user data with different xml structure
</userdetails>
</requestPayload>
</requestData>
コントローラ
@PostMapping(value = "/soap", consumes=MediaType.APPLICATION_XML_VALUE,
produces=MediaType.APPLICATION_XML_VALUE)
@ResponseBody
public ResponseEntity<?> soapServiceClient(@Valid @RequestBody RequestData requestData, Errors errors) throws InterruptedException{
logger.info(" ==== soapServiceClient - started"+requestData);
}
RequestDataのPOJO
@XmlRootElement
public class RequestData{
private int jvmCount;
private String locationXpath;
private int maxAttampts;
private String requestPayload;
}
除きイオン
2017-08-29 18:54:41.667 WARN 13776 --- [nio-8181-exec-1] .w.s.m.s.DefaultHandlerExceptionResolver : Resolved exception caused by Handler execution: org.springframework.http.converter.HttpMessageNotReadableException: JSON parse error: Can not deserialize instance of java.lang.String out of START_OBJECT token; nested exception is com.fasterxml.jackson.databind.JsonMappingException: Can not deserialize instance of java.lang.String out of START_OBJECT token
リクエストヘッダーはどのように見えますか?リクエスト本体のフォーマットをアプリに示すために、 "application/xml"を指定する "ContentType"が必要です。 – Matt