JAVA调用.net写的webservice出现的问题!!!急

baicai715 2008-08-19 12:16:48

程序如下:

public static void main(String[] args) throws Exception{

try {
Service service = new Service();
Call call = (Call)service.createCall();
call.setTargetEndpointAddress(new java.net.URL("http://SelfBusiness.wz.zj.vnet.cn/SelfBusinessForSP.asmx"));
call.setOperationName(new QName("http://service.zj.chinavnet.com/v1.0/","LocalAuthUser"));
call.addParameter(new QName("http://service.zj.chinavnet.com/v1.0/","SPID"),XMLType.XSD_STRING, ParameterMode.IN);
call.addParameter(new QName("http://service.zj.chinavnet.com/v1.0/","Authenticator"),XMLType.XSD_STRING, ParameterMode.IN);
call.addParameter(new QName("http://service.zj.chinavnet.com/v1.0/","AuthenticatorAccount"),XMLType.XSD_STRING, ParameterMode.IN);
call.addParameter(new QName("http://service.zj.chinavnet.com/v1.0/","AuthenticatorPassword"),XMLType.XSD_STRING, ParameterMode.IN);
call.addParameter(new QName("http://service.zj.chinavnet.com/v1.0/","IpAddress"),XMLType.XSD_STRING, ParameterMode.IN);
call.addParameter(new QName("http://service.zj.chinavnet.com/v1.0/","TimeStamp"),XMLType.XSD_STRING, ParameterMode.IN);
call.setUseSOAPAction(true);
call.setSOAPActionURI("http://service.zj.chinavnet.com/v1.0/LocalAuthUser");
call.setReturnType(XMLType.XSD_STRING);

String result = (String)call.invoke(new Object[]{"12040101","95A2D101E2049F30E3191CC9E5EB75DC645E3490870DA8E8","zzbwd ","bbtt","",new Date()});
System.out.println(result);


} catch (ServiceException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (RemoteException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (MalformedURLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}



错误如下:



AxisFault
faultCode: {http://schemas.xmlsoap.org/soap/envelope/}Server.userException
faultSubcode:
faultString: org.xml.sax.SAXException: SimpleDeserializer encountered a child element, which is NOT expected, in something it was trying to deserialize.
faultActor:
faultNode:
faultDetail:
{http://xml.apache.org/axis/}stackTrace:org.xml.sax.SAXException: SimpleDeserializer encountered a child element, which is NOT expected, in something it was trying to deserialize.
at org.apache.axis.encoding.ser.SimpleDeserializer.onStartChild(SimpleDeserializer.java:149)
at org.apache.axis.encoding.DeserializationContextImpl.startElement(DeserializationContextImpl.java:1008)
at org.apache.axis.message.SAX2EventRecorder.replay(SAX2EventRecorder.java:159)
at org.apache.axis.message.MessageElement.publishToHandler(MessageElement.java:838)
at org.apache.axis.message.RPCElement.deserialize(RPCElement.java:198)
at org.apache.axis.message.RPCElement.getParams(RPCElement.java:323)
at org.apache.axis.client.Call.invoke(Call.java:2418)
at org.apache.axis.client.Call.invoke(Call.java:2317)
at org.apache.axis.client.Call.invoke(Call.java:1774)
at duba.test.TestSelfBusiness.main(TestSelfBusiness.java:61)

分不够可以再给 希望大家帮帮忙
...全文
190 14 打赏 收藏 转发到动态 举报
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
granzy 2011-11-22
  • 打赏
  • 举报
回复
我也遇到这个问题
yuxihongliang 2011-06-13
  • 打赏
  • 举报
回复
我也遇到了!
newcando 2008-08-26
  • 打赏
  • 举报
回复
个人意见,检查一下用到的那个xml文件是否有问题。
baicai715 2008-08-22
  • 打赏
  • 举报
回复
另外我的QQ:171689421,哪位大侠有知道的加我QQ告诉我下...
baicai715 2008-08-22
  • 打赏
  • 举报
回复



我用XFIRE生成出现这个错误
不知道版主遇到过没啊


再过两天就结帖了
希望大家帮帮忙啊
zhuyx808 2008-08-20
  • 打赏
  • 举报
回复
不会啊
baicai715 2008-08-20
  • 打赏
  • 举报
回复
是不是我的问题还描述的不清楚???


高手帮帮忙啊。。。
急!!!
baicai715 2008-08-20
  • 打赏
  • 举报
回复
自己顶
kokobox 2008-08-20
  • 打赏
  • 举报
回复
根据那个wsdl,用工具直接生成客户端,然后你调用里面的方法就可以了

例如csdn的wsdl:https://forum.csdn.net/OpenApi/forumapi.asmx?WSDL

这样根据这个wsdl直接就可以生成一个客户端程序,那么你要做的就是调用里面的方法就好了

不用管他的平台

就像我写的csdn机器人一样,我用java写的,直接调用csdn的ws方法。

dracularking 2008-08-20
  • 打赏
  • 举报
回复
在Axis中发布一个服务后,用户可以通过标准的web浏览器来访问服务的URL,在后面添加一个?WSDL,这样才可以获得自动生成的服务的WSDL文件。


首先试这个
call.setTargetEndpointAddress(new java.net.URL("http://SelfBusiness.wz.zj.vnet.cn/SelfBusinessForSP.asmx?wsdl"));

自动生成web service client,可以用wtp
baicai715 2008-08-20
  • 打赏
  • 举报
回复
牛人,能说的详细点吗,最好能给个例子
kokobox 2008-08-20
  • 打赏
  • 举报
回复
根据wsdl用工具生成客户端,然后直接调用他的poxy就可以了

为什么要自己繁琐的写这么多的代码呢?

baicai715 2008-08-19
  • 打赏
  • 举报
回复
sunzhyng 能给个xfire的例子吗?
sunzhyng 2008-08-19
  • 打赏
  • 举报
回复
axis我试了好几次都觉得费劲,用xfire倒是很顺利,而且性能也比axis好

lz可以考虑改一下

67,538

社区成员

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

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