求一下每一步的详细解释(最好能对知识点稍作扩充),以及逻辑,满意后加分,谢谢,勿复制,谢谢publicstaticStringinvoke(Stringnamespace,Stringmethod,Stringwsdl,Object[]params,...
求一下每一步的详细解释(最好能对知识点稍作扩充),以及逻辑,满意后加分,谢谢,勿复制,谢谢
public static String invoke(String namespace, String method, String wsdl, Object[] params, String nsrsbh, String type)
{
try
{
Service service = new Service();
Call call = (Call) service.createCall();
call.setOperationName(new QName(namespace, method));
call.setTargetEndpointAddress(new java.net.URL(wsdl));
for (int i = 0; i < params.length; i++)
{
call.addParameter("arg" + i, org.apache.axis.encoding.XMLType.XSD_STRING, ParameterMode.IN);
}
if (params.length > 0)
{
call.setReturnType(org.apache.axis.encoding.XMLType.XSD_STRING);
}
System.out.println("call = " + call);
Object obj = call.invoke(params);
return obj.toString();
}
catch (Exception e)
{
e.printStackTrace();
Log.error(xx, "", type, e);
return "";
}
}
public static String invoke2(String namespace, String method, String wsdl, Object[] paramsName, Object[] params, String nsrsbh, String type)
{
try
{
Service service = new Service();
Call call = (Call) service.createCall();
call.setOperationName(new QName(namespace, method));
call.setTargetEndpointAddress(new java.net.URL(wsdl));
for (int i = 0; i < params.length; i++)
{
call.addParameter(paramsName[i].toString(), org.apache.axis.encoding.XMLType.XSD_STRING, ParameterMode.IN);
}
if (params.length > 0)
{
call.setReturnType(org.apache.axis.encoding.XMLType.XSD_STRING);
}
Object obj = call.invoke(params);
return obj.toString();
}
catch (Exception e)
{
e.printStackTrace();
Log.error(xx, "", type, e);
return "";
}
}
展开