地址什么输入对没?另外java和ASP等不同语言互联有些需要注意的地方,和java连java不同。

解决方案 »

  1.   

    我是用MyEclipse   5.0.1生成的 webservice,在另一个项目里做了一个Webservice  client调用就出现了这个错误。 查了好半天也没找到是什么错误,但是我调用其他的webservice就好使,也是MyEclipse   5.0.1生成的
      

  2.   

    找到客户端代码,看看指定qname没,两边的一样不。给你例子,你可以试着这样练,不用他生成的Webservice  clientpublic String getXML(String endpoint, String functionName, int isNeedParam) {
            String msg = "";
            //System.out.println("Start invoking.");
            try {
                Service service = new Service();
                Call call = (Call) service.createCall();
                call.setOperationName(new QName("http://tempuri.org/", functionName)); 
                call.setTargetEndpointAddress( new java.net.URL(endpoint) );
                
                if(isNeedParam == 1) {
                    java.util.Date d = new java.util.Date();
                    String year = d.getYear() + 1900 + "";
                    String month = d.getMonth() + "";
                    if(month.length()==1) {
                        month = "0" + month;
                    }
                    System.out.println(month);
                    //设置发送字段类型,名字等
                    call.addParameter("year", org.apache.axis.Constants.XSD_STRING, javax.xml.rpc.ParameterMode.IN);
                    call.addParameter("month", org.apache.axis.Constants.XSD_STRING, javax.xml.rpc.ParameterMode.IN);
                    //call.setReturnType(org.apache.axis.encoding.XMLType.XSD_STRING);//设置返回类型
                    call.setReturnType(org.apache.axis.Constants.XSD_STRING);//设置返回类型
                    
                    call.setUseSOAPAction(true);                call.setSOAPActionURI("http://tempuri.org/" + functionName);
                    
                    msg = (String)call.invoke(new Object[]{year,month});//远程方法返回值为String
                } else {
                    call.setReturnType(org.apache.axis.encoding.XMLType.XSD_STRING);//设置返回类型
                    call.setUseSOAPAction(true);                call.setSOAPActionURI("http://tempuri.org/" + functionName);
                    msg = (String)call.invoke(new Object[]{});//远程方法返回值为String
                }
                
                System.out.println(msg);
            } catch (Exception e) {
                System.err.println(e.toString());
            }
            //System.out.println("Finished the invoking.");
            return msg;
        }