关于webservice传递参数的问题

gaohongtao_2005 gaohongtao_2005 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
各位:我想用java调用.net的webservice

webservice的代码如下:

using System;
using System.Linq;
using System.Web;
using System.Web.Services;
using System.Web.Services.Protocols;
using System.Xml.Linq;

[WebService(Namespace = "http://tempuri.org/")]
[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
// 若要允许使用 ASP.NET AJAX 从脚本中调用此 Web 服务,请取消对下行的注释。
// [System.Web.Script.Services.ScriptService]
public class Service : System.Web.Services.WebService
{
public Service() {

//如果使用设计的组件,请取消注释以下行
//InitializeComponent();

}

[WebMethod]
public string HelloWorld() {
return "你好你好";
}

[WebMethod]
public string MyMethod(String userID)
{
return "欢迎您:" + userID +"先生";
}
}


java调用的代码如下

public void test(String userID)
{
try
{
String endpoint = "http://localhost:3474/MyWebService/Service.asmx";
Service service = new Service();
Call call = (Call) service.createCall();
call.setTargetEndpointAddress(endpoint);
//call.setOperationName(new QName(endpoint,"MyMethod"));
call.setOperationName("MyMethod");
//call.addParameter("mypar", org.apache.axis.encoding.XMLType.XSD_DATE,javax.xml.rpc.ParameterMode.IN);
call.addParameter("userID", XMLType.XSD_STRING, ParameterMode.IN);
//call.addParameter("alarmHours", XMLType.XSD_STRING, ParameterMode.IN);
call.setReturnType(org.apache.axis.encoding.XMLType.XSD_STRING);
call.setUseSOAPAction(true);
call.setSOAPActionURI("http://tempuri.org/MyMethod");
String result = (String)call.invoke(new Object[]{ userID });
System.out.println("显示结果——>"+result);
}
catch(Exception ex)
{
System.out.println("Error: "+ex);
}
}



但是 不论我给userID什么值,结果都是“欢迎您:先生”,也就是参数没传过去
这是为什么呢?
...全文

相关推荐

评论 6
收藏 已收藏
分享
返回顶部
gaohongtao_2005
Web 开发 81,108 成员 341,721 内容