最近通过axis2调用web service,对web service有了一定的认识,在网上看到了一个博客,写得还不错,转发一下
我的环境是
windows7 64
jdk1.6.0_45
eclipse kepler
axis2-1.6.2-bin
axis2-eclipse-codegen-plugin-1.6.2
axis2-eclipse-service-plugin-1.6.2
axis2创建web service(一)
http://deltaj.iteye.com/blog/284387
注意路径只是要bin,不需要进入子目录,例如E:\workspace\SimpleServer\bin
axis2 administration默认的用户名密码是 admin/axis2
axis2创建web service(二)
http://deltaj.iteye.com/blog/286257
这个章节笔者补充一下
1。在eclispe 的package Explorer 中点击右键,在菜单中选择新建--->other...----->Axis2 Service Archiver
[comments by JamesZOU]: 一定要选中ClientServer这个project之后再右键,否则出错
axis2创建web service(三)
笔者实验的过程中补充如下
[comments by JamesZOU] 即使这样,还是出现了其它问题
1. cannot instantiate the type adbdatasource
看代码,里面有这样一段
org.apache.axiom.om.OMDataSource dataSource =
new org.apache.axis2.databinding.ADBDataSource( this,MY_QNAME );
而去看ADBDataSource, 发现这个类是一个抽象类,根本没有办法实例化
public abstract class ADBDataSource implements OMDataSourceExt {
网上说的原因是
That usually occurs because there is a mismatch between the Axis2 version used at runtime and the Axis2 version used to generate the code.
我现在使用的axis2-1.5.6-bin和axis2-eclipse-codegen-plugin-1.6.2
这个链接里面说
I use Code Generator Plugin 1.6 & Axis2 1.6 (not the last version) and it works perfectly.
当我使用axis2-1.6.2-bin和axis2-eclipse-codegen-plugin-1.6.2这个问题确实解决了
看来每个版本的axis应该对应相应版本的plugin, 但我却找不到1.5.6这个pluggin
axis2创建web service(四)
http://deltaj.iteye.com/blog/288581