首先,使用javascript调用webservice原理上同开发ajax应用差不多,只不过现在发送的是SOAP协议数据,所以必须要先搞清楚服务wsdl中描述的结构,在发送时应在http header中添加sapaction(针对不同的java webservice实现略有不同)。网上很多javascript的webservce实现,不过大多都针对于c#编写的webservice,大部分不能照搬到java中使用,soapclient.js(@author: Matteo Casati, Ihar Voitka - http://www.guru4.net/)就是其中一个,经过改造之后可以使用了。
测试环境 : jdk1.5 + xfire + soap1.2.
对原作修改如下:
1. 将c#响应Result结尾 改为 Response
2. 添加了 getSingleValue方法兼容IE和FF.
注:还未用于生产环境,还需进行测试后使用。
修正后soapclient.js