zoukankan      html  css  js  c++  java
  • java 调用webservice采用axis方式时候无法找到参数注意事项

             String url = "http://192.168.0.90:8088/wsServerExample";
    		
    		String namespace = "http://webserver.server.com/"; 
    		try {
    			org.apache.axis.client.Service service = new org.apache.axis.client.Service();
    
    			Call call = (Call) service.createCall();
    			// 设置调用服务地址
    			call.setTargetEndpointAddress(new java.net.URL(url));
    			// 此处一定要配置wsdl的namespace参数
    			call.setOperationName(new QName(namespace, "queryObjectOut"));
    
    			// 此处需要配置传入参数类型与参数名称,如果未设置jax-ws则无法接受参数,会认为传入的参数为null 
                  //这里的参数名字必须为arg0,否则接受不到参数      call.addParameter("arg0",org.apache.axis.encoding.XMLType.XSD_STRING,javax.xml.rpc.ParameterMode.IN); call.addParameter("arg1", org.apache.axis.encoding.XMLType.XSD_STRING, javax.xml.rpc.ParameterMode.IN); call.addParameter("arg2", org.apache.axis.encoding.XMLType.XSD_STRING, javax.xml.rpc.ParameterMode.IN); call.addParameter("arg3", org.apache.axis.encoding.XMLType.XSD_STRING, javax.xml.rpc.ParameterMode.IN); // 如果设置类传入参数类型,此处也需要设置返回参数类型 call.setReturnType(org.apache.axis.encoding.XMLType.XSD_STRING); call.setUseSOAPAction(true); call.setSOAPActionURI(url); String result = (String) call .invoke(new Object[] { TransNo, Inxml,"11","21321" }); System.out.println(result); } catch (Exception e) { e.printStackTrace(); }

      

  • 相关阅读:
    Quartz.Net系列(二):介绍、简单使用、对比Windows计划任务
    Quartz.Net系列(一):Windows任务计划程序
    Linux下swap到底有没有必要使用
    Linux服务器有大量的TIME_WAIT状态
    HTTP请求头中的X-Forwarded-For介绍
    Keepalived实现服务高可用
    Gitlab常规操作
    Git 常用命令
    HTTP常见状态码
    《Docker从入门到跑路》之多阶段构建
  • 原文地址:https://www.cnblogs.com/it888/p/5073839.html
Copyright © 2011-2022 走看看