Visualizzazione dei risultati da 1 a 6 su 6
  1. #1

    [java] webservice in c# e client in java

    salve sto tentando di fare comunicare un client fatto in java(axis2 1.4) con un webservice scritto in c#.

    codice java :
    codice:
    try{
    			hellojaxws.HelloJaxWsStub s = new HelloJaxWsStub("http://localhost:5969/HelloJaxWs.asmx");
    			hellojaxws.HelloJaxWsStub.Hello h = new hellojaxws.HelloJaxWsStub.Hello();
    			h.setName("Massimo");
    			hellojaxws.HelloJaxWsStub.HelloResponse res = s.hello(h);
    			System.out.println(res.getHelloResult());
    		}catch(Exception ex){
    			System.out.println(ex.getMessage());
    		}
    lo stub l'ho generato con wsdl2java

    codice c# :
    codice:
    using System;
    using System.Collections;
    using System.ComponentModel;
    using System.Data;
    using System.Web;
    using System.Web.Services;
    using System.Web.Services.Protocols;
    
    namespace webservice
    {
        /// <summary>
        /// Descrizione di riepilogo per Service1
        /// </summary>
        [WebService(Namespace = "urn:HelloJaxWs")]
        [SoapRpcService()]
        [WebServiceBinding(ConformsTo = WsiProfiles.None)]
        [ToolboxItem(false)]
        public class HelloJaxWs : System.Web.Services.WebService
        {
    
            [WebMethod]
            public string hello(string name)
            {
                return "Hello World " + name;
            }
        }
    }
    l'errore che prendo è questo :

    The input stream for an incoming message is null.


    codice:
    [org.apache.axis2.transport.TransportUtils.createSOAPMessage(TransportUtils.java:72),
    org.apache.axis2.description.OutInAxisOperationClient.handleResponse(OutInAxisOperation.java:353),
    org.apache.axis2.description.OutInAxisOperationClient.send(OutInAxisOperation.java:416),
    org.apache.axis2.description.OutInAxisOperationClient.executeImpl(OutInAxisOperation.java:228),
    org.apache.axis2.client.OperationClient.execute(OperationClient.java:163),
    hellojaxws.HelloJaxWsStub.hello(HelloJaxWsStub.java:186),
    main_test.main(main_test.java:20)]
    potreste aiutarmi?

  2. #2
    help please!

  3. #3
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,328
    Premetto che di WebServices non so praticamente nulla, tantomeno di C#....

    Ma non mi torna una cosa: il metodo hello() vuole come argomento una stringa, mentre dal codice che riporti tu passi a questo metodo un oggetto di tipo hellojaxws.HelloJaxWsStub.Hello

    Vedi codice da te indicato:
    codice:
    hellojaxws.HelloJaxWsStub.Hello h = new hellojaxws.HelloJaxWsStub.Hello();
    h.setName("Massimo");
    hellojaxws.HelloJaxWsStub.HelloResponse res = s.hello(h);
    Ripeto: non sono pratico di WS e non so nulla di C#, ma credo che dovresti richiamare il metodo hello() passando una stringa e non un oggetto di tipo Hello... posso supporre che l'oggetto Hello abbia anche un metodo getName() che dovresti usare in questo modo:
    codice:
    hellojaxws.HelloJaxWsStub.HelloResponse res = s.hello(h.getName());
    (è solo una supposizione)


    Ciao.
    "Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

  4. #4
    la firma del metodo :HelloResponse hello(Hello hello).
    come vedi è il wsdl2java che ha creato lo stub che come firma del metodo accetta e restituisce quegli oggetti.

  5. #5

  6. #6
    Utente di HTML.it
    Registrato dal
    Mar 2007
    Messaggi
    41
    Premetto che di c# non consco nulla, e che io uso cxf.
    Ti consiglio di controllare se i messaggi soap che viaggiano tra client e server sono corretti. Usa un programma tipo tcpmon o similia.
    Magari posta anche il wsdl che diamo un occhiata a come è definito l'endpoint.
    E se puoi posta tutto lo stack trace. Ho troppo poche info per aiutati adesso.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2026 vBulletin Solutions, Inc. All rights reserved.