阿里云OpenAPI 本地跑1.1.0版本没问题,搬到服务器就不可以了,为什么?
com.aliyun
alimt20181012
1.1.0
2023-09-04 11:36:52 [http-nio-8090-exec-11] fe.util.LogUtils null
java.lang.reflect.InvocationTargetException: null
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_202]
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:1.8.0_202]
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:1.8.0_202]
at java.lang.reflect.Method.invoke(Method.java:498) ~[?:1.8.0_202]
at fe.ajax.Invoker.invoke(Invoker.java:210) [classes/:?]
at fe.ajax.Invoker.execute(Invoker.java:105) [classes/:?]
at fe.ajax.RemoteServlet.doPost(RemoteServlet.java:59) [fe-formdesign-5.2.0-SNAPSHOT.jar:?]
at javax.servlet.http.HttpServlet.service(HttpServlet.java:681) [servlet-api.jar:4.0.FR]
at javax.servlet.http.HttpServlet.service(HttpServlet.java:764) [servlet-api.jar:4.0.FR]
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:227) [catalina.jar:9.0.55]
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) [catalina.jar:9.0.55]
at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:53) [tomcat-websocket.jar:9.0.55]
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) [catalina.jar:9.0.55]
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) [catalina.jar:9.0.55]
at com.alibaba.druid.support.http.WebStatFilter.doFilter(WebStatFilter.java:124) [druid-1.1.18.jar:1.1.18]
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) [catalina.jar:9.0.55]
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) [catalina.jar:9.0.55]
at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:197) [spring-web-4.3.12.RELEASE.jar:4.3.12.RELEASE]
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107) [spring-web-4.3.12.RELEASE.jar:4.3.12.RELEASE]
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) [catalina.jar:9.0.55]
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) [catalina.jar:9.0.55]
at org.springframework.session.web.http.SessionRepositoryFilter.doFilterInternal(SessionRepositoryFilter.java:167) [spring-session-1.3.1.RELEASE.jar:?]
at org.springframework.session.web.http.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:80) [spring-session-1.3.1.RELEASE.jar:?]
at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:347) [spring-web-4.3.12.RELEASE.jar:4.3.12.RELEASE]
at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:263) [spring-web-4.3.12.RELEASE.jar:4.3.12.RELEASE]
at org.apache.catalina.core.ApplicationFilterChain.inte
根据您提供的日志,看起来是在服务器上执行OpenAPI调用时出现了异常。具体的错误信息是java.lang.reflect.InvocationTargetException
,这种异常通常是由反射调用引发的。
可能的原因包括:
依赖库问题:请确保服务器上的依赖库与本地开发环境中使用的版本相同,并且正确导入到服务器项目中。
环境配置问题:检查服务器环境的配置是否正确,例如JDK版本、Tomcat配置等。确保服务器环境与本地环境一致。
接口调用参数问题:请确认在服务器上调用OpenAPI时传递的参数是否正确,包括请求地址、请求方法、请求头等。
网络或防火墙问题:如果部署在服务器上的应用程序无法访问第三方应用的接口,可能是由于网络或防火墙配置问题导致的。请确保服务器能够正常访问目标接口所在的服务器,排除网络和防火墙限制。
其他问题:还有其他可能导致连接超时的问题,例如接口返回数据过大、服务器负载过高等。建议检查服务器的资源利用率,以及查看目标接口的返回数据是否符合预期。
从堆栈看 和SDK看起来是没有关系的。 这是反射处理的问题 让客户跟堆栈看下,哪里报的错 然后去社区或者git issue搜下就差不多了。此回答整理自钉群“OpenAPI 开发者门户 - 值班服务群2群”
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。