[BTS]Java调用.net webservice
当前项目要求使用java调用.net webservice。
在网上search不到太多相关的资源,只能自己慢慢试了。
经过长达一周的联调,终于实现。
Java Client
import javax.xml.namespace.QName;
import javax.xml.rpc.ParameterMode;
import org.apache.axis.client.Call;
import org.apache.axis.client.Service;
System.out.println("测试SOAP开始");
Service service = new Service();
Call call = (Call)service.createCall();
String input="Yes";
String endpoint="http://11.11.11.11/CAIE.EAI/UploadExpenseToConstract.asmx";
call.setTargetEndpointAddress(new java.net.URL(endpoint));
call.setOperationName(new QName("http://CAIE.EAI.ExpenseConstract.WebServices","ReturnYourInput"));
call.addParameter("input", org.apache.axis.encoding.XMLType.XSD_STRING,ParameterMode.IN);
call.setReturnType(org.apache.axis.encoding.XMLType.XSD_STRING);
call.setUseSOAPAction(true);
call.setSOAPActionURI("http://CAIE.EAI.ExpenseConstract.WebServices/ReturnYourInput");
String res = (String) call.invoke(new Object[] {input});
System.out.println("返回值="+res);
System.out.println("测试SOAP结束");
.Net WebService
using System;
using System.Data;
using System.Web;
using System.Collections;
using System.Web.Services;
using System.Web.Services.Protocols;
using System.Web.Services.Description;
using System.ComponentModel;
namespace CAIE.EAI.ExpenseConstract.WebServices
{
/// <summary>
/// UploadExpenseToConstract 的摘要说明
/// </summary>
[WebService(Namespace = "http://CAIE.EAI.ExpenseConstract.WebServices/")]
[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
[ToolboxItem(false)]
public class UploadExpenseToConstract : System.Web.Services.WebService
{
[WebMethod()]
[SoapRpcMethod(Use = SoapBindingUse.Literal, RequestNamespace = "http://CAIE.EAI.ExpenseConstract.WebServices", ResponseNamespace = "http://CAIE.EAI.ExpenseConstract.WebServices")]
public string ReturnYourInput(string input)
{
string a = input;
System.IO.File.AppendAllText(@"c:\temp.log", "Input=" + input + "\r\n");
return a;
}
}
}
Java 调用 .net 主要是为了后序的 Java 启动 BizTalk流程做准备。
以上是 [BTS]Java调用.net webservice 的全部内容, 来源链接: utcz.com/z/391846.html