Laufzeit modeler-Fehler beim erstellen von sehr einfachen web-service in java
Ich bin Anfänger in java-web-services.
Habe ich eine einfache web-service und wenn Sie versuchen, es zu veröffentlichen, wie unten
Endpoint.publish("http://localhost:8080/HelloWeb", new HelloWeb());
Immer Fehler wie unten
Exception in thread "main" com.sun.xml.internal.ws.model.RuntimeModelerException: runtime modeler error: Wrapper class com.ravi.jaxws.SayGreeting is not found. Have you run APT to generate them?
at com.sun.xml.internal.ws.model.RuntimeModeler.getClass(RuntimeModeler.java:256)
at com.sun.xml.internal.ws.model.RuntimeModeler.processDocWrappedMethod(RuntimeModeler.java:567)
at com.sun.xml.internal.ws.model.RuntimeModeler.processMethod(RuntimeModeler.java:514)
at com.sun.xml.internal.ws.model.RuntimeModeler.processClass(RuntimeModeler.java:341)
at com.sun.xml.internal.ws.model.RuntimeModeler.buildRuntimeModel(RuntimeModeler.java:227)
at com.sun.xml.internal.ws.server.EndpointFactory.createSEIModel(EndpointFactory.java:308)
at com.sun.xml.internal.ws.server.EndpointFactory.createEndpoint(EndpointFactory.java:174)
at com.sun.xml.internal.ws.api.server.WSEndpoint.create(WSEndpoint.java:420)
at com.sun.xml.internal.ws.api.server.WSEndpoint.create(WSEndpoint.java:439)
at com.sun.xml.internal.ws.transport.http.server.EndpointImpl.createEndpoint(EndpointImpl.java:208)
at com.sun.xml.internal.ws.transport.http.server.EndpointImpl.publish(EndpointImpl.java:138)
at com.sun.xml.internal.ws.spi.ProviderImpl.createAndPublishEndpoint(ProviderImpl.java:90)
at javax.xml.ws.Endpoint.publish(Endpoint.java:170)
at com.ravi.Server.main(Server.java:9)
Irgendeine Idee, was Los ist hier falsch.
Meine webservice-Klasse ist sehr einfach und hier ist der code:
@WebService
@SOAPBinding(style = Style.DOCUMENT, use=Use.LITERAL)
public class HelloWeb {
@WebMethod
public String sayHello(String name){
return "Hello "+name;
}
}
Du musst angemeldet sein, um einen Kommentar abzugeben.
ersten aufrufen der wsgen-Dienstprogramm. Dieses Dienstprogramm generiert die verschiedenen Artefakte , d.h. java-Typen benötigt, die durch die Methode Endpoint.veröffentlichen Sie generate WSDL des Diensts.Hier ist das Beispiel
Im Arbeitsverzeichnis ausführen
wsgen -keep -cp . package.HelloWeb
in den target/classes/ directory. Danke für Eure Hilfe.