在Java中调用C#.net写的Web Service,返回值都是null,错在哪?

Soft21 2003-07-30 02:48:09
c#.net Server code:
[WebMethod]
public String TestParam_String( String strParam )
{
return strParam;
}

java client code:
URL url = new URL( "http://localhost/Test0730/service1.asmx" ) ;

SOAPMappingRegistry smr = new SOAPMappingRegistry ();
StringDeserializer sd = new StringDeserializer ();
smr.mapTypes (Constants.NS_URI_SOAP_ENC, new QName ("http://tempuri.org/", "TestParam_StringResult"), null, null, sd);

// 创建传输路径和参数
SOAPHTTPConnection st = new SOAPHTTPConnection();

// 构造Call对象
Call call = new Call() ;
call.setSOAPTransport(st);
call.setSOAPMappingRegistry( smr );

call.setTargetObjectURI( "http://tempuri.org/message" ) ;
call.setMethodName( "TestParam_String" ) ;
call.setEncodingStyleURI( Constants.NS_URI_SOAP_ENC);

Vector params = new Vector();
params.addElement(new Parameter("strParam", String.class, "lin", null));

call.setParams( params ) ;

// 发出调用
Response resp = null ;
resp = call.invoke(url,"http://tempuri.org/TestParam_String") ;

可是
resp.getReturnValue() 却得到null, 为什么?请大侠指点。

...全文
131 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
upc_chenli 2003-08-01
  • 打赏
  • 举报
回复
resp = call.invoke(url,"http://tempuri.org/TestParam_String") ;
是不是这里呢?

// make the call: note that the action URI is empty because the
// XML-SOAP rpc router does not need this. This may change in the
// future.
Response resp = call.invoke (/* router URL */ url, /* actionURI */ "" );
Soft21 2003-07-31
  • 打赏
  • 举报
回复
后来发现是参数没传进去,传进去的参数都为null
但返回值是可以得到的,是不是参数得进行serializer? 怎么做呢? 谢谢
tianlinyi 2003-07-30
  • 打赏
  • 举报
回复
是不是ENDPOINT URL写错了?还是WEB服务名写错了

67,512

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧