2017-06-28 2 views
0

@RequestBody Zugang Benutzer Ich habe ein Abfangjäger, der die Anforderung Körper liest, und ich sah Anfrage Http Servlets verlieren params aus POST Körper nach dem Lesen einmal. hier Dass es nur einmal gelesen werden kann Wie alle Anforderungen (Körper) cachefähig gemacht werden, so dass es mehrere Male mit Spring Boot gelesen werden kann?org.springframework.http.converter.HttpMessageNotReadableException: Erforderlich Anfrage Körper fehlt: public org.springframework.http.ResponseEntity


INFO c.h.c.i.IncomingRequestLoggingInterceptor - [CLIENT REQUEST] method='POST' uri='/unregistertoken' query='null' body='{"parma1":"test","param2":"test"}' 
2017-06-28 15:18:36.918 (-07:00) default [http-nio-7443-exec-4] DEBUG o.s.web.cors.DefaultCorsProcessor - Skip CORS processing: request is from same origin 
2017-06-28 15:18:36.919 (-07:00) default [http-nio-7443-exec-4] TRACE o.s.w.m.s.HandlerMethodArgumentResolverComposite - Testing if argument resolver [org.springfra[email protected]7733f9cf] supports [class com.ews.appws.application.repository.paymentRepo.UnRegisterTokenRequest] 
2017-06-28 15:18:36.920 (-07:00) default [http-nio-7443-exec-4] TRACE o.s.w.m.s.HandlerMethodArgumentResolverComposite - Testing if argument resolver [org.springframew[email protected]a2a23a] supports [class com.ews.appws.application.repository.paymentRepo.UnRegisterTokenRequest] 
2017-06-28 15:18:36.920 (-07:00) default [http-nio-7443-exec-4] TRACE o.s.w.m.s.HandlerMethodArgumentResolverComposite - Testing if argument resolver [org.springframework.web.s[email protected]423a8bf5] supports [class com.ews.appws.application.repository.paymentRepo.UnRegisterTokenRequest] 
2017-06-28 15:18:36.920 (-07:00) default [http-nio-7443-exec-4] TRACE o.s.w.m.s.HandlerMethodArgumentResolverComposite - Testing if argument resolver [org.springframework.web.serv[email protected]2627aff1] supports [class com.ews.appws.application.repository.paymentRepo.UnRegisterTokenRequest] 
2017-06-28 15:18:36.920 (-07:00) default [http-nio-7443-exec-4] TRACE o.s.w.m.s.HandlerMethodArgumentResolverComposite - Testing if argument resolver [org.springframework.web.ser[email protected]1c17a17] supports [class com.ews.appws.application.repository.paymentRepo.UnRegisterTokenRequest] 
2017-06-28 15:18:36.920 (-07:00) default [http-nio-7443-exec-4] TRACE o.s.w.m.s.HandlerMethodArgumentResolverComposite - Testing if argument resolver [org.springframework.web.servle[email protected]195780b9] supports [class com.ews.appws.application.repository.paymentRepo.UnRegisterTokenRequest] 
2017-06-28 15:18:36.920 (-07:00) default [http-nio-7443-exec-4] TRACE o.s.w.m.s.HandlerMethodArgumentResolverComposite - Testing if argument resolver [org.springframework.web.ser[email protected]13cc4046] supports [class com.ews.appws.application.repository.paymentRepo.UnRegisterTokenRequest] 
2017-06-28 15:18:36.920 (-07:00) default [http-nio-7443-exec-4] TRACE o.s.w.m.s.HandlerMethodArgumentResolverComposite - Testing if argument resolver [org.springframework.web.s[email protected]3a59edcb] supports [class com.ews.appws.application.repository.paymentRepo.UnRegisterTokenRequest] 
2017-06-28 15:18:36.939 (-07:00) default [http-nio-7443-exec-4] DEBUG o.s.w.s.m.m.a.RequestResponseBodyMethodProcessor - Read [class com.ews.appws.application.repository.paymentRepo.UnRegisterTokenRequest] as "application/json;charset=UTF-8" with [org.springfr[email protected]36d1321] 
2017-06-28 15:18:36.941 (-07:00) default [http-nio-7443-exec-4] DEBUG o.s.w.s.m.m.a.ServletInvocableHandlerMethod - Failed to resolve argument 0 of type 'com.ews.appws.application.repository.paymentRepo.UnRegisterTokenRequest' 
org.springframework.http.converter.HttpMessageNotReadableException: Required request body is missing: public org.springframework.http.ResponseEntity<org.springframework.http.ResponseEntity<java.lang.String>> com.ews.appws.application.controller.CoreWebserviceController.unregistrerToken(com.ews.appws.application.repository.paymentRepo.UnRegisterTokenRequest) throws com.fasterxml.jackson.core.JsonProcessingException 
    at org.springframework.web.servlet.mvc.method.annotation.RequestResponseBodyMethodProcessor.readWithMessageConverters(RequestResponseBodyMethodProcessor.java:154) 

Antwort

0

Sie können nicht Anfrage mehrmals lesen, weil Sie den Körper laden, so dass Sie mit ihm arbeiten können. Eine andere mögliche Lösung besteht darin, diese Anfrage an zwei separate Anfragen zu senden. Der erste ist der Interceptor und es wird einiges machen und nach diesem Zeug sendet es eine Anfrage an die zweite private API.
p.s. Warum brauchen Sie die Anfrage vorher zu lesen?

Verwandte Themen