Java如何访问Axis2服务端
来源:互联网 发布:淘宝职业买手 编辑:程序博客网 时间:2024/05/14 23:30
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();
} */
}
}
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服务端
- 【webservice】如何发布axis2的webservice服务端
- axis2 服务端
- 服务端利用Axis2.x发布WebService,客户端Flex4访问
- 采用axis2方式Java客户端调用WCF服务端Web Service
- axis2访问
- axis2 创建服务端 客户端
- axis2调用服务端
- Axis2调用服务端
- Axis2 作为服务端发布
- 搭建简单axis2服务端
- 如何访问内网的TCP服务端
- 基于Axis2开发WebService-服务端
- Axis2服务端与客户端程序
- Java访问非.NET的webservice(axis2方式)
- 关于java中Axis2客户端调用C#webservice服务端包含Cookie问题
- axis2 访问 axis 1.4
- axis2访问webservice
- “OpenStack Object Storage API v1”解析
- ora-28056 (Writing audit records to Windows Event Log failed)
- silverlight 对话框必须由用户启动
- 分布式与集群的区别
- Android类AsyncTask用法
- Java如何访问Axis2服务端
- POJ 2240 Arbitrage
- vc6开发activex并发布全攻略(二)(初级篇)
- C/C++/OC自测题
- mips的内存管理-kseg0,kseg1虚拟和物理地址映射理解
- 高斯消元法(转)
- sqlite相关技术记录
- Python类,模块,包
- Ubuntu中乱码完全解决方案(整理)