首页 > 代码库 > Cognos开发ContentManagerServiceStub不能转换为Stub
Cognos开发ContentManagerServiceStub不能转换为Stub
Cognos SDK开发过程中遇到的小错误详细请看下图
另:附加了详细的错误信息
Exception in thread "main" java.lang.ClassCastException: com.cognos.developer.schemas.bibus._3.ContentManagerServiceStub cannot be cast to org.apache.axis.client.Stub
at com.cognoschina.cognos.comm.CRNConnect.login(CRNConnect.java:48)
at com.cognoschina.test.TestSearchpath.main(TestSearchpath.java:32)
-------------------------------------------------------------SDK 开发--------------------------------------------------------------------------------------------------------
作为一个不专业的java开发人员 ,在Cognos SDK 开发的过程中,遇到最多的问题也就是jdk版本的问题,class not found的问题,上面的问题设置好jdk,然后根据找不到
的包去sdk\java\lib下面去找就可以了,但是上面的问题看上去好像没那么简单,是不能对象之间的不能转换问题
于是乎就把问题放到了网上:
资料1:http://www.cognoschina.net/club/thread-30669-1-1.html
得到的信息:
资料2:http://www-01.ibm.com/support/docview.wss?uid=swg21441931
得到的信息:
第一个实在是不知道怎么处理,Java学前级别的,于是从第二个资料上面找到了些许信息
再次回到项目中看到有两个不同的axis.jar路径分别是com.cognos.org.apache.axis和org.apache.axis
于是便把Java上面和Stub和SOAPHeaderElement有关的类的import改为com.cognos.org.apache.axis
原来报错的时候是
org.apache.axis.message.SOAPHeaderElement;
org.apache.axis.client.Stub;
如果没有cognos-axis.jar需要先导入
PS:总结问题就是由于不同类型的两个包cognos-axis和axis引起的加载路径不一样导致转换问题.把org.apache.axis
换为com.cognos.org.apache.axis即可.
Cognos开发ContentManagerServiceStub不能转换为Stub