Linux安装Axis C构建WebService服务

在安装Axis C++之前有两个组件是必须安装的,分别是Apache HTTP Server以及用于处理XML的程序Xerces;为了编译Axis以及Apache HTTPD,你的Linux机器还应该装有gcc编译器。

3个部件的都采用源码安装,它们都有类似的步骤:

  1. 上传并解压安装包
  2. 设置环境变量
  3. 利用configure生成Makefile
  4. 编译安装到usr/local/对应目录下

本文部署路径为apache安装在/usr/local/apache2,Axis2C
1.6 安装到/usr/local/axis2c,Xerces
3.0.1安装到/usr/local/,Xerces 3.0.1以头文件和库文件分别分别在/usr/local/include
/usr/local/lib

提示:安装过程中如果出错,要注意检查环境变量设置是否正确以及是否生效。如果运行./configure出错,请检查安装的工具链如gcc,libtool等是否符合版本要求。如何make install出错,请确定当前用户是否有相应的安装权限。

推荐安装方式:统一使用root用户安装,之后再将权限授予对应的用户。本文也采用这种方式进行。

一、安装前准备

  1. 确认登陆root用户
    su - root

二、Linux主机源码安装Apache

1.上传并解压安装包
http://httpd.apache.org/下载源代码httpd-2.2.27.tar.gz(或其他版本),上传到linux主机.
解压源码包
tar -zxvf httpd-2.2.27.tar.gz
这时会出现一个httpd-2.2.27的目录,将它改名为apache
mv httpd-2.2.27 apache

2.设置环境变量

3.利用configure生成Makefile
进入apache目录下
cd apache
设置安装参数
./configure --prefix=/usr/local/apache2
--enable-module=so

第一个参数prefix为安装的路径,第二个参数enable-module=so表示允许动态加载模块。
prefix参数指明将apache安装到/usr/local/apache2目录,如果登录用户不是root,可能没有权限在/usr/local下创建目录的权限,这样在make
install
时会报错误。解决的办法有两个

  • 修改prefix参数,使之指向一个登录用户有创建目录权限的路径
  • root用户在/usr/local目录下创建apache2目录,然后将目录apache2wrx权限授权给登录用户。
    当然我们使用第二种方式,使用root用户安装。

4.编译安装到对应目录下
make
make install

总之,安装顺序执行的命令序列如下,如果都没有出错,表示安装成功:
tar -zxvf httpd-2.2.6.tar.gz
mv httpd-2.2.6 apache
cd apache
./configure --prefix=/usr/local/apache2
--enable-module=so

make
make install #可能需要root权限

接下来Xerces 3.0.1和Axis2C 1.6 的安装都是类似的步骤.

三、Xerces 3.0.1源码安装

1.上传并解压安装包
http://archive.apache.org/dist/xml/xerces-c/下载源码,上传的Linux主机。
解压包
tar -zxvf xerces-c-3.0.0.tar.gz

2.设置环境变量
添加环境变量,vi .bashrc,在文件最后添加如下一行
export XERCESCROOT=$HOME/xerces-c-3.0.1
export LIBPATH=$HOME/xerces-c-3.0.1:$LIBPATH
重新引用环境变量:
. .bashrc

注意$HOME/xerces-c-3.0.1是我们解压文件的路径。
3.利用configure生成Makefile
进入源代码目录
cd $XERCESCROOT/
运行脚本生成makefile文件:
autoconf
./reconf #注意这一步
./configure --prefix=/usr/local

4.编译安装到对应目录下
make
make install #可能需要root权限

四、Axis2C 1.6 源码安装

1.上传并解压安装包
下载安装包http://axis.apache.org/axis2/c/core/download.cgi,并上传到linux主机。
解压包
tar -zxvf axis2c-src-1.6.0

2.设置环境变量
vi ~/.bashrc,在文件最后添加如下一行
export AXIS2_HOME=$HOME/axis2c-src-1.6.0
export AXIS2C_HOME=/usr/local/axis2c/
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:${AXIS2C_HOME}/lib/
export PATH=$PATH:${AXIS2C_HOME}/bin/tools/wsdl2c/
重新引用环境变量:
. .bashrc

3.利用configure生成Makefile
进入目录
cd axis2c-src-1.6.0
运行脚本生成makefile文件:
autoconf
./configure

4.编译安装到对应目录下
make
make install #可能需要root权限

5.启动验证:
首先启动httpd服务,运行命令apachectl start
进入/usr/local/axis2c/bin目录,启动sudo
./axis2_http_server

在浏览器中输入http://ip:9090/axis/services,ip为服务器的ip地址。如果访问成功,则说明启动成功,否则回头检查以上3个部件的安装是否成功.


五、启动配置说明

5.1 axis2c账务接口启停配置

  1. 添加环境变量
    export AXIS2C_CONF=/usr/local/axis2c/service/BillingService/webservice.conf
    AXIS2C_CONF为配置文件的全路径文件名
    重新引用环境变量:
    . .bashrc
  2. 添加你的应用的接口文件WebSimple
    接口文件会以一个文件夹WebSimple的上传,将其复制到/usr/local/axis2c/services/目录下,文件结构如下:
    |--/usr/local/axis2c/services/
    |------WebSimple/
    |----------service.xml
    |----------WebSimple.wsdl
    |----------libWebSimple.so
    |----------webservice.conf
    其中WebSimple.wsdl是webservice的接口定义文件,service.xml为对应的xml文件,libWebSimple.so为动态库,webservice.conf为配置文件。
    自此,安装的步骤已经基本完成。但是程序的启停还只能用root用户进行。我们还需要将权限授予合适的用户。
  3. 修改 apache httpd配置
    apache主要目录和文件说明
    主配置文件位置/usr/local/apache2/conf/httpd.conf或者/etc/httpd/conf/*
    日志文件/usr/local/apache2/logs
    配置文件httpd.conf部分参数说明
    ServerRoot "/usr/local/apache2"
    服务器文件位置
    Listen 80 或者Port
    80
    在standlone方式下监听的端口号
    User daemon 进程运行的属主
    Group daemon 进程运行的属组
    ServerAdmin you@example.com 管理员信箱(可以修改为自己的邮箱)
    ServerName www.example.com:8000
    服务器指定名称和端口号,名称也可以是ip地址
    DocumentRoot "/usr/local/apache2/htdocs"
    文档服务的根目录
    ScriptAlias /cgi-bin/ "/usr/local/apache2/cgi-bin/"
    为一个目录建立别名
    不同版本的apache,在目录和参数名字上有微小的差异,根据名字一般都能猜出来。如有需要,请根据具体情况修改配置内容。
  4. 添加一个apache用户,用来管理程序的启停
    adduser apache #(添加apache用户,按提示进行,密码设置为apache)
    将文件路径/usr/local/axis2c和/usr/local/apache2的属主更改为apache
    chown -R apache /usr/local/axis2c/
    chown -R apache /usr/local/apache2/
    这里,我们使用的是apache用户,你也可以不使用apache用户,换成你想要的用户即可。
  5. 启动
    进入/usr/local/axis2c/bin目录,启动axis2服务程序./axis2_http_server。如果准备使用后台启动的话,可以使用nohup
    ./axis2_http_server &
    .
    验证:在浏览器中输入http://ip:9090/axis/services/WebSimple?wsdl,ip为该服务器的ip地址。如果访问成功,会返回一个xml文件。
    提示:如果启动axis2_http_server程序失败,可能是当前用户没有权限,需要切换到用权限的用户来启动,如:su
    - apache
  6. 停止
    如果是直接启动axis2_http_server的话,按下ctrl+c即可终止程序。后台启动的话可以用kill来终止服务。


欢迎光临我的网站----蝴蝶忽然的博客园----人既无名的专栏
如果阅读本文过程中有任何问题,请联系作者,转载请注明出处!

时间: 2025-01-02 21:26:48

Linux安装Axis C构建WebService服务的相关文章

使用ownCloud在Linux安装你的个人云服务

ownCloud是一个免费开源的软件,用于为分享文件,日历,联系人,书签和个人音频/视频.非常容易安装和管理. 前提 在这篇教程里我使用CentOS 6.5 minimal server来安装ownCloud.下面是我测试机的资料. Operating system: CentOS 6.5 Minimal Installation IP Address: 192.168.1.101/24 在CentOS 6.5上测试了一段时间,ownCloud适用于所有基于RPM的发行版. 你的服务应该工作在L

使用ServiceStack构建Web服务

提到构建WebService服务,大家肯定第一个想到的是使用WCF,因为简单快捷嘛.首先要说明的是,本人对WCF不太了解,但是想快速建立一个WebService,于是看到了MSDN上的这一篇文章 Building Cross-Platform Web Services with ServiceStack,所以这里简要介绍一下如何使用ServiceStack快速建立一个WebService服务. 当然,在开始之前,首先要说明一下ServiceStack是个什么东西. 在国内用ServiceStac

通过Ruby on Rails和docker构建微服务架构之入门教程

说到时下的架构,免不了会涉及到微服务.而谈到微服务架构,又跟容器和Docker技术脱不了关系.虽然容器和Docker并不完全是一回事,但两者是密不可分的,而且二者之间也有共同之处:在大型复杂应用的构建和运营方面,二者都可以大大提高企业的效率.   微服务可不像一般的应用,可以通过apt-get工具进行安装,大家可能会问了:我们该如何才能像安装应用一样实现这种服务呢?在很大的程度上,这个问题的答案是否定的,我们无法轻松实现这种服务.更准确的说,至少目前我们还无法实现.在一个系统中,最难修改的就是架

用JAX-RPC构建RPC服务和客户机:使用Java API构建基于RPC的Web服务(一)

简介:远程过程调用(RPC)是基于 Simple Object Access Protocol(SOAP)或 Representational State Transfer(REST)的现代 Web 服务的前身.因为所有 Java 平台的 Web 服务 API 都构建 在从 RPC 引入的概念之上,所以要想用 Java 语言编写有效且高效的 Web 服务,理解 Java API for XML-Based RPC(JAX-RPC)几乎是必需的.本教程讲解如何获取.安装和配置 JAX-RPC 并构

WSE3.0构建Web服务安全(3) WSE3.0策略配置、证书、签名与实例开发

继WSE3.0构建Web服务安全(1):WSE3.0安全机制与实例开发和WSE3.0构建Web服务安全(2):非对称加密.公钥.密钥.证书.签名的区别和联系以及X.509 证书的获得和管理之后,今天我们继续WSE3.0构建Web服务安全系列文章的第3节:WSE3.0策略配置与实例开发.本节主要讲解如何通过WSE3.0策略配置工具实现Web服务安全,本在全文附带代码讲解.本节结构为1.WSE3.0策略工具介绍2.如何使用WSE3.0策略工具3.代码实现与分析4.总结.最后附上代码供大家下载. 通过

WSE3.0构建Web服务安全(1) WSE3.0安全机制与实例开发

继<WCF分布式应用程序开发必备知识>系列之后,经过一周的时间,我准备了关于如何使用WSE3.0进行Web Service安全开发的文章--<WSE3.0构建Web服务安全>,写出来一起与大家分享.<WCF分布式应用程序开发必备知识系列>第4节Web服务已经涉及到Web服务安全的问题.这个系列仍是对以前技术的整理和学习的文章.我在整理的过程中也收获很多,对整个WSE3.0的安全机制有的新的认识.不管高手还是菜鸟,都希望你能从我的这个系列文章里有所收获.那么我们就来一起学

Java微服务开发指南 -- 使用WildFly Swarm构建微服务

使用WildFly Swarm构建微服务     我们最后介绍一个新的微服务框架,它构建在支持分层且可靠的JavaEE技术栈上(使用JBoss WildFly 应用服务器),WildFly Swarm是一个完全兼容WildFly应用服务器,它基于可重用的组件,这里称为元件(fractions)来组成微服务应用.组装这些元件和你使用maven或者gradle去添加依赖一样简单,你只需要声明元件,WildFly Swarm将会帮助你完成后续的工作.     应用服务器和JavaEE在企业级Java应

利用AXIS简单搭建WebService

1. 下载AXIS相关压缩文件http://axis.apache.org/axis2/java/core/共4个压缩包,分别为axis2-1.5.4-bin.zip,axis2-1.5.4-docs.zip,axis2-1.5.4-src.zip,axis2-1.5.4-war.zip我们当前只用到war文件 2. 把war文件解压放至Tomcat的WebAPPS目录下 3. 编辑一个类,此类有相关的方法假设该类的全路径名为service.MyService package service;

使用Spring Cloud和Docker构建微服务

本文讲的是使用Spring Cloud和Docker构建微服务,[编者的话]这是系列博文中的第一篇,本文作者使用Spring Cloud和Docker构建微服务平台,文章的例子浅显易懂. 本系列博文主要向大家介绍如何使用Spring Cloud和Docker构建微服务平台. 什么是Spring Cloud? Spring Cloud 是Pivotal提供的用于简化分布式系统构建的工具集.Spring Cloud引入了云平台连接器(Cloud Connector)和服务连接器(Service Co