MyEclipse + AXIS2

发布时间:2014-10-25 2:20:44
来源:分享查询网

安装参考自:http://www.blogjava.net/mlzry0612/articles/185209.html 一、环境准备 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 2、Web Servieces plugins 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已经工作正常。 二、快速开始 2.1创建webApps项目 启动MyEclipse,新建立一个WebApps(File->New->Project->Web Project),给Project Name 为SayHello,其他保持不改变。 2.2创建WSDL文件 A.选择File->New-Other菜单,进入后找到MyEclipse->Web Services并选择WSDL.如下图: B.点击下一步按钮,显示如下图: C.选择“src”目录作为“Enter or select the parent folder”的值,“File name”值给定为SayHello.wsdl。 D.下一步》所有界面内容取默认值,Finish! E.显示WSDL设计器的界面如下: F.修改图中标红色的部分: 修改图中的NewOperation为SayHello; 修改input中parameters为SayHelloRequest; 修改output中parameters为SayHelloResponse; 修改完后如下图: 红色框内为变化的内容,WSDL文件修改完毕。 2.3从WSDL生成Java代码 A.选择菜单“File->New->Other”,从对话框中选取“Axis2 Wizards”下面的“Axis2 Code Generator”.点击“Next” B.进入下一个页面,保持“Generate java source code from WSDL file”被选中,点击“Next”进入下一步。 C.点击“Browse”来选取存放在src目录下的SayHello.wsdl文件,“Next”进入下一步。 D.首先生成客户端代码和测试代码,设置如下: E.下一步后,选择SayHellosrc目录,如下图: Finish ! F.重复从A到C的步骤,然后生成服务端代码,设置如下: 后面同E。 G.结束后,刷新项目,如图: 这是由于没有将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 完成测试!   An error occurred while completing process -java.lang.reflect.InvocationTargetException 问题解决: 拷贝AXIS2_HOME/lib/backport-util-concurrent-3.1.jar文件到目录MYECLIPSE_HOME/eclipse/plugins/org.apache.axis2.tool.codegen.eclipse.plugin.CodegenWizardPlugin/lib下,然后在CodegenWizardPlugin的配置文件plugin.xml中添加这样一段:   <library name="lib/backport-util-concurrent-3.1.jar"> <export name="*"/> </library>  其次是在运行eclipse时调用jdk1.6版本并且加入-debug模式,在控制台下可以这样直接运行, "E:/ProgramFiles/MyEclipse6.6/eclipse/eclipse.exe" –vm "C:/ProgramFiles/Java/jdk1.6.0_13/bin/java.exe" -debug    

返回顶部
查看电脑版