It's very easy to publish web service, using Grizzly. Assume we have "add" web service declared following way:
import javax.jws.WebService;
import javax.jws.WebMethod;
import javax.jws.WebParam;
@WebService
public class AddService {
@WebMethod
public int add(@WebParam(name="value1") int value1, @WebParam(name="value2") int value2) {
return value1 + value2;
}
}In order to make this web service available on URL: http://localhost:8080/add, we do this:
HttpServer httpServer = new HttpServer();
NetworkListener networkListener = new NetworkListener("jaxws-listener", "0.0.0.0", PORT);
HttpHandler httpHandler = new JaxwsHandler(new AddService());
httpServer.getServerConfiguration().addHttpHandler(httpHandler, "/add");
httpServer.addListener(networkListener);
httpServer.start();It's easy to test this, just type http://localhost:8080/add?WSDL in your browser to check the web service's WSDL.