2010-01-25 14 views
5

Wir integrieren eine SOAP-Web-Services von Drittanbietern in unserer Anwendung. Die WSDL wird mit dem SOAPUI-Tool verwendet, wo Musteranfragen und -antworten gut funktionierten.Apache Axis WSDL2Java Fehler - Fehlende <soap:fault> Element

Wenn wir versuchen, mit Apache Axis 1.3 zu integrieren, wo wir WSDL2JAVA mit der WSDL versucht. Wir haben folgende Fehler

java.io.IOException: ERROR: fehlende Element inFault "serviceFault" in Betrieb "serviceFault", in saveRegistration bei org.apache.axis.wsdl.symbolTable.SymbolTable.faultsFromSOAPFault (Symboltabelle zu binden. Java: 2858) bei org.apache.axis.wsdl.symbolTable.SymbolTable.populateBindings (SymbolTable.java:2549) bei org.apache.axis.wsdl.symbolTable.SymbolTable.populate (SymbolTable.java:744) bei org.apache.axis.wsdl.symbolTable.SymbolTable.add (SymbolTable.java:543) bei org.apache.axis.wsdl.symbolTable.SymbolTable.populate (SymbolTable.java:518) bei org.apache.axis. wsdl.symbolTable.SymbolTable.populate (SymbolTable.java:495) a t org.apache.axis.wsdl.gen.Parser $ WSDLRunnable.run (Parser.java:361) bei java.lang.Thread.run (Unknown Source)

Wer diese Frage bereits gestellt und gelöst?

Antwort

14

Ich glaube, dass es eine JIRA offen für diese gibt.

Beschreibung:

Wenn Sie eine Seife 1.2 Bindung mit Seife Fehler aufweisen, wird das Fehlerelement nicht korrekt extrahiert, in Fehler führt

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

Ihre temporäre Empfehlung ist eine Codezeile hinzugefügt und Neukompilieren von Axis1 ... Nahh.

Persönlich habe ich gerade heruntergeladen der WSDL-Datei (es ist eine Achse 2 Service und ich habe eine Achse 1.5-Client) und bearbeitet den Namespace für alle folgenden Zeilen aus:

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

zu:

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

Wie vorgeschlagen here.

Das Upgrade auf Axis2 ist jedoch die beste langfristige Lösung. Nachdem ich dieses Problem gelöst habe, habe ich noch mehr Fehler im Code gefunden, den WSDL2JAVA generiert hat.

+0

Danke. Folgendes funktionierte für mich ' ' – Manohar

Verwandte Themen