MyEclipse + AXIS2

一、环境准备

1.1软件下载准备
Tomcat 5.5下载地址:
http://tomcat.apache.org/download-55.cgi#5.5.20

Axis War包:
http://ftp.wayne.edu/apache/ws/axis2/1_1_1/axis2.war

Axis Eclipse plug-in(代码生成工具和打包工具):
http://apache.justdn.org/ws/axis2/tools/1_1_1/axis2-eclipse-codegen-wizard.zip
http://apache.justdn.org/ws/axis2/tools/1_1_1/axis2-eclipse-service-archiver-wizard.zip

Eclipse 3.2:
http://www.eclipse.org/

MyEclipse5.5M1:
http://www.myeclipseide.com/

1.2安装

A.首先搭建开发环境,将下载的Eclipse解压缩到一个目录,D:eclipse-SDK-3.2-win32。
B.将下载到的Axis 的两个plug-in解压缩到D:Axis-Plugin-Direclipseplugins目录下。
C.在eclipse目录下创建D:eclipse-SDK-3.2-win32eclipselinks,新建文件名为:axis-eclipse-plugin.link

内容为:
path=D:Axis-Plugin-Dir


D.安装MyEclipse5.5M1,将eclipse目录指向D:eclipse-SDK-3.2-win32,删除D:eclipse-SDK-3.2-win32eclipseconfiguration下的org.eclipse.update目录。然后启动MyEclipse,选择“File->New->Other”可以看到如下的两个界面。
1、Axis2 plugins

[img]http://dl.iteye.com/upload/attachment/200531/320924bf-ec6f-3c0f-b9a1-7ce463008e79.png[/img]
2、Web Servieces plugins

[img]http://dl.iteye.com/upload/attachment/200533/84a7acad-7d9a-3634-955e-11ac58ab5fa6.png[/img]
E.下面开始搭建Web Services的部署环境。

将下载的tomcat5.5解压缩到一个目录D:Tomcat5.5。

F.将axis2.war包拷贝到tomcat安装目录下的webapps目录。

G.启动Tomcat(D:Tomcat5.5binstartup.bat),打开浏览器输入并访问:http://127.0.0.1:8080/axis2 来查看,结果如下图,表示axis2已经工作正常。


[img]http://dl.iteye.com/upload/attachment/200537/5db6e776-b6fe-303b-80e6-5642d93172b1.png[/img]

二、快速开始

2.1创建webApps项目

启动MyEclipse,新建立一个WebApps(File->New->Project->Web Project),给Project Name 为SayHello,其他保持不改变。

2.2创建WSDL文件

A.选择File->New-Other菜单,进入后找到MyEclipse->Web Services并选择WSDL.如下图:


[img]http://dl.iteye.com/upload/attachment/200540/e730bbaa-1a05-3e73-ab40-df5576da471b.png[/img]

B.点击下一步按钮,显示如下图:


[img]http://dl.iteye.com/upload/attachment/200543/cd07021e-95a6-37e4-bc0e-11b01eab4de7.png[/img]

C.选择“src”目录作为“Enter or select the parent folder”的值,“File name”值给定为SayHello.wsdl。

D.下一步》所有界面内容取默认值,Finish!

E.显示WSDL设计器的界面如下:


[img]http://dl.iteye.com/upload/attachment/200552/9da5565e-27ad-34fa-bc98-49de91f11d5d.png[/img]

F.修改图中标红色的部分:
修改图中的NewOperation为SayHello;
修改input中parameters为SayHelloRequest;
修改output中parameters为SayHelloResponse;
修改完后如下图:

[img]http://dl.iteye.com/upload/attachment/200554/fbb8754e-dda5-3d9c-b5f4-fcdc669516c5.png[/img]
红色框内为变化的内容,WSDL文件修改完毕。

2.3从WSDL生成Java代码

A.选择菜单“File->New->Other”,从对话框中选取“Axis2 Wizards”下面的“Axis2 Code Generator”.点击“Next”


[img]http://dl.iteye.com/upload/attachment/200559/a9b11bdb-a057-3afa-a778-be6f7e16712e.png[/img]

B.进入下一个页面,保持“Generate java source code from WSDL file”被选中,点击“Next”进入下一步。
C.点击“Browse”来选取存放在src目录下的SayHello.wsdl文件,“Next”进入下一步。
D.首先生成客户端代码和测试代码,设置如下:


[img]http://dl.iteye.com/upload/attachment/200561/3357e558-b7ff-370f-aadc-e6c22aa1b988.png[/img]
E.下一步后,选择SayHellosrc目录,如下图:


[img]http://dl.iteye.com/upload/attachment/200565/692d1590-8a9a-3299-9e4a-b8d1886bab9a.png[/img]
Finish !

F.重复从A到C的步骤,然后生成服务端代码,设置如下:


[img]http://dl.iteye.com/upload/attachment/200567/6a54c912-57d6-3702-a053-a042c4f753bd.png[/img]
后面同E。

G.结束后,刷新项目,如图:


[img]http://dl.iteye.com/upload/attachment/200573/d2082220-e792-3340-a0ef-6189ba890a5f.png[/img]
这是由于没有将Axis2的jar包放入class path 中以及源代码的package不为org.example.www.sayhello引起的。

H.修改包名为org.example.www.sayhello并从tomcat中的axis2 web应用WEB-INF/lib目录中加载所有jar包到项目的classpath中。

I.在SayHelloTest.java 中引入junit包。

2.4编写业务代码

打开SayHelloSKeleton.java文件其中的方法如下:


public org.tonyzhangcn.ws.sayhello.SayHelloResponse SayHello(org.tonyzhangcn.ws.sayhello.SayHelloRequest param0)

{

// Todo fill this with the necessary business logic

throw new java.lang.UnsupportedOperationException();

}


修改为:

public org.tonyzhangcn.ws.sayhello.SayHelloResponse SayHello(org.tonyzhangcn.ws.sayhello.SayHelloRequest request)
{
try {
SayHelloResponse response = new SayHelloResponse();
response.setOut("Hi,"+request.getIn()+".How are you?");
return response;
}catch(UnsupportedOperationException e)
{
throw e;
}
}

2.5打包

A.选择菜单“File->New->Other”,从对话框中选取“Axis2 Wizards”下面的“Axis2 Services Archive”.点击“Next”进入下一个页面。

B.选择编译好的class文件所在目录(本项目应该是WebRoot下面WEB-INF/classes),“Next”进入下一步。

C.选择WSDL文件所在目录,此处为src目录下的SayHello.wsdl文件。“Next”,再“Next”。选择services.xm文件。

D.点击“Next”,将记入最后一个页面,此处有两个选项,一个是输出目录一个是处处文件名称。这里的输出文件名称给的是SayHello。点击“Finish”完成。

2.6部署

A.将打包好的文件SayHello.jar拷贝到Tomcat中已经部署的Axis2应用的WEB-INF/services目录下面。

B.重新启动Tomcat。

C.打开浏览器,输入http://127.0.0.1:8080/axis2,并点击其中的“services”链接可以看到SayHello已经被部署。点击SayHello提供的连接可以看到与之对应的WSDL。

2.7调用测试
A.修改SayHelloTest.java文件中的方法testSayHello的内容为:


public void testSayHello() throws java.lang.Exception {
String url="http://localhost:8080/axis2/services/SayHello";
org.example.www.sayhello.SayHelloStub stub = new org.example.www.sayhello.SayHelloStub(url);
org.example.www.sayhello.SayHelloStub.SayHello request = (org.example.www.sayhello.SayHelloStub.SayHello) getTestObject(org.example.www.sayhello.SayHelloStub.SayHello.class);
request.setIn("Teamlet");
System.out.println(stub.SayHello(request).getOut());
assertNotNull(stub.SayHello(request));
}


从菜单中选择“Run->Run as->JUnit Test 完成测试!
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
1 下载 Myeclipse Axis2 插件 http: archive apache org dist ws axis2 tools 1 4 1 下载 axis2 eclipse codegen wizard zip 和 axis2 eclipse service archiver wizard zip http: labs xiaonei com apache mirror ws axis2 1 5 axis2 1 5 war zip 下载 axis2 1 5 war zip 2 .解压插件 $ECLIPSE HOME 表示你安装的 myeclipse 主目录 将上述两个插件都解压到 $ECLIPSE HOME eclipse plugins 目录中; Axis2 Codegen Wizard 1 3 0 和 Axis2 Service Archiver 1 3 0 3 在 $ECLIPSE HOME eclipse links 目录下增加文件 axis eclipse plugin link 写入 path $ECLIPSE HOME eclipse plugins 千万不要直接复制 4 重新启动 myeclipse 在 file >new >other 中即可看到 Axis2 Wizards 至此 axis2 插件安装成功 GXGX 5 赶快试下用 wsdl 文件生成 java 源文件吧 是不是有错误出现 对 事情就是这样发展的 6 An error occurred while completing process java lang reflect InvocationTargetException 的错误 嗯不用急 有得解 不过我当初很惨弄了一个晚上 解决方法如下: step 1 从 AXIS2 的 LIB 库中复制 "geronimo stax api 1 0 spec 1 0 1 jar" 和 "backport util concurrent 3 1 jar" 文件到 Axis2 Codegen Wizard 1 3 0 的 lib 目录中 同时修改 Axis2 Codegen Wizard 1 3 0 下的 plugin xml 文件 在 <runtime> 中添加 <library name "lib geronimo stax api 1 0 spec 1 0 1 jar"> <export name " " > < library> <library name "lib backport util concurrent 3 1 jar"> <export name " " > < library> 到 plugin xml 文件中 保存 step 2 将 $workspace 位置 metadata plugins 下目录 Axis2 Codegen Wizard 删除 step 3 在命令行下切换至 $ECLIPSE HOME 目录 然后执行: eclipse –clear step 4 除了上面步骤还要: (4 1) 把Axis2 Codegen wizard 1 3 0 eclipse plugins Axis2 Codegen wizard 1 3 0 的名字改成Axis2 Codegen wizard 1 4 0 (4 2) 在plugin xml中在<plugin>中 把Axis2 Codegen wizard的version "1 3 0"改成version "1 4 0" 到plugin xml文件中 保存后重新启动Eclipse即可 ">1 下载 Myeclipse Axis2 插件 http: archive apache org dist ws axis2 tools 1 4 1 下载 axis2 eclipse codegen wizard zip 和 axis2 eclipse service archiver wizard zip http: labs xiaonei com apache mirror ws axis2 1 5 axis2 1 5 war zip 下载 axis2 1 5 war zip 2 .解压插件 $E [更多]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值