基于Myeclipse+Axis2的WebService开发实录

  最近开始学习了下在Myeclipse开发工具下基于WebSerivce的开发,下面将相关相关关键信息予以记录

  1. Myeclipse的安装,本文以Myeclipse2014-blue为开发环境,相关配置执行完善
  2. http://archive.apache.org/dist/ws/axis2/tools/下载Axis2包,下载 axis2-eclipse-codegen-wizard.zip,下载axis2-eclipse-service-archiver-wizard.zip
  3. http://axis.apache.org/axis2/java/core/download.html下载(axis2-1.7.0-bin.zip,axis2-1.7.0-war.zip,axis2-eclipse-codegen-plugin-1.7.0.zip,axis2-eclipse-service-plugin-1.7.0.zip)
  4. 下载说明:从步骤1下载出来的Axis2_Codegen_Wizard_1.3.0文件夹,Axis2_Service_Archiver_1.3.0文件夹拷贝到myeclipse安装目录之dropins文件下,重启myeclipse下载到的axis2-1.7.0-war.zip,拷贝文件之tomact/webapps目录下面,重命名axis2.war,刷新文件夹,tomact为解压该部署包,此时可以通过tomact服务访问axis2站,看到相关页面表示成功
  5. 在步骤4中,注意文件夹axis2\WEB-INF,下面有3个文件夹,conf,modules,services,lib文件夹,稍后我们会用到
  6. 下面借助于axis2来开发webservice
  7. 打开myeclipse新建web project项目,将步骤5中conf,modules,services,lib文件夹的拷贝之WebRoot/WEB-INF/下面,并在WEB-INF下面新建Web.xml文件,倘若web.xml存在则打开,添加以下代码配置axis2
  8. axis2配置代码如下:

        <!-- 加载Axis2 -->
    	<servlet>
    		<servlet-name>AxisServlet</servlet-name>
    		<servlet-class>org.apache.axis2.transport.http.AxisServlet</servlet-class>
    		<load-on-startup>1</load-on-startup>
    	</servlet>
    	<servlet-mapping>
    		<servlet-name>AxisServlet</servlet-name>
    		<url-pattern>/services/*</url-pattern>
    	</servlet-mapping>
    

      

  9. 在WEB-INF/services/下新建Axis2Service/META-INF/目录,新建文件services.xml,添加如下webservice服务配置代码

        <!-- HelloWorld表示您的WebService服务名 -->
    <service name="HelloWorld" >
        <!-- HelloWorld表示您的WebService服务描述 -->
        <description>
              HelloWorld  Service Example
        </description>
        <!-- 这个必须是这个服务的类路径 -->
        <parameter name="ServiceClass">
            cn.homily.action.HelloWorld
        </parameter>
        <!-- 这个是这个服务的方法名 -->
        <operation name="getHello">
            <messageReceiver class="org.apache.axis2.rpc.receivers.RPCMessageReceiver" />
        </operation>
        <operation name="getWorld">
            <messageReceiver class="org.apache.axis2.rpc.receivers.RPCMessageReceiver" />
        </operation>
        <operation name="getHelloWorld">
    	<!-- 这里要注意,当没有返回值时才用
    	org.apache.axis2.rpc.receivers.RPCInOnlyMessageReceiver,
    	没有参数还是用RPCMessageReceiver-->
            <messageReceiver class="org.apache.axis2.rpc.receivers.RPCMessageReceiver" />
        </operation>
    </service>
    

      

  10. 在src包下面添加子包cn.homily.action,添加HelloWorld.java文件,其代码如下:

    package cn.homily.action;
    //服务名
    public class HelloWorld
    {  //服务方法
        public String getHello(String name)
        {
            return "Hello, " + name + ".";
        }
        //服务方法
        public String getWorld(String name)
        {
            return "World," + name + ".";
        }
        //服务方法
        public String getHelloWorld()
        {
            return "Hello,World";
        }
    }
    

      经过以上步骤,我们的WebService基本代码已经全了,现在看看实际效果。

  11. 现在打包我们的Web-Project,部署我们的Web-Project至tomact,现在我们运行,在浏览器输入如下地址http://zgc-20150226yxm:8080/sayHello2Axis/services/HelloWorld?wsdl。如果在浏览器里面看到了以下代码,说明我们的Web-Service服务Demo开发完成。正确的页面效果如下:

    This XML file does not appear to have any style information associated with it. The document tree is shown below.
    <wsdl:definitions xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:ns1="http://org.apache.axis2/xsd" xmlns:ns="http://action.homily.cn" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:soap12="http://schemas.xmlsoap.org/wsdl/soap12/" xmlns:http="http://schemas.xmlsoap.org/wsdl/http/" xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/" xmlns:wsaw="http://www.w3.org/2006/05/addressing/wsdl" targetNamespace="http://action.homily.cn">
    <wsdl:documentation>HelloWorld</wsdl:documentation>
    <wsdl:types>...</wsdl:types>
    <wsdl:message name="getHelloRequest">
    <wsdl:part name="parameters" element="ns:getHello"/>
    </wsdl:message>
    <wsdl:message name="getHelloResponse">
    <wsdl:part name="parameters" element="ns:getHelloResponse"/>
    </wsdl:message>
    <wsdl:message name="getHelloWorldRequest">
    <wsdl:part name="parameters" element="ns:getHelloWorld"/>
    </wsdl:message>
    <wsdl:message name="getHelloWorldResponse">
    <wsdl:part name="parameters" element="ns:getHelloWorldResponse"/>
    </wsdl:message>
    <wsdl:message name="getWorldRequest">
    <wsdl:part name="parameters" element="ns:getWorld"/>
    </wsdl:message>
    <wsdl:message name="getWorldResponse">
    <wsdl:part name="parameters" element="ns:getWorldResponse"/>
    </wsdl:message>
    <wsdl:portType name="HelloWorldPortType">
    <wsdl:operation name="getHello">
    <wsdl:input message="ns:getHelloRequest" wsaw:Action="urn:getHello"/>
    <wsdl:output message="ns:getHelloResponse" wsaw:Action="urn:getHelloResponse"/>
    </wsdl:operation>
    <wsdl:operation name="getHelloWorld">
    <wsdl:input message="ns:getHelloWorldRequest" wsaw:Action="urn:getHelloWorld"/>
    <wsdl:output message="ns:getHelloWorldResponse" wsaw:Action="urn:getHelloWorldResponse"/>
    </wsdl:operation>
    <wsdl:operation name="getWorld">
    <wsdl:input message="ns:getWorldRequest" wsaw:Action="urn:getWorld"/>
    <wsdl:output message="ns:getWorldResponse" wsaw:Action="urn:getWorldResponse"/>
    </wsdl:operation>
    </wsdl:portType>
    <wsdl:binding name="HelloWorldSoap11Binding" type="ns:HelloWorldPortType">
    <soap:binding transport="http://schemas.xmlsoap.org/soap/http" style="document"/>
    <wsdl:operation name="getHello">
    <soap:operation soapAction="urn:getHello" style="document"/>
    <wsdl:input>
    <soap:body use="literal"/>
    </wsdl:input>
    <wsdl:output>
    <soap:body use="literal"/>
    </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="getHelloWorld">
    <soap:operation soapAction="urn:getHelloWorld" style="document"/>
    <wsdl:input>
    <soap:body use="literal"/>
    </wsdl:input>
    <wsdl:output>
    <soap:body use="literal"/>
    </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="getWorld">
    <soap:operation soapAction="urn:getWorld" style="document"/>
    <wsdl:input>
    <soap:body use="literal"/>
    </wsdl:input>
    <wsdl:output>
    <soap:body use="literal"/>
    </wsdl:output>
    </wsdl:operation>
    </wsdl:binding>
    <wsdl:binding name="HelloWorldSoap12Binding" type="ns:HelloWorldPortType">
    <soap12:binding transport="http://schemas.xmlsoap.org/soap/http" style="document"/>
    <wsdl:operation name="getHello">
    <soap12:operation soapAction="urn:getHello" style="document"/>
    <wsdl:input>
    <soap12:body use="literal"/>
    </wsdl:input>
    <wsdl:output>
    <soap12:body use="literal"/>
    </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="getHelloWorld">
    <soap12:operation soapAction="urn:getHelloWorld" style="document"/>
    <wsdl:input>
    <soap12:body use="literal"/>
    </wsdl:input>
    <wsdl:output>
    <soap12:body use="literal"/>
    </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="getWorld">
    <soap12:operation soapAction="urn:getWorld" style="document"/>
    <wsdl:input>
    <soap12:body use="literal"/>
    </wsdl:input>
    <wsdl:output>
    <soap12:body use="literal"/>
    </wsdl:output>
    </wsdl:operation>
    </wsdl:binding>
    <wsdl:binding name="HelloWorldHttpBinding" type="ns:HelloWorldPortType">
    <http:binding verb="POST"/>
    <wsdl:operation name="getHello">
    <http:operation location="getHello"/>
    <wsdl:input>
    <mime:content type="application/xml" part="parameters"/>
    </wsdl:input>
    <wsdl:output>
    <mime:content type="application/xml" part="parameters"/>
    </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="getHelloWorld">
    <http:operation location="getHelloWorld"/>
    <wsdl:input>
    <mime:content type="application/xml" part="parameters"/>
    </wsdl:input>
    <wsdl:output>
    <mime:content type="application/xml" part="parameters"/>
    </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="getWorld">
    <http:operation location="getWorld"/>
    <wsdl:input>
    <mime:content type="application/xml" part="parameters"/>
    </wsdl:input>
    <wsdl:output>
    <mime:content type="application/xml" part="parameters"/>
    </wsdl:output>
    </wsdl:operation>
    </wsdl:binding>
    <wsdl:service name="HelloWorld">
    <wsdl:port name="HelloWorldHttpSoap11Endpoint" binding="ns:HelloWorldSoap11Binding">
    <soap:address location="http://zgc-20150226yxm:8080/sayHello2Axis/services/HelloWorld.HelloWorldHttpSoap11Endpoint/"/>
    </wsdl:port>
    <wsdl:port name="HelloWorldHttpSoap12Endpoint" binding="ns:HelloWorldSoap12Binding">
    <soap12:address location="http://zgc-20150226yxm:8080/sayHello2Axis/services/HelloWorld.HelloWorldHttpSoap12Endpoint/"/>
    </wsdl:port>
    <wsdl:port name="HelloWorldHttpEndpoint" binding="ns:HelloWorldHttpBinding">
    <http:address location="http://zgc-20150226yxm:8080/sayHello2Axis/services/HelloWorld.HelloWorldHttpEndpoint/"/>
    </wsdl:port>
    </wsdl:service>
    </wsdl:definitions>
    

      

时间: 2024-12-22 11:55:16

基于Myeclipse+Axis2的WebService开发实录的相关文章

搭建基于MyEclipse的Hadoop开发环境

前面我们已经搭建了一个伪分布模式的Hadoop运行环境. 我们绝大多数都习惯在Eclipse或MyEclipse中做Java开发,本次随笔我就教大家如何搭建一个基于MyEclipse IDE的Hadoop开发环境. 闲话少说,走起! 第一步 安装MyEclipse的Hadoop插件 1 打开MyEclipse,查看是否已经安装过 window  ->  preferences 没有显示Hadoop Map/Reduce,所以说明是MyEclipse是没有安装过Eclipse的插件. 首先,确认你

myeclipse 10 +Axis2 1.62 开发WebService手记

由于临时需求,不得不用java来开发一个webservice,之前对java webservice一片空白.临时查资料,耗费近一天,终于搞定,效率是慢了点.呵呵. 首先 配置Tomcat 中WebService解析容器,下载Axis2-1.6.2 注意分别下载 红框的两个文件   其中注意将 axis2-1.6.2-war.zip 中axis2.war解压出 ,放到tomcat 中 webapps中,然后在浏览器中输入http://localhost:8080/axis2/ 测试容器是否成功.(

基于Axis1.4的webservice接口开发(代码开发)

一.开发环境: 我的开发环境是MyEclipse 2015+Apache-Tomcat-8.0.21. 二.代码开发: 1.新建一个Web Project工程,并导入jar包(Axis1.4的环境搭建在上一篇博客http://www.cnblogs.com/zhukunqiang/p/7124977.html中有介绍): 1.在com.ll.server包下新建java类,工程结构目录如下: 2.java代码如下(由于该项目用于测试,简单点无所谓): package com.ll.server;

使用axis2进行WebService的开发

Apache Axis2 是 Apache Axis SOAP 项目的后继项目.此项目是 Web 服务核心引擎的重要改进,目标是成为 Web 服务和面向服务的体系结构(Service-Oriented Architecture,SOA)的下一代平台. axis2 WebService开发分为服务端开发与客户端开发,服务端开发为对外提供服务,客户端开发为用户调用外部接口进行业务处理. 一.下载与安装 1.下载 下载地址:http://axis.apache.org/axis2/java/core/

下载基于JavaEE&&移动平台的企业级房地产ERP采购系统全程开发实录

201课全,下载地址:http://pan.baidu.com/s/1pLxVAHX课程非常牛,不多说.本课程基于众多技术如:Spring IOC,Spring MVC,MyBatis,BeifengFlow,FushionChart,Flexigrid,jackrabbit,课程总共分为4季,第一季是采购系统,第二季是客户关系销售系统,第三季是成本管理系统,第四季是Android版本的手机应该开发.每一季的知识点和业务都不一样,对学员的要求也有所不同.课程需求绝对来源于真实项目,并且主要的业务

开发基于CXF的 RESTful WebService web 项目 webservice发布

配置步骤 开发基于CXF的 RESTful WebService 1.创建Web项目并导入CXF的jar 2.在Web.xml中配置 CXFServlet <servlet> <servlet-name>cxf</servlet-name> <servlet-class>org.apache.cxf.transport.servlet.CXFServlet</servlet-class> </servlet> <servlet-

基于JAX-WS规范的WebService实现

1.相关介绍 介绍Web Service需要首先了解SOA.SOA(Service-Oriented Architecture)面向服务架构是一种思想,它将应用程序的不同功能单元通过中间的契约(独立于硬件平台.操作系统和编程语言)连接起来,使得各种形式的功能单元更好的集成.WebService是SOA的一种很好的实现方式,WebService采用HTTP作为传输协议,SOAP(Simple Object Access Protocol)作为传输消息的格式. 本文重要介绍基于JAX-WS规范的We

tomcat 用AXIS2发布WebService 网站的方法

Axis2+tomcat7.0 实现webService 服务端发布与客户端的调用. Aixs2开发webService的方法有很多,在此只介绍一种比较简单的实现方法. 第一步:首先要下载开发所需要的jar包 下载: axis2-1.6.2-war.zip  http://www.apache.org/dist//axis/axis2/Java/core/1.6.2/ 下载完后将axis2.war放至tomcat安装目录下的webapps文件夹下,然后启动tomcat后,在webapps目录下会

【webservice】发布axis2的webservice服务端

axis2版本:axis2-1.5.4 准备工作:下载axis2-1.5.4-war.zip(生成服务端).axis2-1.5.4-bin.zip(axis2的jar包),jdk5(及以上版本).tomcat(端口我设成8086了) 手把手超级详细介绍axis2的webservice服务端的生成与发布. 1. 解压axis2-1.5.4-war.zip得axis2.war,把axis2.war放到tomcat的webapps目录, 启动tomcat就能加载axis2.war并生成新的axis2目