`
enjiex
  • 浏览: 67680 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

axis2学习——axis2的安装

阅读更多
今天稍看了下关于axis2的介绍,官方上说Apache Axis2是Apache提供的一款第三方Web Services引擎,与其前身Apache Axis相比,axis2更加高效、模块化,也更面向于XML的组织。经过精心的设计,axis2提供了更加便利的模块添加功能。

Apache axis是apache提供的基于java的,同时支持服务端和客户端的的web service引擎。提供了完整的对象模型和模块化的架构,所以能很方便的添加功能和支持新的web services相关的规范。

通过axis2,开发者可以简单地完成以下功能:
  • 发送SOAP消息
  • 接收并处理SOAP消息
  • 通过普通的java类来创建web service
  • 通过WSDL为server和client生成实现类
  • 简单地获得服务的WSDL
  • 在发送或接收的SOAP消息中添加附件
  • 创建或使用RESTFUL web service
  • 创建和使用具有以下支持的web service:
  • WS-Security
  • WS-ReliableMessaging
  • WS-Addressing
  • WS-Coordination
  • WS-Atomic Transaction
  • 使用Axis2的模块化结构快速的为新的web service规范提供支持。


在使用之前当然需要先安装axis2相关的服务。下面是我在linux上的一个安装过程,其主要过程来源于官方的Apache Axis2 Installation Guide,因为是英文,这里把中文的过程写下来,以便于参考。

关于axis2的包

关于axis2,官方提供了四种类型的包,分别为二进制包war包文档包源文件包。其中的二进制包包含了示例程序和一些jar包;war包是可以作为web应用部署到servlet container中的axis2服务包,它是apache axis2提供的服务管理的工具类web应用,所谓的axis2的安装即指的是在servlet container中安装此包;文档包不再多说;源码包也不再多说。
官方文档说使用axis2需要的资源:java5及以上、不小于11M的硬盘空间和随便一个操作系统。另外为了把二进制数据打包成war文件,需要安装不低于1.6.5的apache ant;为了构建源码包,需要安装不低于maven2.0.7的maven。

好了,下面就进入安装流程了,共有4步:
1. 下载
上面提到的四个类型的资源包都可以下载,我这里只是下载了二进制包。对于下载到的axis2-1.6.0-bin.zip,我这里的解压目录为/home/enjiex/cube/axis-1.6.0,也即下面说的AXIS2_HOME,在windows上手动需要设置AXIS2_HOME环境变量,对于linux用户来说就很方便了,只需要到AXIS2_HOME/bin下执行setenv.sh即可,当然前提是已经在系统中设置了JAVA_HOME。这样就已经下载并配置好了AXIS2。

2. 启动axis2
已经上面的配置,就可以启动axis2了,进入到AXIS2_HOME/bin目录,即行如下脚本:
axis2server.sh

如果在终端中看如下,就说明已启动成功。
[INFO] [SimpleAxisServer] Started
[SimpleAxisServer] Started
[INFO] Listening on port 8080


此时打开浏览器http://localhost:8080会看到如下效果:



在上面的页面上看到的就是当前AXIS2_HOME/repository/services里已安装的可用的服务(在此目录中看到的.aar文件即为服务包)。

3. 打包axis2.war并部署

打包axis2.war需要使用到apache ant,所以打包之前需要先安装apache ant。在终端上通过如下命令即可自动完成安装及设置。
sudo apt-get install ant1.7

安装完成后,进入到AXIS2_HOME/webapp目录,我们会看到ant的build文件:build.xml,在此目录下运行如下命令打包:
ant create.war

打包成功后,会在AXIS2_HOME/dist目录下看到刚打的包文件axis2.war。在运行上面的ant命令时,会根据build.xml文件中的指令,把AXIS2_HOME/repository目录中的模块和服务及AXIS2_HOME/conf/axis2.xml中的配置一并打包到axis2.war中。

4.把axis2安装到servlet容器

把刚才打包好的axis2.war复制到servlet容器中的webapps(tomcat)或deploy(jboss)目录中,当然也可以通过在servlet容器的配置文件中指定axis2.war文件的位置来加载war包(在jboss中,只通过设置JBOSS_HOME/server/default/conf/jboss-server.xml中的deploy来指定war文件位置的)。
然后重启servlet容器,成功的话,会在浏览器http://localhost:8080/axis2中看到如下所示,这其实就是启动了axis2的services服务器,并可以在此web应用中上传或删除服务:



点击“Services”链接,你会看到已安装了的服务,已成功安装了的服务会显示在avaliable service页面,如下:


如果服务在部署时报了错误,那么此服务会被当作失败的服务。点击该服务可以看到相应的失败信息。

在上面的主页面中,点击"Validate"链接来验证axis2服务是否都正确的启动。如果都已正确启动,会如下所示,表示axis2的核心服务库都已经加载:



在上面的主页面中,有一个"Administration"链接,进入后你会发现以下功能:
to check on the health of your Axis2 deployment.
to change any parameters at run time.
to upload new services into Axis2 [Service hot-deployment].

进入管理页面时,会要求输入用户名和密码,axis2默认的用户名和密码分别为:admin/axis2。
axis2提供了上传服务的接口,一旦按照axis2要求的服务规则实现了服务包(.aar文件),就可以在这个管理页面上把服务上传到axis2服务器上。已上传的服务会存储在默认的服务目录,对于 axis2为说此目录为<webapps>/axis2/WEB-INF/services目录中,上传的服务会即时生效,即不需要重启servlet容器。因为axis2支持热部署,因此可以通过删除文件系统中服务目录中的服务包来删除一个服务,也可以直接把服务文件复制到服务目录中为添加服务而不需要重启servlet容器。

关于axis2的安装先讨论到这里,后续会有关于axis2中服务相关的学习。
1
0
分享到:
评论

相关推荐

    axis2学习——客户端的开发

    这篇博客"axis2学习——客户端的开发"主要探讨了如何使用Axis2来创建和操作Web服务的客户端。 首先,让我们了解什么是Apache Axis2。Axis2是Axis1的下一代版本,它提供了更高效、更灵活的服务框架。它是基于模块化...

    axis2学习——开发自定义的axis2服务

    标题中的“axis2学习——开发自定义的axis2服务”表明了本文主要涉及Apache Axis2框架,这是一个用于构建Web服务和SOA(Service-Oriented Architecture)应用的开放源码平台。Axis2允许开发者创建、部署和管理服务,...

    Axis2精简包——小弟花了半个多小时整的,最后一看还有40M

    Axis2是Apache软件基金会开发的一个开放源码的Web服务引擎,它主要用于构建高效、可扩展且灵活的Web服务。这个“Axis2精简包”可能是由用户精心挑选并打包的一组核心组件,以满足那些只需要基本功能而无需全部模块的...

    Axis2例子Demo

    2. **服务部署**:Axis2支持两种部署方式——存档部署和热部署。存档部署通过将服务打包为`.aar`文件进行部署,而热部署允许直接通过类路径加载服务。 3. **模块**:模块是Axis2中的可插拔组件,可以添加额外的功能...

    myeclipse集成axis2

    这涉及到安装和配置Axis2库,理解并运用backport-util-concurrent-3.1.jar和geronimo-stax-api_1.0_spec-1.0.1.jar这两个依赖,以及参考"axis2_WebService_开发指南"来学习Web服务的创建、发布和调用。初学者可以...

    axis2-1.6.1-bin/axis2-1.6.1-war

    5. **压缩包子文件的文件名称列表**: 包含了两个zip文件——"axis2-1.6.1-bin.zip"和"axis2-1.6.1-war.zip",分别对应上述的两个组件。解压这两个文件后,开发者可以获得AXIS2运行时环境和可以直接部署的Web服务应用...

    axis2-1.4.1-bin

    标题“axis2-1.4.1-bin”指的是Apache Axis2的一个特定版本——1.4.1的二进制发布包。Apache Axis2是著名的开放源码Web服务引擎,它用于构建和部署Web服务以及处理SOAP消息。这个版本可能是Axis2的稳定版本,包含了...

    webservice axis2 cxf jar包及简单实例

    本文将深入探讨两种流行的Java Web服务框架——Axis2和CXF,并提供一个简单的实例来帮助理解它们的工作原理和使用方法。 首先,让我们了解一下`Axis2`。Axis2是Apache软件基金会开发的一个高性能、灵活且可扩展的...

    axis2 jar下载(1)

    标签“axis2 jar下载”直接指出了本话题的核心——获取Apache Axis2的JAR文件。这通常是通过访问Apache官方网站的下载页面来完成的,用户需要根据项目需求选择合适的版本和配置。 在压缩包子文件的文件名称列表中,...

    axis2-1.5.6-bin.zip

    标题“axis2-1.5.6-bin.zip”和描述中的“axis2-1.5.6-bin.zip”均指向了该框架的一个特定版本——1.5.6的二进制发行版。这个压缩包包含了运行和开发基于Axis2 Web服务所需的所有文件。 一、Apache Axis2简介 ...

    axis2-1.5.2-bin.zip

    综上所述,Axis2-1.5.2-bin.zip 包含了运行和配置 Axis2 的基本要素,但根据描述,可能存在缺失的关键组件——`lib` 目录,这对于正确运行 Axis2 是至关重要的。用户需要确保下载完整无误的版本,或者从其他来源获取...

    webServices学习之二——axis1传递复杂类型javabean

    总结一下,"webServices学习之二——axis1传递复杂类型javabean"这篇文章可能会详细讲解如何使用Axis1框架处理JavaBean对象,包括创建JavaBean、生成WSDL、部署服务以及客户端调用等步骤。了解这些内容对于开发基于...

    axis2-1.6.2-bin

    标题“axis2-1.6.2-bin”指的是Apache Axis2的一个特定版本——1.6.2的二进制发布包。Apache Axis2是Web服务引擎,它专注于提供高性能、可扩展性和灵活性,用于构建和部署Web服务。这个版本(1.6.2)包含了运行和...

    webservice学习二之(1)axis2服务器端方式开发总结(附件含有项目)

    【标题】:Web服务接口(WebService)学习二之(1)——Axis2服务器端开发总结 在本文中,我们将深入探讨使用Apache Axis2框架进行Web服务(WebService)服务器端开发的相关知识点。Apache Axis2是Java平台上一个高效...

    Axis2 1.5.5jar包

    3. **服务组件模型**:Axis2支持两种服务组件模型——Service Archetypes和Service Groups。前者用于定义单个服务,后者则允许将多个服务组织成组。 4. **高级传输机制**:Axis2不仅支持HTTP/S作为传输协议,还提供...

    WebService之Axis2经典教程

    2. **部署服务**: 在`axis2.xml`中配置服务,或者使用更简单的方式——无需任何配置文件即可部署服务。 3. **客户端调用**: 使用Java或.NET客户端调用部署好的Web服务。 **4.2 示例代码** - **服务端代码**: ```...

    myeclipse中Axis2插件

    本文将详细介绍在MyEclipse中使用Axis2插件——axis2-eclipse-codegen-wizard和Axis2_Service_Archiver,以及如何利用这两个工具来简化Web服务的开发过程。 首先,我们来看"axis2-eclipse-codegen-wizard"。这是一...

    Axis安装步骤学习中

    通过以上步骤,我们完成了Axis 1.4的安装配置,并成功发布了一个简单的Web服务——Calculator。此外,还通过客户端调用了该服务的方法,验证了其功能的正确性。Axis的安装过程相对简单,但需要注意细节配置,确保...

    axis2-1.7.7-bin所有jar包

    标题 "axis2-1.7.7-bin所有jar包" 提到的是Axis2的一个特定版本——1.7.7的二进制发行版中的jar包集合。Axis2是一个开源的Web服务引擎,它允许开发者创建、部署和管理Web服务。在Java世界中,Web服务通常基于SOAP...

Global site tag (gtag.js) - Google Analytics