首先 吐槽下 Axis2的Eclipse插件。不好用,而且局限性大。并且添加包的过程。。。会及其痛苦。(懂的自然懂)

而且 发布的aar文件,不能解压缩重新打包再压缩。。。尝试过添加 jar包,但报错。

网上找资料的时候看到很多Axis2开发的webservice都是打包成arr格式附带到Axis2框架上发布,这样不能打包成war发布。

整理了一些资料了解了一种可以把Axis2开发的WebService打包成war包发布。

    一、环境准备

          使用 Axis 来开发 Web services  需要准备  web  服务器, Axis API 。本文使用的 Web container  是 Tomcat 6 . 0 , Axis API  采用版本 2 。

     1.1 软件下载准备

          Tomcat下载地址:

http://tomcat.apache.org/download-55.cgi#5.5.20

          Axis 标准包:

http://apache.etoak.com/ws/axis2/1_5_1/axis2-1.5.1-bin.zip

          Axis War 包:

http://apache.etoak.com/ws/axis2/1_5_1/axis2-1.5.1-war.zip

     1.2 步骤

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

          B .启动Tomcat(windows 下为TOMCA_HOME/bin中的startup.bat;Linux,unix环境为startup.sh文件),打开浏览器输入并访问:http://ip:port/axis2来查看。(如果没有进行 配置 文件的修改此地址应该为 http://localhost:8080/axis2 ),如果能看到下面的页面则说明已经安装完成。

     二、 例子

            先从一个简单的例子开始。以便对使用 Axis 来开发 Web services 的大致流程有个了解。

       2.1编写自己的应用服务端。

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

B. 我们需要一个简单的web service ,建包cc.com.mm,包下新建类 TestWebService 。代码如下:

package cc.com.mm;

public class TestWebService {
public String test(String name){
return name +" "+ "test";
}
}

C.将 Axis2 集成 到我们自己的webapp中。首先我们需要将Axis2 Servlet写到我们的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>

D.把tomcat 安装目录下的webapps/axis2 / axis2-web 放到项目的WebRoot下, 把tomcat安装目录下的webapps/axis2/WEB-INF下的service和conf 和moduls 文件 夹 拷至 项目 下的WEB-INF目录下 ,并修改conf目录下的axis2.xml,找到 <module ref="addressing"/> 并将其注释掉。 把lib下的jar包 也 拷 到项目的lib下 去。 结构如下:

      E. 接下来,我们需要为 TestWebService 写一个部署描述。 在 services下新建Axis2Service(这个可以任取) /META-INF路径,META-INF下新建services.xml,内容如下:

<service name="ServiceTest">
<description>
Test Service Example
</description>
<parameter name="ServiceClass">
cc.com.mm.TestWebService
</parameter>
<operation name="test">
<messageReceiver class="org.apache.axis2.rpc.receivers.RPCMessageReceiver" />
</operation>
</service>

F.把项目加载到tomcat,也可以打包成war发布到tomcat, 启动tomcat后访问http://localhost:8080/Axis2Service/services/ServiceTest?wsdl

     能看到服务信息,则说明已经成功。

Axis2使war包发布为WebService的更多相关文章

  1. Tomcat下使用war包发布项目

    Tomcat下使用war包发布项目 转自<Tomcat下使用war包发布项目 >,地址:http://blog.csdn.net/wy818/article/details/7240294 ...

  2. spring boot将jar包转换成war包发布

    spring boot将jar包转换成war包发布步骤 将<packaging>jar</packaging>修改为<packaging>war</packa ...

  3. tomacat服务器上web资源访问流程、web应用打成war包发布、Context的reloadable属性、tomacat体系架构

    一.web资源访问流程 二.web应用打成war包发布到服务器 好处:打成war包发布到服务器,那么服务器会自动把它拆解成文件夹 jar命令是java自带的一个命令,如果之前配置过Java编译环境就可 ...

  4. 将web应用打成war包发布到服务器

    如何将web应用打成war应用发布到服务器步骤: (1)先有一web应用"google"在C:盘下,如图: google下目录有WEB-INF文件夹(下有classes.lib.w ...

  5. 使用idea创建springboot项目并打成war包发布到tomcat8上

    1.将pom.xml中的打包方式修改为war <groupId>com.borya</groupId> <artifactId>Project</artifa ...

  6. Spring boot + Gradle + Eclipse打war包发布总结

    首先感谢两位博主的分享 http://lib.csdn.net/article/git/55444?knId=767 https://my.oschina.net/alexnine/blog/5406 ...

  7. springboot项目打war包发布到外置tomcat

    第一步:修改pom.xml 1. <version>0.0.1-SNAPSHOT</version> <packaging>war</packaging> ...

  8. spring boot打war包发布

    由于公司一贯的方式都是将war包布在中间件tomcat下运行 所以这次springboot项目需要打war包 how to? 第一步:pom.xml 文件中,打包方式需要修改成war <pack ...

  9. 使用idea创建springboot项目并打成war包发布到weblogic上

    部署tomcat也是类似的,但是需要注意项目配置的路径,或者直接将项目放到webapp的ROOT目录下. 使用工具:intelliJ IDEA2016.3, jdk1.8 ,weblogic12 一 ...

随机推荐

  1. iOS程序 防止动态调试和代码注入

    http://ruixiazun.blog.163.com/blog/static/9068791820141173588694/ iPhone真实的运行环境是没有sys/ptrace.h抛出.ptr ...

  2. 多线程的学习与python实现

    学习了进程与线程,现对自己的学习进行记录. 目录: 一.进程与线程的概念,以及联系与区别 二.多线程 三.python中多线程的应用 四.python实例 五.参考文献 一.进程与线程的概念.以及联系 ...

  3. 人工智能交互集成在线语音合成能力的Tips

    在线语音合成就是在联网的场景下将文字转换成声音,实现机器向人的声音交互.这个概念应该是比较好理解的,下面就结合官网的Android在线合成的Demo讲解一下合成的流程以及大家经常遇到的一些问题. 到官 ...

  4. CSS布局学习笔记之position

    CSS知识点 之 position布局 前段时间被同学怂恿,参加了百度前端技术学院的一个小培训,第一个阶段下来学到不少东西.课程的第一个阶段主要是HTML5 和 CSS 基础知识的一个小培训,给出的一 ...

  5. 对客户推荐产品模型+python代码

    首先观看数据: l  数据的基本特征用  describe  描述每个基本特征 l  画图画出每个特征的基本统计图 应用import matplotlib.pylab as pl  画图显示 l  关 ...

  6. javascript 在ie8中报“缺少标识符、字符串或数字“问题再现:

    开发和测试使用Chrome浏览器比较多,客户反馈某个页面打不开,自己用Chrome打开一切正常,用ie8打开,果然页面展现卡在那儿了,并且报了"缺少标识符.字符串或数字".查看是在 ...

  7. python获取字母在字母表对应位置的几种方法及性能对比较

    python获取字母在字母表对应位置的几种方法及性能对比较 某些情况下要求我们查出字母在字母表中的顺序,A = 1,B = 2 , C = 3, 以此类推,比如这道题目 https://project ...

  8. Beta版

    Beta版使用说明 各文件介绍:本软件是基于visual studio 2010 平台,使用C#语言开发的windows窗体游戏.该游戏共有七个界面,分别是开始界面,游戏说明界面,模式选择界面,经典模 ...

  9. LED BIN code

    在LED选型时,一开始我们都知道要选个某种颜色,在选个尺寸,但在到具体选的时候,就会被那些个各种各样的参数搞得迷糊,这个主要对一个最让人困惑的参数-BIN CODE做整理. BIN就是bining的缩 ...

  10. android技巧(五)一个异步+接口回调的例子

    public class DataBaseUtils { // 当前数据库地址 private String DB_PATH; // 备份后数据库保存地址 private String DB_BACK ...