`

今天在接入阿里巴巴平台和qqSDK时出了个意想不到的错,下面分享一下

阅读更多
java.lang.reflect.UndeclaredThrowableException
	at com.alibaba.openapi.client.$Proxy5.getToken(Unknown Source)
	at com.alibaba.openapi.client.AlibabaClient.getToken(AlibabaClient.java:468)
	at com.zhigu.common.alibaba.AlibabaUtil.getToken(AlibabaUtil.java:75)
	at com.zhigu.service.alibaba.impl.AliItemCategoryServiceImpl.test(AliItemCategoryServiceImpl.java:87)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:606)
	at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:47)
	at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
	at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:44)
	at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
	at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:271)
	at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:70)
	at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:50)
	at org.junit.runners.ParentRunner$3.run(ParentRunner.java:238)
	at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:63)
	at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:236)
	at org.junit.runners.ParentRunner.access$000(ParentRunner.java:53)
	at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:229)
	at org.junit.runners.ParentRunner.run(ParentRunner.java:309)
	at org.eclipse.jdt.internal.junit4.runner.JUnit4TestReference.run(JUnit4TestReference.java:50)
	at org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38)
	at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:459)
	at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:675)
	at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:382)
	at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:192)
Caused by: java.util.concurrent.ExecutionException: com.alibaba.openapi.client.exception.AuthServiceException: auth service exception:wrong authorizationCode:0cef72ce-d577-4cb2-9183-bc15dfa1e966
	at com.alibaba.openapi.client.AlibabaClient.send(AlibabaClient.java:158)
	at com.alibaba.openapi.client.AlibabaClient$APIProxy.invoke(AlibabaClient.java:413)
	... 27 more
Caused by: com.alibaba.openapi.client.exception.AuthServiceException: auth service exception:wrong authorizationCode:0cef72ce-d577-4cb2-9183-bc15dfa1e966
	at com.alibaba.openapi.client.util.ExceptionParser.buildException(ExceptionParser.java:80)
	at com.alibaba.openapi.client.util.ExceptionParser.buildException4OAuth2(ExceptionParser.java:71)
	at com.alibaba.openapi.client.rpc.BasicHttpResponseParser.buildException(BasicHttpResponseParser.java:100)
	at com.alibaba.openapi.client.rpc.AbstractHttpResponseParser.parseResponse(AbstractHttpResponseParser.java:90)
	at com.alibaba.openapi.client.rpc.AliNHttpRequstExecutionHandler$1.finished(AliNHttpRequstExecutionHandler.java:86)
	at org.apache.http.nio.entity.ConsumingNHttpEntityTemplate.finish(ConsumingNHttpEntityTemplate.java:88)
	at org.apache.http.nio.protocol.AsyncNHttpClientHandler$ClientConnState.resetInput(AsyncNHttpClientHandler.java:502)
	at org.apache.http.nio.protocol.AsyncNHttpClientHandler$ClientConnState.reset(AsyncNHttpClientHandler.java:517)
	at org.apache.http.nio.protocol.AsyncNHttpClientHandler.closed(AsyncNHttpClientHandler.java:138)
	at org.apache.http.impl.nio.DefaultClientIOEventDispatch.onClosed(DefaultClientIOEventDispatch.java:137)
	at org.apache.http.impl.nio.DefaultClientIOEventDispatch.onClosed(DefaultClientIOEventDispatch.java:53)
	at org.apache.http.impl.nio.reactor.AbstractIODispatch.disconnected(AbstractIODispatch.java:102)
	at com.alibaba.openapi.client.rpc.io.AutoSSLClientIOEventDispatch.disconnected(AutoSSLClientIOEventDispatch.java:216)
	at org.apache.http.impl.nio.reactor.BaseIOReactor.sessionClosed(BaseIOReactor.java:281)
	at org.apache.http.impl.nio.reactor.AbstractIOReactor.processClosedSessions(AbstractIOReactor.java:442)
	at org.apache.http.impl.nio.reactor.AbstractIOReactor.execute(AbstractIOReactor.java:285)
	at org.apache.http.impl.nio.reactor.BaseIOReactor.execute(BaseIOReactor.java:106)
	at org.apache.http.impl.nio.reactor.AbstractMultiworkerIOReactor$Worker.run(AbstractMultiworkerIOReactor.java:590)
	at java.lang.Thread.run(Thread.java:745)

 以上报错,仔细一看,是oauth2的授权码失效了,这个没啥重新授权,运行代码授权

call...Starts the reactor and initiates the dispatch
SessionRequestCallbackTrigger completed。。。
AutoSSLClientIOEventDispatch connected...
AutoSSLClientIOEventDispatch outputReady...
AutoSSLClientIOEventDispatch inputReady...
AutoSSLClientIOEventDispatch outputReady...
AutoSSLClientIOEventDispatch outputReady...
AutoSSLClientIOEventDispatch outputReady...
AutoSSLClientIOEventDispatch inputReady...
AutoSSLClientIOEventDispatch outputReady...
AutoSSLClientIOEventDispatch inputReady...
AutoSSLClientIOEventDispatch inputReady...
Exception in thread "I/O dispatcher 1" java.lang.NoSuchMethodError: org.codehaus.jackson.map.SerializationConfig.with([Lorg/codehaus/jackson/map/SerializationConfig$Feature;)Lorg/codehaus/jackson/map/SerializationConfig;
	at com.alibaba.openapi.client.util.JsonMapper.<clinit>(JsonMapper.java:57)
	at com.alibaba.openapi.client.rpc.BasicHttpResponseParser.parseBody(BasicHttpResponseParser.java:59)
	at com.alibaba.openapi.client.rpc.BasicHttpResponseParser.buildException(BasicHttpResponseParser.java:99)
	at com.alibaba.openapi.client.rpc.AbstractHttpResponseParser.parseResponse(AbstractHttpResponseParser.java:90)
	at com.alibaba.openapi.client.rpc.AliNHttpRequstExecutionHandler$1.finished(AliNHttpRequstExecutionHandler.java:86)
	at org.apache.http.nio.entity.ConsumingNHttpEntityTemplate.finish(ConsumingNHttpEntityTemplate.java:88)
	at org.apache.http.nio.protocol.AsyncNHttpClientHandler$ClientConnState.resetInput(AsyncNHttpClientHandler.java:502)
	at org.apache.http.nio.protocol.AsyncNHttpClientHandler$ClientConnState.reset(AsyncNHttpClientHandler.java:517)
	at org.apache.http.nio.protocol.AsyncNHttpClientHandler.closed(AsyncNHttpClientHandler.java:138)
	at org.apache.http.impl.nio.DefaultClientIOEventDispatch.onClosed(DefaultClientIOEventDispatch.java:137)
	at org.apache.http.impl.nio.DefaultClientIOEventDispatch.onClosed(DefaultClientIOEventDispatch.java:53)
	at org.apache.http.impl.nio.reactor.AbstractIODispatch.disconnected(AbstractIODispatch.java:102)
	at com.alibaba.openapi.client.rpc.io.AutoSSLClientIOEventDispatch.disconnected(AutoSSLClientIOEventDispatch.java:216)
	at org.apache.http.impl.nio.reactor.BaseIOReactor.sessionClosed(BaseIOReactor.java:281)
	at org.apache.http.impl.nio.reactor.AbstractIOReactor.processClosedSessions(AbstractIOReactor.java:442)
	at org.apache.http.impl.nio.reactor.AbstractIOReactor.execute(AbstractIOReactor.java:285)
	at org.apache.http.impl.nio.reactor.BaseIOReactor.execute(BaseIOReactor.java:106)
	at org.apache.http.impl.nio.reactor.AbstractMultiworkerIOReactor$Worker.run(AbstractMultiworkerIOReactor.java:590)
	at java.lang.Thread.run(Thread.java:745)
三月 21, 2015 10:31:11 上午 com.alibaba.openapi.client.AlibabaClient send
警告: Synchronous API [ namespace=system.oauth2,name=getToken] send request timeout.

 从上面的分析来看是说那个类

SerializationConfig

里面没有

with()
参数:是一个Feature的数组
[Lorg/codehaus/jackson/map/SerializationConfig$Feature;]

从整个项目来看,项目中并没有这样的包目录(org.codehaus.jackson.map)存在,可以确定是第三方包出现了问题,于是开始在项目搜索这个类

SerializationConfig

操作步骤如下:

1.选中你的项目

2.ctr+h 打开搜索对话框

在containing text 下面的对话框中输入检索内容。

在filename pattern 下面的对话框中输入匹配的文件格式。

然后在选中scope (检索范围)下面选中 selected resources

开始检索,结果如下

 

 从上面的结果可以看出确实存在好几个这个名称的类,但是还得看包结构,复合出错提示的只有两个;

一个是jackson-mapper-asl-19.13.jar,另一个是Sdk4J.jar(其它的包为什么不是:sdk4j.jar,这个jar包是我重新对Sdk4J.jar打的包删除里面的自带的jackson-mapper-asl-19.13.jar包)就是这个自带的jar出现了问题)

由于版本过低的问题,里面的类SerializationConfig缺少了新的方法(此处是with(Fearture...fearture)),而且项目运行时会先去用这个jar里面的class,(原因就是先找到先用谁,结果是类找到了,方法却找不到,却又不继续往下找,所以即使是你加入了最新的jackson-mapper-asl的jar包,也没有用),上几个解图,看看结构

这个是Sdk4J.jar里面的

 

 

可以看到确实没有with(Fearture...f)方法

在上个jackson-mapper-asl.jar

 

这个里面,却引用不到,真是坑啊

 

所以解决方法有三个

1.让项目先找到最新的jar(比较困难,不易实现,不做进一步的深究了,毕竟项目赶时间)

2.将又问题的改个名字在引用,这个最方便,但是没有解决掉根本问题

3.解压有问题的jar把里面的低版本的jar删除,或替换为最新的,然后在打包回去

jar cvf sdk4j.jar(打包后的名称) file(解压后删除低版本引用的文件目录)

 

 

最后一步检查是否可行运行代码测试结果如下:

 

取到数据,成功。问题解决了。

 

 

 

 

 

 

 

  • 大小: 6.3 KB
  • 大小: 64.9 KB
  • 大小: 165.6 KB
  • 大小: 143.4 KB
  • 大小: 143.4 KB
  • 大小: 130.4 KB
  • 大小: 21.5 KB
  • 大小: 18.5 KB
  • 大小: 44.3 KB
  • 大小: 35.4 KB
0
1
分享到:
评论

相关推荐

    阿里巴巴API开发sdk .net平台

    阿里巴巴开放平台 SDK 运行样例。 调用阿里巴巴开放平台的API你是不是获取不到访问口令,看一下我的例子吧,原因是后台已经更改,而网站的说明没有更新。 IniFile ini = new IniFile(); Dictionary, string&gt; sl ...

    阿里开放平台 php sdk

    阿里巴巴的开放平台只提供了java 版的sdk这个是我写的,其中包含了oauth登录,以及数据访问接口,可能有一些不完善的地方,希望您能提出来

    阿里巴巴的onesdk

    阿里巴巴的onesdk 移动手机数据的sdk

    阿里巴巴基础运维平台实践

    阿里巴巴基础运维平台实践,阿里巴巴基础运维平台实践,阿里巴巴基础运维平台实践,阿里巴巴基础运维平台实践阿里巴巴基础运维平台实践

    尽在双11:阿里巴巴技术演进与超越

    尽在双11:阿里巴巴技术演进与超越,尽在双11:阿里巴巴技术演进与超越尽在双11:阿里巴巴技术演进与超越尽在双11:阿里巴巴技术演进与超越尽在双11:阿里巴巴技术演进与超越尽在双11:阿里巴巴技术演进与超越尽在...

    .NET阿里巴巴平台的免登陆接口的实现代码

    .NET阿里巴巴平台的免登陆接口的实现代码《=======实现阿里平台的开发

    基于SWOT分析法的跨国公司竞争战略研究—以阿里巴巴全球速卖通平台为例.pdf

    基于SWOT分析法的跨国公司竞争战略研究—以阿里巴巴全球速卖通平台为例.pdf基于SWOT分析法的跨国公司竞争战略研究—以阿里巴巴全球速卖通平台为例.pdf基于SWOT分析法的跨国公司竞争战略研究—以阿里巴巴全球速卖通...

    阿里巴巴笔试面试大全

    整理了一下阿里巴巴往届笔试面试题,希望对大家有帮助: 来源:阿里巴巴笔试面试圈&gt;&gt; 1、史上最全Java面试266题:算法+缓存+TCP+JVM+搜索+分布式+数据库 2、2018阿里软件工程师笔试题 3、2018秋招阿里巴巴java...

    阿里开放平台SDK 运行样例 源代码14年04月最新

    阿里巴巴开放平台 SDK 运行样例。.net C#. 运行之前把App_Data/alikey.txt里面的appKey...调用阿里巴巴开放平台的API一般按官网说明即可调通,如果感觉麻烦,看一下我的例子吧,你可以继续完善,14年时百分百测试通过。

    阿里巴巴大型B2B平台中英文完全版V7.09

    阿里巴巴大型B2B平台完全版 V7.09 B2B电子商务的发展如日中天,想办一个类似于阿里巴巴的商业网站吗。这个程序所有功能与阿里巴巴完全一致,从界面到会员区管理,并且有中英文双版,包含了阿里巴巴所有的功能。 ...

    阿里巴巴物联平台433MHz设备接入规范.pdf

    可以供阿里巴巴的合作厂商作为阿里巴巴物联 平台 433MHz 设备的接入标准,为 RF433 设备接入阿里巴巴物联平台提供技术支持。 本文档供阿里巴巴及合作厂商与项目相关的产品经理、项目经理、软硬件技术开发人员 和测试...

    阿里巴巴人力资源管理实践精华合集.zip

    阿里巴巴干部培训体系管理三板斧白皮书 阿里巴巴KPI考核方案 阿里巴巴的高绩效之道 阿里巴巴绩效管理培训 阿里巴巴绩效考核方案 阿里文化驱动的秘诀 标杆企业文化建设与实践 阿里组织变革理论与实践 阿里人才队员级...

    阿里巴巴编码规范试题答案

    阿里巴巴编码规范试题答案

    阿里巴巴数据中台实践分享.pdf

    阿里巴巴数据中台实践分享.pdf

    阿里巴巴开发手册分享

    阿里巴巴开源技术知道分享

    仿阿里巴巴的网站仿阿里巴巴的网站

    仿阿里巴巴的网站仿阿里巴巴的网站仿阿里巴巴的网站仿阿里巴巴的网站仿阿里巴巴的网站仿阿里巴巴的网站仿阿里巴巴的网站仿阿里巴巴的网站

    阿里巴巴 大数据之路

    阿里巴巴,作为距离大数据最近的公司之一,近几年对大数据却鲜有...《大数据之路:阿里巴巴大数据实践》就是在这个过程中,由阿里巴巴数据技术及产品部沉淀下来的大数据知识与实践,值得每一位与大数据相关的人阅读。

    阿里巴巴Android开发手册正式版1.0.1

    《阿里巴巴 Android 开发手册》是阿里巴巴集团各大 Android 开发团队的集体智慧结晶和经验总结,将淘宝、天猫、闲鱼、钉钉等 App 长期开发迭代和优化经验系统地整理成册,以指导 Android 开发者更加高效、高质量地...

    阿里巴巴资深技术专家强琦:大数据开发平台

    在第五届云计算大会第二天的《云计算与大数据》专题论坛上,阿里巴巴资深技术专家强琦发表了名为《大数据开发平台》的主题演讲,大数据开发背景、平台和应用探索三个方面,介绍了阿里巴巴大数据和云计算的工作进展。

Global site tag (gtag.js) - Google Analytics