Publishing a WS with Jax-WS Endpoint

daniel picture daniel · Sep 9, 2010 · Viewed 33.6k times · Source

I built a minimal web service and published it using javax.xml.ws.Endpoint. If I try to get the WSDL at http://localhost:1234/AddService?wsdl it works fine.

Trying to recieve it at http://192.168.0.133:1234/AddService?wsdl, I don't receive anything. This address is the same as localhost.

Is there a posibiility to publish a webservice without providing the address?

package test;

import javax.jws.WebMethod;
import javax.jws.WebService;
import javax.xml.ws.Endpoint;

@WebService
public class AddService {

    @WebMethod
    public int add(int a, int b){
        return a+b;
    }

    public static void main(String[] args ){
        Endpoint.publish("http://localhost:1234/AddService", new AddService());
    }
}

Changing the code to

Endpoint.publish("http://192.168.0.133:1234/AddService", new AddService());

gets me the wsdl on the IP address but not on localhost.

Isn't there a posibility to just define the port?

Answer

ivy picture ivy · Sep 10, 2010

Could you try publishing it on 0.0.0.0?