.net作为服务端
JB中有自动生成的调用服务端webService的类!
叫importWebService,通过它找到你的wsdl文件,导入即可
然后自己写类,包括下面的代码.其中Calculator为webService名....    /*产生一个wsdl服务实例*/
    CalculatorLocator locator = new CalculatorLocator();
    /*定义一个解析wsdl方法的实例*/
    CalculatorSoap soap;
    /*调用wsdl服务实例的方法并转型为解析wsdl类型*/
     soap = locator.getCalculatorSoap();
....

解决方案 »

  1.   

    tiger_wkh52741(走走.跑跑.瞧瞧!)能不能再说的详细点
    .net做的服务,地址的后缀是不是也是?wsdl,用ksoap怎么调用呢?指教一下哈
      

  2.   

    呵呵
    搂主也太简明扼要了。.Net 的服务,想要看 WSDL 这样:
    http://<host>:<port>/<path>/<fileName>?wsdl剩下的,……
      

  3.   


    ??????? HTTP ?? SOAPAction ????
    org.apache.axis.message.SOAPFaultBuilder.createFault(SOAPFaultBuilder.java:221)
    org.apache.axis.message.SOAPFaultBuilder.endElement(SOAPFaultBuilder.java:128)
    org.apache.axis.encoding.DeserializationContext.endElement(DeserializationContext.java:1087)
    org.apache.xerces.parsers.AbstractSAXParser.endElement(Unknown Source)
    org.apache.xerces.impl.XMLNSDocumentScannerImpl.scanEndElement(Unknown Source)
    org.apache.xerces.impl.XMLDocumentFragmentScannerImpl$FragmentContentDispatcher.dispatch(Unknown Source)
    org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown Source)
    org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
    org.apache.xerces.parsers.DTDConfiguration.parse(Unknown Source)
    org.apache.xerces.parsers.XMLParser.parse(Unknown Source)
    org.apache.xerces.parsers.AbstractSAXParser.parse(Unknown Source)
    javax.xml.parsers.SAXParser.parse(Unknown Source)
    org.apache.axis.encoding.DeserializationContext.parse(DeserializationContext.java:227)
    org.apache.axis.SOAPPart.getAsSOAPEnvelope(SOAPPart.java:696)
    org.apache.axis.Message.getSOAPEnvelope(Message.java:424)
    org.apache.axis.handlers.soap.MustUnderstandChecker.invoke(MustUnderstandChecker.java:62)
    org.apache.axis.client.AxisClient.invoke(AxisClient.java:206)
    org.apache.axis.client.Call.invokeEngine(Call.java:2765)
    org.apache.axis.client.Call.invoke(Call.java:2748)
    org.apache.axis.client.Call.invoke(Call.java:2424)
    org.apache.axis.client.Call.invoke(Call.java:2347)
    org.apache.axis.client.Call.invoke(Call.java:1804)
    org.apache.jsp.test_jsp._jspService(test_jsp.java:69)
    org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:133)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
    org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:311)
    org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:301)
    org.apache.jasper.servlet.JspServlet.service(JspServlet.java:248)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
    这个错误是什么意思呀?
      

  4.   

    public String bind() throws Exception
    {
            URL httpurl = new URL(url);
            HttpURLConnection httpConn = (HttpURLConnection)httpurl.openConnection();
            httpConn.setRequestMethod( "POST" );
            httpConn.setRequestProperty("Host",host);
            httpConn.setRequestProperty("Content-Type",contype);
            httpConn.setRequestProperty( "Content-Length",String.valueOf(postStr.length()));
    httpConn.setRequestProperty("SOAPAction",soapaction);        
            httpConn.setDoOutput(true);
            httpConn.setDoInput(true);
            PrintWriter out = new PrintWriter(httpConn.getOutputStream());
            out.print(postStr);
            out.flush();
            out.close();
            BufferedReader in = new BufferedReader(new InputStreamReader(httpConn.getInputStream()));
            String inputLine;
            while ((inputLine = in.readLine()) != null)
            {
             result += inputLine+"\n";
            }
            in.close();
            return result;
        }
      

  5.   

    既然是WebService,那么服务端和客户端采用什么语言是完全没有影响的
    如果你会用java来调用java的WebService,那么调用.net的就不是问题了,反正有wsdl就行
    而用java来生成WebService的客户端调用,最简单的办法,莫过于axis的WSDL2Java类了
      

  6.   

    JavaWebService客户端简明攻略
    http://blog.csdn.net/zlyperson/archive/2003/08/05/12494.aspx
      

  7.   

    import org.apache.axis.client.Call;
    import org.apache.axis.client.Service;
    import org.apache.axis.encoding.XMLType;import javax.xml.rpc.ParameterMode;public class WebServiceTest {
      public WebServiceTest() {
      }
      public static void main(String args[])throws  Exception{
        Service service=new Service();
        Call call = (Call)service.createCall();
        call.setTargetEndpointAddress("http://xxxxx/services/XXXService");
        call.setOperationName("testYourName");
        call.addParameter("name",XMLType.XSD_STRING,ParameterMode.IN);
        call.setReturnType(XMLType.XSD_STRING);    String ret;
        Object[] attributes=null;    ret=
            (String)call.invoke(new Object[]{"xxx"});    System.out.println(ret);
      }
    }
      

  8.   

    好象报错了!服务器未能识别 HTTP 标头 SOAPAction 的值:。
    服务器未能识别 HTTP 标头 SOAPAction 的值:。
    服务器未能识别 HTTP 标头 SOAPAction 的值:。Exception in thread "main" AxisFault
     faultCode: {http://schemas.xmlsoap.org/soap/envelope/}Client
     faultSubcode:
     faultString: 服务器未能识别 HTTP 标头 SOAPAction 的值:。
     faultActor:
     faultNode:
     faultDetail:
            {http://xml.apache.org/axis/}stackTrace:服务器未能识别 HTTP 标头 SOAPAction 的值:。
            at org.apache.axis.message.SOAPFaultBuilder.createFault(SOAPFaultBuilder.java:222)
            at org.apache.axis.message.SOAPFaultBuilder.endElement(SOAPFaultBuilder.java:129)
            at org.apache.axis.encoding.DeserializationContext.endElement(DeserializationContext.java:1087)
            at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.endElement(AbstractSAXParser.java:633)
            at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.scanEndElement(XMLNSDocumentScannerImpl.java
    :719)
            at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDispatcher.dispatch(XML
    DocumentFragmentScannerImpl.java:1685)
            at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScanne
    rImpl.java:368)
            at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:834)
            at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:764)
            at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:148)
            at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1242)
            at javax.xml.parsers.SAXParser.parse(SAXParser.java:375)
            at org.apache.axis.encoding.DeserializationContext.parse(DeserializationContext.java:227)
            at org.apache.axis.SOAPPart.getAsSOAPEnvelope(SOAPPart.java:696)
            at org.apache.axis.Message.getSOAPEnvelope(Message.java:435)
            at org.apache.axis.handlers.soap.MustUnderstandChecker.invoke(MustUnderstandChecker.java:62)
            at org.apache.axis.client.AxisClient.invoke(AxisClient.java:206)
            at org.apache.axis.client.Call.invokeEngine(Call.java:2784)
            at org.apache.axis.client.Call.invoke(Call.java:2767)
            at org.apache.axis.client.Call.invoke(Call.java:2443)
            at org.apache.axis.client.Call.invoke(Call.java:2366)
            at org.apache.axis.client.Call.invoke(Call.java:1812)
            at mytest.main(mytest.java:12)        {http://xml.apache.org/axis/}hostname:LAI001服务器未能识别 HTTP 标头 SOAPAction 的值:。
            at org.apache.axis.message.SOAPFaultBuilder.createFault(SOAPFaultBuilder.java:222)
            at org.apache.axis.message.SOAPFaultBuilder.endElement(SOAPFaultBuilder.java:129)
            at org.apache.axis.encoding.DeserializationContext.endElement(DeserializationContext.java:1087)
            at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.endElement(AbstractSAXParser.java:633)
            at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.scanEndElement(XMLNSDocumentScannerImpl.java
    :719)
            at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDispatcher.dispatch(XML
    DocumentFragmentScannerImpl.java:1685)
            at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScanne
    rImpl.java:368)
            at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:834)
            at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:764)
            at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:148)
            at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1242)
            at javax.xml.parsers.SAXParser.parse(SAXParser.java:375)
            at org.apache.axis.encoding.DeserializationContext.parse(DeserializationContext.java:227)
            at org.apache.axis.SOAPPart.getAsSOAPEnvelope(SOAPPart.java:696)
            at org.apache.axis.Message.getSOAPEnvelope(Message.java:435)
            at org.apache.axis.handlers.soap.MustUnderstandChecker.invoke(MustUnderstandChecker.java:62)
            at org.apache.axis.client.AxisClient.invoke(AxisClient.java:206)
            at org.apache.axis.client.Call.invokeEngine(Call.java:2784)
            at org.apache.axis.client.Call.invoke(Call.java:2767)
            at org.apache.axis.client.Call.invoke(Call.java:2443)
            at org.apache.axis.client.Call.invoke(Call.java:2366)
            at org.apache.axis.client.Call.invoke(Call.java:1812)
            at mytest.main(mytest.java:12)
      

  9.   

    搞不懂???
    好象是个call.setSOAPActionURI没有搞好可是我不会用wsdl2java工具!生产代理!
    请求帮助!!!!!!!!!!!!
    import org.apache.axis.client.Service;
    import org.apache.axis.client.Call;
    import javax.xml.namespace.QName;
    import javax.xml.rpc.ParameterMode;
    public class t2 {
    public static void main(String[] args) {
    long time=System.currentTimeMillis();
    try {
    String endpoint="http://127.0.0.1/WebService1/Service1.asmx";
    Service service = new Service();
    Call call = (Call)service.createCall();
    call.setTargetEndpointAddress(new java.net.URL(endpoint));
    call.setOperationName(new QName("http://127.0.0.1/WebService1/Service1.asmx","HelloWorld"));
    call.setReturnType(org.apache.axis.encoding.XMLType.XSD_STRING);
    call.setUseSOAPAction(true);
    call.setSOAPActionURI("http://localhost/UserX/bizinfo/get_count");
    String day = (String)call.invoke(new Object[] {});
    System.out.println(day);
    } catch (Exception e) {
    System.err.println(e.toString());
    }
    System.out.println("Total time is: "+(System.currentTimeMillis()-time));
    }
    }
      

  10.   

    java client
    call.setSOAPActionURI("http://www.my.com/Rpc");.net services
    [SoapRpcMethod(Action="http://www.my.com/Rpc",RequestNamespace="http://www.my.com/SU",ResponseNamespace="http://www.my.com/SU")]
    [WebMethod(Description="This is a test XML Web service.")]
    public int CalMarket()
    {
                      .......
    }