`

axis1.1 和 axis1.4 关于包名enum的问题

阅读更多

org.apache.axis.enum 与JDK1.5冲突的解决办法

 

 

问题来源:

 

我们的系统使用的是axis1.1版本,调用大部分基于1.1开发的webservice程序,但是现在调用第三方webservice程序时候,由于对方使用的是axis1.4开发,所以我们使用axis1.1的wsdl2java生成的文件含有1.4的一些东西,主要体现在*SoapBindingStub类里出现

org.apache.axis.enum.Style.WRAPPED

 

问题来了,如果你的编译环境是jdk1.4一下版本,那么恭喜你,没有问题,但是目前大部分人使用的是jdk1.5以上版本,那么由于jdk1.5以上版本增加了enum这个关键字变量,不能用作包名,所以调用org.apache.axis.enum.Style.WRAPPED类似方法的时候总是编译不通过。

 

解决办法

1:升级到axis1.4版本

2:如果你升级的时候会引起原来axis1.1版本的混乱,甚至出错,那么

你可以在axis1.1的基础上,把生成的java文件,放入一个新的项目中,该项目使用jdk1.4的环境编译,打成jar包,再放回到原来jdk1.5以上版本的项目中,引入该jar包的方法即可。

上面是我的经历的记录,希望能帮助有疑问的人。

0
0
分享到:
评论
3 楼 spring_xcy 2010-11-18  
我感觉  axis1.1 和 axis  1.4生成的wsdl是一样的   呵呵  
2 楼 panshunchang 2010-11-18  
哈哈。我说的是axis1.4,可能我表达的不清楚,用axis1.1生成 对方用axis1.4开发的wsdl代码,会出现包名enum,而这个包名在我现在使用的jdk5环境中,是不允许使用的,因为它是一个枚举变量
1 楼 spring_xcy 2010-11-17  
我刚接触webService,小菜。不过我对你的问题来源,有点不明白:

“由于对方使用的是axis1.4开发,所以我们使用axis1.1的wsdl2java生成的文件含有1.4的一些东西”  

你说的1.4是jdk1.4还是axis1.4?

相关推荐

Global site tag (gtag.js) - Google Analytics