java访问C#webservice接口
2016-11-04 15:02
405 查看
package serviceclent;
import org.junit.Test;
import java.net.URL;
import javax.xml.namespace.QName;
import org.apache.axis.client.Call;
import org.apache.axis.client.Service;
public class ClientTest {
// @Test
// public void testGetAllBooks() {
// try{
// MyService service=new MyServiceLocator();
// Call call = (Call) service.createCall();
// call.setOperationName(new QName("", "GetTestQuestions"));
// call.addParameter("username", XMLType.XSD_STRING, ParameterMode.IN);
// call.addParameter("password", XMLType.XSD_STRING, ParameterMode.IN);
// call.addParameter("userlx", XMLType.XSD_STRING, ParameterMode.IN);
// call.setTargetEndpointAddress(new URL("http://120.76.235.98:8002/MyService.asmx?op=Login_json"));
// String result = (String) call.invoke(new Object[] { "sr", "123","3"});
// System.out.println("------");
// }catch(Exception e){
// e.printStackTrace();
// }
// String url="http://120.76.235.98:8002/MyService.asmx";
// Service service = new Service();
// // String strSign = IpsCrypto.md5Sign(IPayConfig.ipay_mer_code+IPayConfig.cert_md5);
// Call call ;
// try {
// call = (Call)service.createCall();
// call.setTargetEndpointAddress(url);
// call.setOperationName("Login_json");
// call.addParameter(new QName("username"), XMLType.XSD_STRING, ParameterMode.IN);// 给call对象设置方法的参数名、参数类型、参数模式
// call.addParameter(new QName("password"), XMLType.XSD_STRING, ParameterMode.IN);// 给call对象设置方法的参数名、参数类型、参数模式
// call.addParameter(new QName("userlx"), XMLType.XSD_STRING, ParameterMode.IN);// 给call对象设置方法的参数名、参数类型、参数模式
// call.setReturnType(XMLType.SOAP_STRING);// 设置调用方法的返回值类型
// call.setUseSOAPAction(true);
// call.setSOAPActionURI("http://tempuri.org/Login_json");
// String obj =(String)call.invoke(new Object[]{IPayConfig.ipay_mer_code,strSign});
// System.out.println(obj);
// } catch (Exception e) {
// e.printStackTrace();
// }
//
// }
/**
*
* @param serviceUrl 服务名
* @param nameSpace
* @param methodName 执行的方法名
* @param paremateArrs 参数数据数组
* @param qNameArrs 变量数组
* @return
*/
public static Object CallSoapService(String serviceUrl ,String nameSpace,String methodName, Object[] paremateArrs,Object[] qNameArrs){
String endPoint = serviceUrl;
String actionUrl=nameSpace+methodName;
Object returnObj = null;
try{
Service service = new Service();
Call call = null;
call = (Call)service.createCall();
QName qName = new QName(nameSpace,methodName);
call.setOperationName(qName);
call.setSOAPActionURI(actionUrl);
for(int i=0,len=qNameArrs.length;i<len;i++){
call.addParameter(new QName(nameSpace,qNameArrs[i].toString()), org.apache.axis.encoding.XMLType.XSD_STRING,
javax.xml.rpc.ParameterMode.IN);
}
call.setReturnType(org.apache.axis.encoding.XMLType.XSD_STRING);
call.setTargetEndpointAddress(new URL(endPoint));
returnObj = call.invoke(paremateArrs);
}catch(Exception ie){
ie.printStackTrace();
}
System.out.println(returnObj);
return returnObj;
}
@Test
public void mains() {
String url="http://120.76.235.98:8002/MyService.asmx";
String method="Login_json";
String parameter="15170560850";
String namespace="http://tempuri.org/";
ClientTest.CallSoapService(url,namespace,method,new Object[]{"sr","123","3"},new Object[]{"username","password","userlx"});
System.out.println("111111111111111111111");
}
}
import org.junit.Test;
import java.net.URL;
import javax.xml.namespace.QName;
import org.apache.axis.client.Call;
import org.apache.axis.client.Service;
public class ClientTest {
// @Test
// public void testGetAllBooks() {
// try{
// MyService service=new MyServiceLocator();
// Call call = (Call) service.createCall();
// call.setOperationName(new QName("", "GetTestQuestions"));
// call.addParameter("username", XMLType.XSD_STRING, ParameterMode.IN);
// call.addParameter("password", XMLType.XSD_STRING, ParameterMode.IN);
// call.addParameter("userlx", XMLType.XSD_STRING, ParameterMode.IN);
// call.setTargetEndpointAddress(new URL("http://120.76.235.98:8002/MyService.asmx?op=Login_json"));
// String result = (String) call.invoke(new Object[] { "sr", "123","3"});
// System.out.println("------");
// }catch(Exception e){
// e.printStackTrace();
// }
// String url="http://120.76.235.98:8002/MyService.asmx";
// Service service = new Service();
// // String strSign = IpsCrypto.md5Sign(IPayConfig.ipay_mer_code+IPayConfig.cert_md5);
// Call call ;
// try {
// call = (Call)service.createCall();
// call.setTargetEndpointAddress(url);
// call.setOperationName("Login_json");
// call.addParameter(new QName("username"), XMLType.XSD_STRING, ParameterMode.IN);// 给call对象设置方法的参数名、参数类型、参数模式
// call.addParameter(new QName("password"), XMLType.XSD_STRING, ParameterMode.IN);// 给call对象设置方法的参数名、参数类型、参数模式
// call.addParameter(new QName("userlx"), XMLType.XSD_STRING, ParameterMode.IN);// 给call对象设置方法的参数名、参数类型、参数模式
// call.setReturnType(XMLType.SOAP_STRING);// 设置调用方法的返回值类型
// call.setUseSOAPAction(true);
// call.setSOAPActionURI("http://tempuri.org/Login_json");
// String obj =(String)call.invoke(new Object[]{IPayConfig.ipay_mer_code,strSign});
// System.out.println(obj);
// } catch (Exception e) {
// e.printStackTrace();
// }
//
// }
/**
*
* @param serviceUrl 服务名
* @param nameSpace
* @param methodName 执行的方法名
* @param paremateArrs 参数数据数组
* @param qNameArrs 变量数组
* @return
*/
public static Object CallSoapService(String serviceUrl ,String nameSpace,String methodName, Object[] paremateArrs,Object[] qNameArrs){
String endPoint = serviceUrl;
String actionUrl=nameSpace+methodName;
Object returnObj = null;
try{
Service service = new Service();
Call call = null;
call = (Call)service.createCall();
QName qName = new QName(nameSpace,methodName);
call.setOperationName(qName);
call.setSOAPActionURI(actionUrl);
for(int i=0,len=qNameArrs.length;i<len;i++){
call.addParameter(new QName(nameSpace,qNameArrs[i].toString()), org.apache.axis.encoding.XMLType.XSD_STRING,
javax.xml.rpc.ParameterMode.IN);
}
call.setReturnType(org.apache.axis.encoding.XMLType.XSD_STRING);
call.setTargetEndpointAddress(new URL(endPoint));
returnObj = call.invoke(paremateArrs);
}catch(Exception ie){
ie.printStackTrace();
}
System.out.println(returnObj);
return returnObj;
}
@Test
public void mains() {
String url="http://120.76.235.98:8002/MyService.asmx";
String method="Login_json";
String parameter="15170560850";
String namespace="http://tempuri.org/";
ClientTest.CallSoapService(url,namespace,method,new Object[]{"sr","123","3"},new Object[]{"username","password","userlx"});
System.out.println("111111111111111111111");
}
}
相关文章推荐
- java 中用Axis访问C#的webservice接口
- java axis 1.4访问c# webservice,并获取返回值为dataset
- C#访问Java的WebService添加SOAPHeader验证的问题
- 纯java方式访问远程WebService接口返回的xml格式的数据保存在本地
- java调用C# webservice接口使用axis报错
- Java调用C#WebService接口方式
- Java调用C#WebService接口方式
- Java 调用C# webservice接口 生成java客户端 实现方式
- c# winform通过本地WebService接口访问SQL数据库实例
- Android 访问Webservice接口,参数对象不能串行化问题解决(java.lang.RuntimeException: Cannot serialize)
- C#访问Java的WebService添加SOAPHeader验证的问题
- Java使用soap访问Jax-ws和.Net C#开发的WebService
- C#动态webservice调用接口 (JAVA,C#)
- Windows程序(C# VS 2008)杂记之Java访问Webservice服务
- java与c#建立webservice接口
- java调用C# WebService接口
- C#访问Java的WebService添加Header验证的问题
- IOS 访问java提供的webservice接口,心魔之使
- Java调用C#带soapheader的webservice接口
- java访问WebService接口返回xml