webservice:Axis2


    

一、简介:

    Axis2 基于新的体系结构进行了全新编写,具有更强的灵活性并可扩展到新的体系结构,灵活的应用Web 服务标准和协议(如 WS-Security等)

    是新一代的SOAP引擎

二、准备

   axis2所需包下载:http://axis.apache.org/axis2/  ,可用最新版本1.6.2

   使用eclipse开发,版本 eclipse-jee-indigo-win32

   Tomcat版本:5.0 以上,本人用的6.0

三、配置axis2

1、Eclipse-->点击菜单windows-->Preferences-->WebServices--> Axis2 Preferences -->设置 Axis2 runtime location为Axis2下载后并解压的核心包的位置:

 

后Eclipse会自动检测包是否正确。如果successfully提示表示设置正确。

 

四、搭建eclipe的服务器service环境

1、创建server项目

  

 

2、选择Tomcat6.0

  

 

3、完成,这个时候我们就可以在eclipse中创建web项目了

五、创建dynamic web project

eclipse本身的dynamic web project类似MyEclipse的web project,如果在MyEclipse里创建dynamic web project的话,需要在创建新项目时,选中Show All Wizards:

和创建其他项目类似,还是从file->new->other->web->dynamic web project,

 

   

  在Eclipse创建一个 WebProject时, 点击这个WebProject名字-->右键Properties-->Project Facets中可以设置Web Module。

 

六、服务器端webservice开发

1、eclipse发布WebService

OK,我们现在已经创建了一个WEB工程websercom,现在我们创建一个包com.test.webservice和一个用于测试的java类TestWebSer.java,代码如下


发布webservice

a、 选中WsPerformenceTest.java文件,点击右键,新建一个Web Service,然后Next

 

b、上下分别有个滑块,把上面的滑块滑至最上端(为Test service)。把下方滑块滑至第二格(Develop client)表示生成当前服务的客户端代码(完成后会在Eclipse中会自动生成一个名字为:[当前工程名+Client]的工程)。点击下一步直至完成。步骤如图:

 

 这里的Web Service runtime需要选择Apache Axis2

C、 启动Server,然后下一步。

D、.这些选项一直保持默认值到完成。我们发现Eclipse已经自动生成了一个新的客户端Web工程,还可以看到Web Service Explorer中显示我们刚刚对外公开的test服务,如下图:

当前列出了当前公开服务的方法及参数。当前的唯一方法test有一个InputBean类型的input参数。点击 Add,转到下图:

点击Go按钮。此时下面的 Status(状态窗口)中会显示调用该方法后的结果。点击Source可以浏览到已经被SOAP分装好该服务的XML文件。

 

显示生成webserviceClient

 

部署启动Tomcat后客户端显示

 

  产生wsdl    地址 http://localhost:8080/websercon/services/TestWebSer?wsdl

七、webservice客户端开发

    在六模块中已经介绍,在生成服务端webservice时直接用eclipse生成webservice客户端。

    但是,我们一把在开发的时候,不会用到这种方式,很多时候,我们能够拿到的只是wsdl地址,我们应该怎样做,OK,下面说一下,怎么webservice的客户端的开发,用一个接单的DEMO说明

1、新建一个web工程

    建立web工程做法如上:webClientTest工程

2、使用wsdl地址生成客户端代理等。

我们使用刚才建立的wsdl地址的服务器端

 

3、编辑客户端代码

package com.test.main;

import java.rmi.RemoteException;

import org.junit.Test;

import com.test.webservice.TestWebSerProxy;

public class TestService {
 @Test
 public void testAddService(){
  TestWebSerProxy proxy = new TestWebSerProxy();
  String str = null;
  try {
   str = proxy.add("1","2");
  } catch (RemoteException e) {
   // TODO Auto-generated catch block
   e.printStackTrace();
  }
  System.out.println("test axis webservice method add:" + str);
 }
}

3、部署测试就OK了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值