从alfresco内部调用基于wsdl的webservice

时间:2014-09-03 14:41:43

标签: java wsdl jax-ws alfresco spring-ws

我遵循了这篇文章:http://www.mkyong.com/webservices/jax-ws/jax-ws-hello-world-example/

所以我有:

用作端点。

另一方面,我有使用wsimport生成的客户端:

这在eclispe中运行良好,没有露天参与。但是,我想从alfresco调用web服务(例如来自java支持的web脚本)

我试图将客户端的东西复制到我的放大器文件并从webscript调用它但它失败了!

Caused by: java.lang.IncompatibleClassChangeError: Class com.ibm.wsdl.DefinitionImpl does not implement the requested interface javax.wsdl.extensions.AttributeExtensible

1 - 是否有更优雅的方法来通过定义spring bean(spring-ws)或

来配置对wsdl的访问

2 - 为什么不起作用?完整跟踪:http://pastebin.com/ak1qzygA

使用alfresco community 5.0.a

感谢

1 个答案:

答案 0 :(得分:0)

通常在依赖/库jar更改时会看到IncompatibleClassChangeError。因此,必须根据更改重新编译依赖于库的方法/代码。

猜测这里的问题与一些依赖罐子被错误挑选或者旧版本的罐子存在或者一个罐子优先于另一个罐子有很大关系。在类路径中查看包含“com.ibm.wsdl.DefinitionImpl”类的jar应该会有所帮助。