Java 在一段时间内,收到400个restTemplate错误请求
在一段时间内,收到400个restTemplate错误请求 这意味着当在tomcat上部署war时,它可以正常工作,但几个小时后restTemplate抛出异常 所以,当我们再次启动tomcat服务器时,它可以正常工作几个小时 applicationContext.xml中的restTemplate配置为Java 在一段时间内,收到400个restTemplate错误请求,java,spring,resttemplate,Java,Spring,Resttemplate,在一段时间内,收到400个restTemplate错误请求 这意味着当在tomcat上部署war时,它可以正常工作,但几个小时后restTemplate抛出异常 所以,当我们再次启动tomcat服务器时,它可以正常工作几个小时 applicationContext.xml中的restTemplate配置为 <bean id="restTemplate" class="org.springframework.web.client.RestTemplate"> <prope
<bean id="restTemplate" class="org.springframework.web.client.RestTemplate">
<property name="messageConverters">
<list>
<bean class="org.springframework.http.converter.json.MappingJacksonHttpMessageConverter">
<property name="supportedMediaTypes" value="application/json">
</property>
</bean>
</list>
</property>
</bean>
在我的服务中,像自动连线一样
@Autowired
private RestTemplate restTemplate;
and service code like
HttpEntity<Queue> queueMap = new HttpEntity<Queue>(queueItem);
try {
queueList = restTemplate.postForObject(HMS_QUEUE_URL + "/fetchqueuebyrange", queueMap, QueueList.class);
} catch (Exception e) {
StringWriter sw = new StringWriter();
PrintWriter pw = new PrintWriter(sw);
e.printStackTrace(pw);
log.debug("PatQueueService-fetchApptQueueItemByApptDate :: " + pw.toString());
}
@Autowired
私有RestTemplate RestTemplate;
和服务代码类似
HttpEntity queueMap=新的HttpEntity(queueItem);
试一试{
queueList=restTemplate.postForObject(HMS_QUEUE_URL+“/fetchqueuebyrange”,queueMap,queueList.class);
}捕获(例外e){
StringWriter sw=新的StringWriter();
PrintWriter pw=新的PrintWriter(sw);
e、 printStackTrace(pw);
log.debug(“PatQueueService FetchAppTqueItemByApptDate::”+pw.toString());
}
这里我通过restTemplate调用mongo restService
例外是
org.springframework.web.client.HttpClientErrorException:400错误
请求
org.springframework.web.client.DefaultResponseErrorHandler.handleError(DefaultResponseErrorHandler.java:90)
在
org.springframework.web.client.restemplate.handleResponseError(restemplate.java:494)
在
org.springframework.web.client.restemplate.doExecute(restemplate.java:451)
在
org.springframework.web.client.restemplate.execute(restemplate.java:409)
在
org.springframework.web.client.restemplate.postForObject(restemplate.java:287)
在
com.genex.hms.patqueue.service.patqueueserviceinpl.fetchQueueByRange(patqueueserviceinpl.java:954)
at sun.reflect.GeneratedMethodAccessor472.invoke(未知源)at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
位于java.lang.reflect.Method.invoke(Method.java:606)
org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:319)
在
org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:196)
位于com.sun.proxy.$Proxy80.fetchQueueByRange(未知源)
com.genex.hms.patqueue.controller.QueueController.fetchAppointmentQueue(QueueController.java:282)
at sun.reflect.GeneratedMethodAccessor471.invoke(未知源)at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
位于java.lang.reflect.Method.invoke(Method.java:606)
org.springframework.web.method.support.InvocableHandlerMethod.invoke(InvocableHandlerMethod.java:213)
在
org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:126)
在
org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:96)
在
org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:617)
在
org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:578)
在
org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:80)
在
org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:923)
在
org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:852)
在
org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:882)
在
org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:789)
位于javax.servlet.http.HttpServlet.service(HttpServlet.java:646)
http.HttpServlet.service(HttpServlet.java:727)位于
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:303)
在
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
在
org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
在
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
在
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
在
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:220)
在
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:122)
在
org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:501)
在
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:170)
在
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:98)
在
org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:950)
在
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:116)
在
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:408)
在
org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1040)
在
org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:607)
在
org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:315)
在
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
在
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
运行(Thread.java:745)
在代码中看起来不成问题,因为它适用于初始调用 您可以将调试添加到放置在queueMap中的记录元素(名称和值)中。并注意它给出错误的记录 使用chrome rest插件等工具手动触发此记录,并查看输出 这可能是mongo restService的问题(可能是)不接受发布的数据并抛出错误