2012-01-04 73 views
1

我有一个旧的asmx服务,需要通过java(axis2)客户端联系。 问题是服务有一些重载的方法,并且wsdl2java工具会引发重复的操作错误。如何使用重载方法从Service中生成axis2客户端

很明显,更改服务不是一种选择。有没有解决这个问题的方法?

.net客户端可以处理这个吗?如果是这样,也许我可以写一个.Net层来充当我的客户端和服务之间的代理。

是否还有其他的wsdl/java生成器可以支持它?

SOLUTION:

因为我只需要使用一些服务的方法,我所做的就是在WSDL下载到我的本地磁盘,然后我删除了重复的方法,并从中产生存根(使用XmlBeans,ADB不起作用)。

同样,如果您不需要所有的方法并且您可以摆脱重复,这种解决方案只会很好。

回答

0

您是否尝试过使用axis2插件从Eclipse IDE生成客户端?

您只需使用tomcat和axis2运行时设置Eclipse,然后创建一个Dynamic Web项目并将WSDL添加到src,然后生成客户端。

我认为它应该生成没有任何问题的客户端。

+0

我使用的是由axis2提供的wsdl2java工具,基本上与Eclipse使用axis2插件时使用的工具基本相同(至少据我所知)。但只是为了确保我尝试了它并偶然发现了同样的错误。 – Tomer 2012-01-04 10:21:06

0

我发现Axis 1.4确实支持重载方法,所以如果你能买得起旧轴版本,这可能是一个解决方案。