无法从java客户端发送参数

无法从java客户端发送参数,java,parameters,wsdl,client,Java,Parameters,Wsdl,Client,我正在为web服务开发java客户机 我的web服务中有以下方法: @WebMethod(operationName = "test") public Integer test(@WebParam(name = "number") int number) { return number; } 我的客户看起来像这样 public static void main(String[] args) { try { String BODY_NAMESPACE_VALUE = /namespace

我正在为web服务开发java客户机

我的web服务中有以下方法:

@WebMethod(operationName = "test")
public Integer test(@WebParam(name = "number")
int number) {
return number;
}
我的客户看起来像这样

public static void main(String[] args) { 
try { 

String BODY_NAMESPACE_VALUE = /namespace url/;
QName port = new QName(/Service name/);
ServiceFactory factory = ServiceFactory.newInstance();
Service service = factory.createService(new QName(/Service name/));

Call call = service.createCall(port);
call.setTargetEndpointAddress(/WSDL location/);

call.setReturnType(XMLType.XSD_INT);

call.setOperationName(new QName(BODY_NAMESPACE_VALUE, "test"));

call.addParameter("number", XMLType.XSD_INT, ParameterMode.IN);

Integer[] i = new Integer[1];
i[0] = new Integer(20);
System.out.println("test :"+call.invoke(i));


} catch (Exception ex) { 
ex.printStackTrace(); 
} 
}
我从java客户机中的web服务获取返回值ok,因为我尝试从web服务获取常量。然而,在上面的例子中,我试图从客户机向web服务发送20,然后再接收回来。然而,我收到0。有人知道为什么从客户端向web服务发送参数不起作用吗

感谢和问候,
Krt_Malta

我不知道这是否是答案,但看起来好像您正在向Web服务发送一个整数数组

Integer[] i;

当它只需要一个
int

时,我不知道这是否是答案,但它似乎是在向Web服务发送一个整数数组

Integer[] i;

当它只需要一个
int

时,它不是这样的。Invoke只接受对象数组。我尝试将web服务更改为@WebMethod(operationName=“test”)公共整数测试(@WebParam(name=“number1”)Integer[]number1){返回number1[0];},但仍然得到一个0结果。有什么想法吗?试着在你的服务中编码一个返回类型——找出问题出在传入或被返回的参数上。问题出在传入。在web服务中,我包括System.out.println(I)。服务器日志上的值是0。啊,现在我明白你的意思了。是的,在服务中硬编码返回值会在客户端中给出正确的值。嗨,我完全放弃了上面的方法。我使用了Sun的ws-import,它工作起来没有问题。问候你,不是那样的。Invoke只接受对象数组。我尝试将web服务更改为@WebMethod(operationName=“test”)公共整数测试(@WebParam(name=“number1”)Integer[]number1){返回number1[0];},但仍然得到一个0结果。有什么想法吗?试着在你的服务中编码一个返回类型——找出问题出在传入或被返回的参数上。问题出在传入。在web服务中,我包括System.out.println(I)。服务器日志上的值是0。啊,现在我明白你的意思了。是的,在服务中硬编码返回值会在客户端中给出正确的值。嗨,我完全放弃了上面的方法。我使用了Sun的ws-import,它工作起来没有问题。你好,克尔图·马耳他