Axis2框架与S2SH框架融合

5.1 服务器端开发
5.1.1 服务器端开发环境搭建
     搭建服务器端开发环境,主要有以下两个难点:
1. 开发工具Myeclipse中Axis2插件的安装;
2. 在Web Project中如何实现S2SH框架的融合。
搭建基本步骤如下:
Axis2安装部署
一、 下载Axis2安装包和Axis2.war文件
  将Axis2解压到D盘根目录下。将Axis2.war拷贝到Tomcat的webapp目录下,在浏览器中输入地址http://127.0.0.1:8080/axis2/如下图所示:

二 Axis2的插件安装
一、直接把1.4插件中解压的文件夹:Axis2_Codegen_Wizard_1.3.0和Axis2_Service_Archiver_1.3.0放入:Genuitec\MyEclipse-8.6\dropins下
启动Myelipse后会出现在用axis2生成java代码的时候出现n error occured while completing process java.lang.reflect.invocationtargetex这个错误,错误解决方案如下:
一、关闭MyEclipse-8.6
二、 拷贝axis2-1.4文件夹下面的lib目录下的"backport-util-concurrent-3.1.jar"和 "geronimo-stax-
api_1.0_spec-1.0.1.jar"到MyEclipse-8.6的安装目录下的Genuitec\MyEclipse-8.6\dropins\Axis2_Codegen_Wizard_1.3.0\lib";

三、修改MyEclipse-8.6的安装目录下的
        1."Genuitec\MyEclipse-8.6\dropins\Axis2_Codegen_Wizard_1.3.0\plugin.xml";
   添加如下内容:
      <library name="lib/backport-util-concurrent-3.1.jar">
        <export name="*"/>
      </library>
2.修改plugin.xml中的version  "1.3.0"改为 "1.4.0"
四、 进入."Genuitec\MyEclipse-8.6\dropins\将"Axis2_Codegen_Wizard_1.3.0" 文件夹改 为"Axis2_Codegen_Wizard_1.4.0".
五、重新启动MyEclipse8.6。


第三步 构建服务器端项目整体框架。
不仅需要完成整个项目的结构设计,还需要完成最为关键,也是项目开发必要的前提条件,在Web Project中实现S2SH框架的高效融合。
对于框架融合问题解决方案如下所述:
1. Web Project中的Axis2配置
首先将Tomcat6.0的webapps/axis2/WEB-INF目录下的文件夹conf、modules、services和 web.xml,拷入MyEclipse新建的Web Project的WEB-INF目录下,另外和axis-web文件夹也拷入项目中如下图所示:

Axis2框架与S2SH框架融合_第1张图片

在浏览器地址栏中输入
http://127.0.0.1:8080/giservicemap/axis2/services/Version?wsdl
出现下面的结果说明配置成功。

Axis2框架与S2SH框架融合_第2张图片


2. 修改web.xml,配置S2SH框架的初始文件。
在web.xml文件中添加Struts2的FilterDispatcher类和filter-mapping的url-pattern为.action,这里尤其注意不能像以前一样配置.*,这会与Axis2的Servlet发现冲突,导致不能将接受到.action的请求提交给Strut2进行处理。
    配置Spring时基本与S2SH框架相同,但是这里需要指定两个不同的applicationContext.xml文件,一个是classpath*:applicationContext.xml用来完成业务逻辑的松耦合特性,/WEB-INF/applicationContext.xml用来配置通过Axis2中需要发布的服务接口实现类所需的bean,在后面会详细介绍。由于是拷入Axis2.war的web.xml对于Axis2的配置就不用修改,整个web.xml配置如下图所示:
Axis2框架与S2SH框架融合_第3张图片


    
3. 完成项目目录结构的设计,在这一步需要根据需要分别将数据库访问操作类、发布的服务、算法实现类、pojo类、webaction等等,使得整体项目的功能层次划分的比较清晰明朗。整体结构图如下:
dao、dao/impl主要工作是数据库操作类;
service、service/impl主要负责具体的请求数据操作,如按姓名查找用户;
webservice主要是实现发布服务的接口函数,通过Axis2就可以完成服务的发布;
entity、webvo、hiber主要是基础的准备,包括pojo完成Hibernate关系映射,webvo实现页面的数据展示,hiber主要是调用Hibernate提供的函数操作数据库;
hydrology是核心算法包,完成水文分析中的具体算法的编写。
test是编写基本的测试类。

原创作者:汪秀兵  http://bioubiou.iteye.com/


你可能感兴趣的:(axis2)