先创建一个任务线程--》放入tomcat线程池--》发起tomcat http协议--》tomcat认证--》进入错误页面过滤器--》进入起始过滤器--》进入上下文调用链--》走完调用链--》包装http协议请求
--》请求分发--》mvc (url和方法)Mapping--》反射机制调用方法--》进入切面--》切面执行完成之后继续执行反射方法调用
[2018-08-29 10:29:54,575] - [http-apr-8081-exec-5 ] |-ERROR HttpClientUtil.java[49] - [IP:localhost,PORT:8081,URI:/bank-api/openapi/notify,TYPE:POST,APPLYNO:] HTTP POST 异常 :
java.net.SocketTimeoutException: Read timed out
at java.net.SocketInputStream.socketRead0(Native Method)
at java.net.SocketInputStream.socketRead(SocketInputStream.java:116)
at java.net.SocketInputStream.read(SocketInputStream.java:171)
at java.net.SocketInputStream.read(SocketInputStream.java:141)
at java.io.BufferedInputStream.fill(BufferedInputStream.java:246)
at java.io.BufferedInputStream.read1(BufferedInputStream.java:286)
at java.io.BufferedInputStream.read(BufferedInputStream.java:345)
at sun.net.www.http.HttpClient.parseHTTPHeader(HttpClient.java:735)
at sun.net.www.http.HttpClient.parseHTTP(HttpClient.java:678)
at sun.net.www.protocol.http.HttpURLConnection.getInputStream0(HttpURLConnection.java:1569)
at sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1474)
at com.houbank.bank.util.base.HttpClientUtil.httpJsonPost(HttpClientUtil.java:46)
at com.houbank.bank.facade.facades.AbstractFacadeExchange.callBack(AbstractFacadeExchange.java:34)
at com.houbank.bank.facade.facades.AbstractFacadeExchange.receive(AbstractFacadeExchange.java:64)
at com.houbank.bank.facade.controller.callback.suisj.SuisjCallBackController.notify(SuisjCallBackController.java:154) 切面执行完成之后继续执行反射方法调用
at com.houbank.bank.facade.controller.callback.suisj.SuisjCallBackController.notifywithholdresult(SuisjCallBackController.java:126)
at com.houbank.bank.facade.controller.callback.suisj.SuisjCallBackController$$FastClassBySpringCGLIB$$4f3c35e5.invoke(<generated>)
at org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:204)
at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.invokeJoinpoint(CglibAopProxy.java:721)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:157)
at org.springframework.aop.aspectj.MethodInvocationProceedingJoinPoint.proceed(MethodInvocationProceedingJoinPoint.java:85)
at com.houbank.bank.facade.util.log.AbstractLogAspect.logMethodArgsReturn(AbstractLogAspect.java:65)
at com.houbank.bank.facade.util.log.ControllerLogAspect.notifyCreditAccountStatusFail(ControllerLogAspect.java:52) 进入切面
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 反射机制调用方法
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.springframework.aop.aspectj.AbstractAspectJAdvice.invokeAdviceMethodWithGivenArgs(AbstractAspectJAdvice.java:629)
at org.springframework.aop.aspectj.AbstractAspectJAdvice.invokeAdviceMethod(AbstractAspectJAdvice.java:618)
at org.springframework.aop.aspectj.AspectJAroundAdvice.invoke(AspectJAroundAdvice.java:70)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:179)
at org.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:92)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:179)
at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:656)
at com.houbank.bank.facade.controller.callback.suisj.SuisjCallBackController$$EnhancerBySpringCGLIB$$b6d2b71d.notifywithholdresult(<generated>) mapping反射成代理类
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:205)
at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:133)
at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:116)
at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:827) mvc (url和方法)Mapping
at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:738)
at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:85)
at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:963)
at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:897) 请求分发
at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:970)
at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:872)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:650)
at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:846)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:731) 包装http协议请求
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:303) 走完调用链
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:99)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
at org.springframework.web.filter.HttpPutFormContentFilter.doFilterInternal(HttpPutFormContentFilter.java:105)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
at org.springframework.web.filter.HiddenHttpMethodFilter.doFilterInternal(HiddenHttpMethodFilter.java:81)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:197)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241) 进入上下文调用链
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
at org.springframework.boot.web.support.ErrorPageFilter.doFilter(ErrorPageFilter.java:115)
at org.springframework.boot.web.support.ErrorPageFilter.access$000(ErrorPageFilter.java:59)
at org.springframework.boot.web.support.ErrorPageFilter$1.doFilterInternal(ErrorPageFilter.java:90)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107) 进入起始过滤器
at org.springframework.boot.web.support.ErrorPageFilter.doFilter(ErrorPageFilter.java:108) 进入错误页面过滤器
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:219)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:110)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:506) tomcat认证
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:169)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103)
at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:962)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:116)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:445)
at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1115)
at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:637) 发起tomcat http协议
at org.apache.tomcat.util.net.AprEndpoint$SocketProcessor.doRun(AprEndpoint.java:2549)
at org.apache.tomcat.util.net.AprEndpoint$SocketProcessor.run(AprEndpoint.java:2538)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) 放入线程池
at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) 先创建一个任务线程
at java.lang.Thread.run(Thread.java:748)
相关推荐
OSIP2协议栈是一个使用C语言编写的开源SIP协议栈,它在开源协议栈中属于较为罕见的使用C语言实现的项目。它的核心功能在于对SIP协议数据的解析以及事务管理,但是不包括数据包的收发、RTP流的处理等其他功能,需要...
例如,可以使用gsoap库,这是一个广泛使用的C和C++的SOAP绑定工具。gsoap生成C++类和函数,这些类和函数可以直接在C++代码中调用来访问WebService。开发者需要先从WSDL文件生成gsoap的输入文件,然后使用gsoap工具...
网络中,网站的IP地址很难让人去记住,一般都是使用域名去访问,因此就有了DNS服务器,根据IP...发送这个过程并不是解析器来执行的,而是委托给了操作系统内部的协议栈去做处理,协议栈通过网卡将消息发送给DNS服务器。
DWR在服务器端运行一个Servlet,这个Servlet负责接收JavaScript的请求,然后转发到指定的Java类方法。在客户端,DWR提供了一组JavaScript API,使得开发者可以方便地发起异步请求,并处理服务器返回的数据。这极大地...
技术栈: HTTP请求库: 使用requests库发送HTTP请求。 解析库: 使用BeautifulSoup解析HTML。 数据存储: 将数据存储为JSON格式。 环境依赖构建: 使用Anaconda创建Python虚拟环境。 对象: MovieSpider类: 包含爬虫的...
在IT行业中,跨语言通信是常见的需求,尤其是在Java和C++这样...总之,Java调用C++ Web服务是一个涉及到多种技术栈的过程,包括WSDL解析、SOAP通信、跨语言数据映射等。理解这些概念并熟练应用是实现跨语言通信的关键。
Java调用jpcap库获取本机所有GET请求是一个实用的技术点,特别是在网络监控、数据分析或者测试场景下。jpcap是一个开源的Java库,它提供了对网络接口数据包捕获和分析的能力,类似于C语言的libpcap库。下面我们将...
本实例涉及的是一个基于C#语言的接口开发,提供了从请求到响应的完整流程。以下将详细阐述这个"完整的接口调用实例"中包含的主要知识点: 1. **接口设计**: 接口设计是软件开发中的重要组成部分,它定义了服务...
Linux TCP/IP协议栈是Linux操作系统的核心组成部分,负责网络通信,实现了Internet协议族的主要协议,包括TCP(传输控制协议)和IP...阅读《Linux TCP/IP协议栈源码解析》文档,将有助于全面了解这一复杂的系统组件。
2. **打开连接**:使用`xmlhttp.Open("POST", URL, false)`方法打开一个到指定URL的POST请求连接。参数`false`表示同步请求,即执行完此方法后会等待服务器响应。 3. **设置请求头**: - `xmlhttp....
7. **调试功能**:设置断点,查看调用栈,分析请求和响应的详细过程。 8. **性能测试**:测量接口的响应时间,评估服务性能。 9. **安全检查**:检查接口的安全性,如防止SQL注入、XSS攻击等。 10. **文档生成**:...
URL收集: 爬虫从一个或多个初始URL开始,递归或迭代地发现新的URL,构建一个URL队列。这些URL可以通过链接分析、站点地图、搜索引擎等方式获取。 请求网页: 爬虫使用HTTP或其他协议向目标URL发起请求,获取网页的...
3. HttpClient:Apache HttpClient是一个通用的HTTP客户端库,虽然不是专门设计用于调用Web服务,但可以用于构建自定义的SOAP或REST请求。使用HttpClient,你可以直接构造HTTP请求,并发送XML数据作为请求体,然后...
在该实验中,选用的工具是Libnids,这是一个基于libpcap和libnet的网络入侵检测开发包,其功能是模仿Linux内核中的TCP/IP协议栈,特别之处在于它支持TCP数据流的重组,这对于解析分段的TCP数据包至关重要。...
Volley是Google推出的一款高效的Android网络请求库,它在2013年的I/O大会上首次亮相,设计目标是提供一个轻量级、快速且易于使用的网络请求框架。Volley特别适合处理频繁的短请求,例如在新闻应用或者社交应用中加载...
- **解析:** 地址转换的核心在于将逻辑地址映射到物理地址,这个过程主要依赖于页表中的页表项来完成。 ### 3. 文件系统 **251.** 在文件系统中,文件的顺序访问指的是: - **答案:** A(按顺序读写) - **解析...
6. **用户态与内核态转换**:系统调用涉及到用户态到内核态的转换,这个过程涉及到寄存器的保存、栈的切换以及权限级别的改变,以确保安全和效率。 7. **系统调用接口**:在C语言环境中,系统调用通常是通过标准的...
本文将深入探讨如何使用VC++通过gSOAP库来调用WebService接口,结合提供的资源,包括"使用方法.doc"、"gsoap-2.8ok.rar"、"VC++使用gsoap调用webservice接口.rar"以及"HelpFile.txt",我们将逐步解析这个过程。...
使用栈跟踪线程调用栈。 通过学习栈和队列的算法及其应用,我们可以更好地理解和掌握这两种数据结构的特点和应用场景。在实际开发中,合理选择合适的数据结构可以极大地提高程序的效率和可维护性。
这个过程涉及到网络通信、API调用以及XML数据的解析等关键知识点。 首先,你需要在有道API官网注册并申请API密钥,这是调用任何API服务的基础。API密钥通常包括一个AppID和一个AppKey,它们是服务提供商识别你的...