J2EE WebService (Axis2实现)

原创 2013年12月03日 22:33:29
Axis2插件配置

1.为Eclipse添加Axis2插件
2.Axis2插件下载地址 http://axis.apache.org/axis2/java/core/tools/index.html Eclipse的Axis插件
3.在项目中新建,需要发布的Webservice类

在web项目中添加webservice服务

1、新建java web proj J2EE WebService (Axis2实现) ect工程。
2、文件复制
%TOMCAT-HOME%\webapps\axis2\WEB-INF\lib 复制到 \Axis2Service2\WebRoot\WEB-INF\lib 下,并加入工程引用。
%TOMCAT-HOME%\webapps\axis2\WEB-INF\conf 复制到 \Axis2Service2\WebRoot\WEB-INF\conf
%TOMCAT-HOME%\webapps\axis2\WEB-INF\modules 复制到 \Axis2Service2\WebRoot\WEB-INF\modules
3、web.xml 代码如下 
 <?xml version="1.0" encoding="UTF-8"?>
<web-app id="wmf" version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
<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>
</web-app> 

2、新建 \Axis2Service2\src\ws\TestWs.java

package ws;
public class TestWs {
public String showName(String name) {return name; }
public String getName() {return "Axis2Service Sample"; }
}

3、新建\Axis2Service2\WebRoot\WEB-INF\services目录。
4、新建一个AxisService服务
AxisService\META-INF\services.xml

<service name="AxisService">
<description>AxisService</description>
<parameter name="ServiceClass">ws.TestWs</parameter>
<operation name="showName">
<messageReceiver
class="org.apache.axis2.rpc.receivers.RPCMessageReceiver" />
</operation>
<operation name="getName">
<messageReceiver
class="org.apache.axis2.rpc.receivers.RPCInOnlyMessageReceiver" />
</operation>
</service>


启动tomcat后,访问http://localhost:8085/Axis2Service2/services/AxisService?wsdl看是否正常。

AXIS2调用Web Services

一、客户端stub文件生成
1、脚本生成方式
去AXIS2的解压目录下bin(%AXIS2_HOME%\bin\)下执行下面语句
wsdl2java -uri http://localhost:8085/Axis2Service2/services/AxisService?wsdl -p ws -s -o stub
-p参数指定了生成的Java类的包名
-o参数指定了生成的一系列文件保存的根目录
在stub\src\ws自动生成AxisServiceStub.java

2、插件生成方式
IDE中选择New->other->Axis2 Code Generator,点击Next;
勾选Generate Java source code from a WSDL file,点击Next;
WSDL file location,输入:http://localhost:8085/Axis2Service2/services/AxisService?wsdl,点击Next;
如果路径不对会提示:Specified WSDL is invalid!, Please select a validated *.wsdl/*.xml file on previous page.
正确的话界面如下,点击next;

指定输入路径,点击Next

提示:All operations completed successfully! 生成成功。在D:\src\ws 自动生成了stub一系列文件,其中ws是包名。

上面2种方式生成的stub类有点不一样,脚本生成方式是单一文件,插件生成方式生成的一系列文件。

二、客户端调用
脚本生成方式为例子,插件生成的类似。

1、新建 java工程 Axis2Client
新建\Axis2Client\lib文件夹
将%AXIS2_HOME%\lib\ 下的jar包复制到\Axis2Client\lib,并加入工程引用中
将通过脚本生成的单一AxisServiceStub.java文件 加入到src\ws下
2、新建test.TestWs.java 主要代码如下

//初始化Sub类
AxisServiceStub stub = new AxisServiceStub();
//传递AxisServiceStub.ShowName对象,相关参数在这边赋值。
AxisServiceStub.ShowName command = new AxisServiceStub.ShowName();
command.setName("Hello!");
//取得返回值
String name = stub.showName(command).get_return();
System.out.println(name);

axis2实现webservice发布实例

首先创建一个PLJO,也就是你索要发布服务的类,然后编写services.xml文件,并且services.xml一定要放在META-INFO文件下,最后将服务类和services.xml打包.aar...
  • zqw280057394
  • zqw280057394
  • 2016年08月02日 19:26
  • 682

使用axis2进行WebService的开发

Apache Axis2 是 Apache Axis SOAP 项目的后继项目。此项目是 Web 服务核心引擎的重要改进,目标是成为 Web 服务和面向服务的体系结构(Service-Oriented...
  • a454832841
  • a454832841
  • 2016年07月12日 13:55
  • 1589

使用axis2进行WebService的开发

使用axis2进行WebService的开发 Apache Axis2 是 Apache Axis SOAP 项目的后继项目。此项目是 Web 服务核心引擎的重要改进,目标是成为 Web 服务和面向...
  • xumengxing
  • xumengxing
  • 2013年10月30日 21:03
  • 43874

使用Axis2方式发布webService的三种方式

1、简单的pojo方式: 1.1 功能描述 在Axis2中不需要进行任何的配置,就可以直接将一个简单的POJO发布成WebService。其中POJO中所有的public方法将被发布成WebSe...
  • zhangmeng_07
  • zhangmeng_07
  • 2017年01月22日 00:42
  • 7760

使用axis2进行WebService的开发

使用axis2进行WebService的开发                            一下载与安装 下载安装配置 二服务端编写 创建服务端的java项目testAsixSe...
  • wyd2822285
  • wyd2822285
  • 2016年07月01日 09:55
  • 1836

Java Axis2发布及调用webservice接口

因为推荐系统改造的事情,需要研究下webservice。本来以为很简单的东西,结果折腾了两天,才勉勉强强搭了个示例。一方面是因为本身对这块不熟悉,另一方面是因为网上教程说的不明确,走了很多弯路。所以这...
  • scjthree
  • scjthree
  • 2014年05月23日 11:09
  • 1367

使用Axis2方式发布webService的三种方式

1、Axis2的下载和安装 首先可以下载如下两个zip包: axis2-1.6.1-bin.zip axis2-1.6.1-war.zip 其中 axis2-1.6.1-bin.zip文件...
  • qq877507054
  • qq877507054
  • 2017年03月13日 17:18
  • 2803

axis2 远程调用webservice接口

AXIS2远程调用WebService示例(Eclipse+AXIS)       我们将Web Service发布在Tomcat或者其他应用服务器上后,有两种方法可以调用该Web ...
  • whs19910204648688
  • whs19910204648688
  • 2014年04月01日 11:45
  • 2518

使用Axis2实现WebService的发布和调用

一、Axis2简介: Axis2是一套崭新的WebService引擎,该版本是对Axis1.x重新设计的产物。Axis2不仅支持SOAP1.1和SOAP1.2,还集成了非常流行的REST WebSer...
  • kris234seth
  • kris234seth
  • 2016年01月04日 17:24
  • 7106

Axis2开发webservice案例详解

最近公司在一个项目上与另外一家公司做接口集成,需要webservice来处理数据的传递,本来我用的CXF简单配置下就可以发布了(关于CXF发布webservice的过程,在后面的博客中也会给个案例,欢...
  • zp357252539
  • zp357252539
  • 2016年05月15日 11:07
  • 2814
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:J2EE WebService (Axis2实现)
举报原因:
原因补充:

(最多只允许输入30个字)