java如何调用webservice接口
webservice接口文档如下
queryUserAmount方法
参数名称     参数类型    参数说明
userName      String       用户名
passWord      String       密码
返回值说明:
<?xml version="1.0" encoding="utf-8" ?>  
<double xmlns="http://www.test.com/">10</double>
说明:接口返回一个double类型值。
此处的值表示余额条数。如 3 (余额 3 条)。
本处返回数值 10 。意思是还有余额 10 条短信。
我的java程序如下:
public static void main(String[] args) {
     String url = "http://www.test.com/textServices/textService.asmx?wsdl";
     Service service = new Service();
     try {
	Call call = (Call) service.createCall();
	call.setTargetEndpointAddress(url);
	call.setOperationName("GetBalance");
         call.addParameter("userName",
             org.apache.axis.encoding.XMLType.XSD_STRING,
             javax.xml.rpc.ParameterMode.IN);
	call.addParameter("passWord",
             org.apache.axis.encoding.XMLType.XSD_STRING,
             javax.xml.rpc.ParameterMode.IN);	
             //注:这里的参数我一直不知道怎么写	
	    // 方法的返回值类型
             call.setReturnType(org.apache.axis.encoding.XMLType.XSD_INT);
             call.setUseSOAPAction(true);
             call.setSOAPActionURI("http://www.text.com/queryUserAmount");
             String userName = "admin";
             String uesrPassWord = "1234";
             String result = (String)call.invoke(new Object[]{userName,uesrPassWord});
             //给方法传递参数,并且调用方法
             System.out.println("result is "+result);  
		} catch (ServiceException e) {  
			e.printStackTrace();
		} catch (RemoteException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
	}
这是我的程序,请问正确的程序应该怎么写呢。我不会用java调用webservice。谢谢了。。
------解决方案--------------------
调用webservice也很简单
C# code
JaxWsProxyFactoryBean factory = new JaxWsProxyFactoryBean();
factory.setAddress("http://www.test.com/textServices/textService.asmx?wsdl");
factory.setServiceClass(IUnionServer.class);
return (IUnionServer) factory.create();