`

WebService入门简单实例(采用AXIS的方式)

阅读更多

1.在JAVAEE的环境下新建一web工程项目,之后在src下新建一个类如HelloWorld.java,内容如下:

public class HelloWorld {  
      
    public String querySingle(String userName_, String password_, String type_, String param_){  
        String resultStr="Hello," + userName_ + "," + password_ + ", " + type_ + ", " + param_;  
       
        System.out.println(resultStr);  
        return resultStr;  
    }  
}

 2.这个类将要扮演webservice服务端的角色,而querySingle这一方法即为webservice服务端所提供的接口方法。接下来创建webservice服务端,选择HelloWorld.java类右键新建web service

   

点击下一步

继续下一步,直到完成。

3.webservice创建完毕后会发现WEB-INF下的lib目录中增加了6个AXIS的jar包,和其它一些自动生成的相关配置文件;

4.测试web service:右击HelloWorld.wsdl---Web Services---Test with Web Services Explorer---点击方法名querySingle----输入参数abc,def,ghi,jkl---点go.此时会发现控制台输出Hello,abc,def, ghi, jkl,说明测试成功。WebService没有问题。 

 

5.编写客户端调用类,利用AXIS调用HelloWorld.代码如下:

import java.rmi.RemoteException;

import javax.xml.rpc.ParameterMode;
import javax.xml.rpc.ServiceException;

import org.apache.axis.client.Call;
import org.apache.axis.client.Service;
import org.apache.axis.encoding.XMLType;

public class HelloWorldTest {
    
    public String invokeRemoteFuc() {
        // 远程调用路径
        String endpoint = "http://localhost:8080/WebServiceTest/services/HelloWorld";
        String result = "call failed!";
        Service service = new Service();
        Call call;
        
        try {
            call = (Call) service.createCall();
            call.setTargetEndpointAddress(endpoint); 
            // 调用的方法名
            call.setOperationName("querySingle"); 
            
            // 设置参数名
            call.addParameter("userName_",   // 参数名
                    XMLType.XSD_STRING, // 参数类型:String
                    ParameterMode.IN);  // 参数模式:'IN' or 'OUT'
            call.addParameter("password_",   // 参数名
            		XMLType.XSD_STRING, // 参数类型:String
            		ParameterMode.IN);  // 参数模式:'IN' or 'OUT'
            call.addParameter("type_",   // 参数名
            		XMLType.XSD_STRING, // 参数类型:String
            		ParameterMode.IN);  // 参数模式:'IN' or 'OUT'
            call.addParameter("param_",   // 参数名
            		XMLType.XSD_STRING, // 参数类型:String
            		ParameterMode.IN);  // 参数模式:'IN' or 'OUT'

            // 设置返回值类型
            call.setReturnType(XMLType.XSD_STRING); // 返回值类型:String
            String userName_ = "qiangjiyi";
            String password_ = "123";
            String type_ = "456";
            String param_ = "789";
            result = (String) call.invoke(new Object[] { userName_, password_, type_, param_ });// 远程调用
        } catch (ServiceException e) {
            e.printStackTrace();
        } catch (RemoteException e) {
            e.printStackTrace();
        }
        
        return result;
    }

    // 测试
    public static void main(String[] args) {
        HelloWorldTest test = new HelloWorldTest();
        String result = test.invokeRemoteFuc();
        System.out.println(result);
    }

}

  注意:1、设置方法名和参数名的时候,必须与被调用的WebService保持一致;2、传递的参数需封装到一个Object数组里) 

6.测试:选中HelloWorldTest右键 ---Run as---Java application,如果发现控制台正确输出Hello,qiangjiyi,123, 456, 789.说明测试成功。 至此一个简单的webservice示例就算完事。

 

温馨提示:附件中包含有axis所需的jar包,希望可以帮助各位新手入门!

 

  • 大小: 151.5 KB
  • 大小: 301.4 KB
  • 大小: 22.8 KB
  • 大小: 211.3 KB
  • 大小: 44.8 KB
分享到:
评论

相关推荐

    Axis WebService 实例源码

    Tomcat+Axis+WebService 入门实例,讲述如何实现WebService的传递信息,

    Axis2 WebService 开发指南 技术文档 入门文档

    Axis的入门实例 Axis复杂对象类型的WebService Axis的辅助工具发布、调用WebService Axis WebService会话Session的管理 Axis用控制台Dos命令发布WebService Axis跨多个WebService管理Session Axis用Spring的...

    axis2;WebService

    Axis的入门实例 Axis复杂对象类型的WebService Axis的辅助工具发布、调用WebService Axis WebService会话Session的管理 Axis用控制台Dos命令发布WebService Axis跨多个WebService管理Session Axis用Spring的JavaBean...

    WebService大讲堂之Axis2,多个实例

    WebService大讲堂之Axis2,多个实例,非常全的文档,从新手入门开始到复杂的实例

    Axis WebService 技术指南,开发文档

    Axis的简单入门实例 Axis的jws发布WebService Axis的wsdd模式发布WebService Axis中传递复杂对象和内部类 Axis中的handler、chain的特性 Axis中处理异常信息 Axis中传递文件信息 Axis常用命令介绍 Axis 提供的工具和...

    axis2_WebService_开发指南

    Axis 的入门实例 Axis 复杂对象类型的WebService Axis 的辅助工具发布、调用WebService Axis WebService 会话Session 的管理 Axis 用控制台Dos 命令发布WebService Axis 跨多个WebService 管理Session Axis 用Spring...

    AXIS2入门+进阶+webservice实例

    AXIS2入门+进阶+webservice实例。共3个文档。

    axis2_webservice

    Axis的入门实例 Axis复杂对象类型的WebService Axis的辅助工具发布、调用WebService AxisWebService会话Session的管理 Axis用控制台Dos命令发布WebService Axis跨多个WebService管理Session Axis用Spring的JavaBean...

    axis2 webservice入门手册(JS,Java,PHP调用实例源码)www.sietoo.com出品

    最近接触到一个银行接口的案子,临时需要用到axis2 webservice。自己现学现总结的一些东西,留给新手。少走弯路。 Axis2简介 ①采用名为 AXIOM(AXIs Object Model)的新核心 XML 处理模型,利用新的XML解析器提供...

    Java的webservice开发与测试入门例子

    最简单的webservice的例子,包括服务端与客户端,有axis、xfire的两种方式的实现

    axis2开发Web Services入门

    用axis2开发Web Services,内容包括环境搭建,插件安装,以及用axis2开发Web Services的详细步骤及实例程序;

    axis入门到深入及完全部署手册

    axis使得webservice相当简单,半天就可以精通

    利用Axis框架开发Webservice需要的开发包

    包括Axis开发Webservice所需要的四个开发包:axis-bin-1_4.zip、jaf-1_1-fr.zip、javamail-1_4.zip、xml-security-bin-1_3_0.zip;另有开发环境的搭建和入门实例学习。

    axis学习资料汇总

    axis学习资料汇总: Axis实例与分析详解; Axis学习笔记.pdf; Tomcat5.0.28下AXIS完全安装手册.doc; Axis1.4 开发指南_V1.0.pdf; AXIS入门及应用.rar; Axis开发Web+Services.doc 等等

    Web Services实例sample

    Web Services实例,初学者入门,Web Services using Apache Axis2- Sample

Global site tag (gtag.js) - Google Analytics