import javax.xml.namespace.QName;

import org.apache.axis2.AxisFault;

import org.apache.axis2.addressing.EndpointReference;

import org.apache.axis2.client.Options;

import org.apache.axis2.rpc.client.RPCServiceClient;

public class WSClient {

/**

     * @param args

     */

    

    //通过webservice获得密码的方法

    public String getPassword(String userName,String envType){

        String result="";

        String serviceUrl="http://localhost/axis2/services/GetPassword";

        try {

        //  使用RPC方式调用WebService          

            RPCServiceClient serviceClient = new RPCServiceClient();  

            Options options = serviceClient.getOptions();  

            //  指定调用WebService的URL  

            EndpointReference targetEPR = new EndpointReference(serviceUrl);

            options.setTo(targetEPR);

            //  指定getPsw方法的参数值  

            Object[] opAddEntryArgs = new Object[] {userName,envType};  

            //  指定getPsw方法返回值的数据类型的Class对象  

            Class[] classes = new Class[] {String.class};  

            //  指定要调用的getPsw方法及WSDL文件的命名空间  

            QName opAddEntry = new QName("http://ws.apache.org/axis2", "getPsw");

            

            //  调用getPsw方法并输出该方法的返回值  

            

            result = serviceClient.invokeBlocking(opAddEntry, opAddEntryArgs, classes)[0].toString() ;

            //System.out.println("---------------Password--------------"+result);

            

        }

        catch (AxisFault e) {

            // TODO Auto-generated catch block

            e.printStackTrace();

        }  

        return result;

    }

    

    public static void main(String[] args) {

        // TODO Auto-generated method stub

        

        String userName="Test";

        String envType="Test";

        String s ="";

        WSClient wsClinet = new WSClient();

        s = wsClinet.getPassword(userName, envType);

        System.out.println("-------Jake Yu S------------"+s);

        

/*        

        try {

            //  使用RPC方式调用WebService          

                RPCServiceClient serviceClient = new RPCServiceClient();  

                Options options = serviceClient.getOptions();  

                //  指定调用WebService的URL  

                EndpointReference targetEPR = new EndpointReference(  

                        "http://localhost/axis2/services/GetDBStatus");  

                options.setTo(targetEPR);  

                //  指定sayHelloToPerson方法的参数值  

                Object[] opAddEntryArgs = new Object[] {""};  

                //  指定sayHelloToPerson方法返回值的数据类型的Class对象  

                Class[] classes = new Class[] {String.class};  

                //  指定要调用的sayHelloToPerson方法及WSDL文件的命名空间  

                QName opAddEntry = new QName("http://ws.apache.org/axis2", "getStatus");  

                //  调用sayHelloToPerson方法并输出该方法的返回值  

                System.out.println(serviceClient.invokeBlocking(opAddEntry, opAddEntryArgs, classes)[0]);

            } catch (AxisFault e) {

            // TODO Auto-generated catch block

            e.printStackTrace();

        }  */

        

    }

}

备注:需要导入Axis2中所有的包.

Java如何访问Axis2服务端的更多相关文章

  1. JAVA通过http访问其他服务端API

    项目要实现这么一个功能,用户通过点击按钮,通过axios来访问python的API(算法,java不好做)得到一个结果存储到数据库并且返回到页面. 但是python不是在tomcat上面运行的,所以不 ...

  2. CAS 5.1.x 的搭建和使用(四)—— 配置使用HTTP协议访问的服务端

    CAS单点登录系列: CAS 5.1.x 的搭建和使用(一)—— 通过Overlay搭建服务端 CAS5.1.x 的搭建和使用(二)—— 通过Overlay搭建服务端-其它配置说明 CAS5.1.x ...

  3. java开源即时通讯软件服务端openfire源码构建

    java开源即时通讯软件服务端openfire源码构建 本文使用最新的openfire主干代码为例,讲解了如何搭建一个openfire开源开发环境,正在实现自己写java聊天软件: 编译环境搭建 调试 ...

  4. java http post/get 服务端和客户端实现json传输

    注:本文来源于<java http post/get 服务端和客户端实现json传输> 最近需要写http post接口所以学习下. 总的还是不难直接上源码! PostHttpClient ...

  5. webservice -- cxf客户端调用axis2服务端

    背景: 有个项目, 需要由第三方提供用户信息, 实现用户同步操作, 对方给提供webservice接口(axis2实现)并也使用axis2作主客户端调用我方提供的webservice接口 起初, 由于 ...

  6. Java的oauth2.0 服务端与客户端的实现

    oauth原理简述 oauth本身不是技术,而是一项资源授权协议,重点是协议!Apache基金会提供了针对Java的oauth封装.我们做Java web项目想要实现oauth协议进行资源授权访问,直 ...

  7. [Java]Hessian客户端和服务端代码例子

    简要说明:这是一个比较简单的hessian客户端和服务端,主要实现从客户端发送指定的数据量到服务端,然后服务端在将接收到的数据原封不动返回到客户端.设计该hessian客户端和服务端的初衷是为了做一个 ...

  8. 允许浏览器跨域访问web服务端的解决方案

    今天和同事探讨了前后端如何真正实现隔离开发的问题,如果前端单独作为服务发布,势必会涉及到无法直接调用后端的接口的问题,因为浏览器是不允许跨域提交请求的. 所谓跨域访问,就是在浏览器窗口,和某个服务端通 ...

  9. Java网络编程(TCP服务端)

    /* * TCP服务端: * 1.创建服务端socket服务,并监听一个端口 * 2.服务端为了给客户端提供服务,获取客户端的内容,可以通过accept方法获取连接过来的客户端对象 * 3.可以通过获 ...

随机推荐

  1. 应用程序打包(ipa)

    如果想让用户可以安装ipa, 必须在打包程序的时候说清楚哪一个应用程序(appid)可以安装到哪一台设备上.(UDID). 原理: 要想打包, 告诉苹果, 哪一台电脑可以进行打包 步骤: 让电脑端具备 ...

  2. input里面check 状态检测

    if($("#check_status").attr('checked')) //检测checkbox状态 { //checked状态 }else { //不是checked状态 ...

  3. blockUI

    组件主页 主要使用到 blockUI 组件实现 将jquery和组件的JS下载到本地 然后直接就可以实现遮罩层功能 显示遮罩层:$.blockUI(); 隐藏遮罩层:$.unblockUI(); 该网 ...

  4. [转]轻量级 Java Web 框架架构设计

    工作闲暇之余,我想设计并开发一款轻量级 Java Web 框架,看看能否取代目前最为流行的而又越来越重的 Spring.Hibernate 等框架.请原谅在下的大胆行为与不自量力,本人不是为了重造轮子 ...

  5. Audio笔记之MediaPlayerService:setDataSource

    //下面是一个典型的播放序列: MediaPlayer player=new MediaPlayer() player->setDataSource(url,header); player-&g ...

  6. MySql命令——命令行客户机的分隔符

    delimiter // create procedure productpricint() begin select avg(price) as priceaverage from product; ...

  7. ie6+7+8等对background-color:rgba(),background-img渐变的兼容

    一,ie8兼容rgba()的解决办法 今天遇到了一个问题,要在一个页面中设置一个半透明的白色div.这个貌似不是难题,只需要给这个div设置如下的属性即可: background: rgba(255, ...

  8. HTML - EMail链接

    HTML - EMail链接 HTML Email 标签 在标签中,提供一个email地址,你就可以让用户发送邮件,格式是: <a href= "mailto:jack@kingyar ...

  9. 【SQL语句】 - Ctrl+3 查询表属性的存储过程 [sp_select_talberowName]

    /**-- ============================================= Author: xftCteateDate: 2013-10-11Description:查看表 ...

  10. hitTest:withEvent:方法(此方法可实现点击穿透、点击下层视图功能)

    此方法可实现点击穿透.点击下层视图功能 一. hitTest:withEvent:调用过程 iOS系统检测到手指触摸(Touch)操作时会将其放入当前活动Application的事件队列,UIAppl ...