我用Java创建了一个简单的Web服务(使用Eclipse IDE)。
我的项目代码是:
package cris;
import javax.jws.WebMethod;
import javax.jws.WebService;
@WebService
public class ReqH {
@WebMethod
public String test() {
return "test from web service";
}
@WebMethod
public String add(int a, int b) {
int c = a + b;
return " "+c;
}
}
我使用Eclipse创建了一个WSDL,并在我的客户端项目中复制粘贴此WSDL文件,并使用以下代码生成客户端:
package cris;
import java.rmi.RemoteException;
public class ClinetTest {
public static void main(String[] args) {
ReqHProxy rs=new ReqHProxy();
try {
String r=rs.test();
System.out.println("Result of calling test method"+r);
String res = rs.add(5, 5);
System.out.println(res);
} catch (RemoteException e) {
e.printStackTrace();
}
}
}
当我启动服务器并尝试运行客户端时。我正在异常
INFO:尝试使用参数java.lang.Integer,null调用方法public java.lang.String cris.ReqH.add(int,int)。参数与签名不匹配。 的 java.lang.IllegalArgumentException异常