javax.xml.ws.WebServiceException: Port {http://tempuri.org/}WSHttpBinding_IDWService nicht gefunden
Ich versuche zu verbrauchen, einen webservice in java unter Verwendung von einem client generiert aus der wsdl-Datei mit wsdl2java.
Ich bin mit dem Eclipse-version Helios und jdk 1.6.0_20, und ich habe generiert .Klasse-Dateien mit wsld2java mit den Optionen:
"-d c:\WebServices\Generated -client -verbose -kompilieren -autoNameResolution -p org.dwservice -sn DWService -wsdlLocation /WEB-INF/wsdl/DWService.wsdl c:\WebServices\DWService.wsdl"
Ich packte die resultierenden Dateien in eine .Glas und fügte zu meinem Projekt, das kompiliert ok.
Aber wenn ich versuche, einen webservice, bekam ich die Ausnahme:
javax.xml.ws.WebServiceException: Port {http://tempuri.org/}WSHttpBinding_IDWService not found.
at org.apache.cxf.jaxws.ServiceImpl.getPort(ServiceImpl.java:311)
at org.apache.cxf.jaxws.ServiceImpl.getPort(ServiceImpl.java:302)
at javax.xml.ws.Service.getPort(Service.java:92)
at org.dwservice.DWService.getWSHttpBindingIDWService(DWService.java:63)
Und das ist mein code:
import org.dwservice.*;
...
private DWService dwService = new DWService();
private IDWService iDWService = ***dwService.getWSHttpBindingIDWService()***;
Jede Idee würde sehr geschätzt werden.
- Ist Ihre Web-service-Schnittstelle und die WSDL-zugänglich über den browser ?
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ich weiß, dieser post ist über ein Jahr alt, aber es ist ein hoch bewertet suchergebnis für diesen Fehler. Ich bin das hinzufügen dieser Antwort für die Nachwelt.
Ihre wsdl2java-Befehl schlägt Ihre WSDL-lokalen und Sie Verpacken es in eine web-app. Ich vermute, die app ist nicht zu finden, die verpackt WSDL zur Laufzeit. Eine option ist das laden einer Java-Ressource, und übergeben Sie Ihre Lage in Ihrem service-Konstruktor:
Wenn Sie diesen Ansatz verwenden, triple-überprüfen Sie den Pfad zu Ihrer WSDL. Es ist einfach für getResource() auf, treten Fehler auf, die den gleichen Fehler erzeugen.