C# 调用java webservice 接口
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C# 调用java webservice 接口相关的知识,希望对你有一定的参考价值。
C# 调用java 开发的webservice,java端接口参数我用的是java里面的document对象,在java建立客户端调用没有问题,现在的问题是,如果我在c#端调用的话,该怎么调用呢,特别是这个参数怎么传递呢?
参考技术A C#调用WEBSERVICE只要在项目中添加WEBSERVICE引用就行了.
输入网址.很简单的
document对象
序列化 和 反序列化
JAVA C# 那个参数都用文本传递接受 参考技术B 把java web服务的wsdl得到,然后使用wdsl命令生成调用代理类源码
wsdl /language:cs /n:TestDemo /out:d:\Temp\TestService.cs
D:\Temp\TestService.wsdl
把生成的源码导入到csharp工程中,使用代理类就可以调用了 参考技术C 参数序列化成json格式或者xml格式,java写的webservice就能解析,byte[]也行 参考技术D 引用过来就可以了吧
java如何调用webservice接口?
参考技术AJava通过WSDL文件来调用webservice直接调用模式如下:
import java.util.Date;
import java.text.DateFormat;
import org.apache.axis.client.Call;
import org.apache.axis.client.Service;
import javax.xml.namespace.QName;
import java.lang.Integer;
import javax.xml.rpc.ParameterMode;
public class caClient
public static void main(String[] args)
try
String endpoint = "http://localhost:8080/ca3/services/caSynrochnized?wsdl";
//直接引用远程的wsdl文件
//以下都是套路
Service service = new Service();
Call call = (Call) service.createCall();
call.setTargetEndpointAddress(endpoint);
call.setOperationName("addUser");//WSDL里面描述的接口名称
call.addParameter("userName", org.apache.axis.encoding.XMLType.XSD_DATE,
javax.xml.rpc.ParameterMode.IN);//接口的参数
call.setReturnType(org.apache.axis.encoding.XMLType.XSD_STRING);//设置返回类型
String temp = "测试人员";
String result = (String)call.invoke(new Object[]temp);
//给方法传递参数,并且调用方法
System.out.println("result is "+result);
catch (Exception e)
System.err.println(e.toString());
以上是关于C# 调用java webservice 接口的主要内容,如果未能解决你的问题,请参考以下文章
C# 调用Java的WebService(返回json格式数据),老是返回null, 求解!