2010-01-25 11 views
5

Stiamo integrando servizi Web SOAP di terze parti nella nostra applicazione. WSDL viene utilizzato con lo strumento SOAPUI, in cui le richieste e le risposte di esempio hanno funzionato correttamente.Errore Apache Axis WSDL2Java - Manca <soap:fault> elemento

Quando proviamo a integrare con Apache Axis 1.3, dove abbiamo provato WSDL2JAVA con WSDL. Abbiamo ricevuto il seguente errore

java.io.IOException: ERRORE: Mancare elemento InFault "serviceFault" in funzione "serviceFault", nel legame saveRegistration a org.apache.axis.wsdl.symbolTable.SymbolTable.faultsFromSOAPFault (SymbolTable. java: 2858) in org.apache.axis.wsdl.symbolTable.SymbolTable.populateBindings (SymbolTable.java:2549) in org.apache.axis.wsdl.symbolTable.SymbolTable.populate (SymbolTable.java:744) presso org.apache.axis.wsdl.symbolTable.SymbolTable.add (SymbolTable.java:543) all'indirizzo org.apache.axis.wsdl.symbolTable.SymbolTable.populate (SymbolTable.java:518) all'indirizzo org.apache.axis. wsdl.symbolTable.SymbolTable.populate (SymbolTable.java:495) a t org.apache.axis.wsdl.gen.Parser $ WSDLRunnable.run (Parser.java:361) a java.lang.Thread.run (Fonte sconosciuta)

Chiunque già affrontato questo problema e risolto?

risposta

14

Credo che sia disponibile uno JIRA per questo.

Descrizione:

Quando si dispone di un sapone 1.2 vincolante con colpa sapone, l'elemento di colpa non è estratto correttamente, con conseguente errore

ERROR: Missing <soap:fault> element inFault "..." in operation "...", in binding ... 

La loro raccomandazione temporanea è l'aggiunta di una riga di codice e ricompilazione dell'Asse 1 ... Nahh.

Personalmente, ho appena scaricato il file WSDL (si tratta di un servizio di Asse 2 e ho un 1,5 client Axis) e curato lo spazio dei nomi per tutte le seguenti righe da:

 <wsdl:fault name="Exception"> 
     <soap12:fault use="literal" name="Exception"/> 
    </wsdl:fault> 

a:

 <wsdl:fault name="Exception"> 
     <soap:fault use="literal" name="Exception"/> 
    </wsdl:fault> 

Come suggerito here.

L'aggiornamento all'Asse 2, tuttavia, rappresenta la migliore soluzione a lungo termine. Dopo aver risolto questo problema, ho trovato ancora più errori nel codice generato da WSDL2JAVA.

+0

Grazie. In seguito ha funzionato per me ' ' – Manohar

Problemi correlati