I debugged CXF little and realized, that I'm confused what address must be passed to Endpoint.publish().

Endpoint.publish("http://localhost:8080/services/users";, impl);

There is no exception, everything looks ok, but it does not work. I debugged ServletController.invoke() and transport.getDestinations() contains "/http://localhost:8080/sluzby/users";, so the adress "/users" is never found.

Because of starting slash in destinations I attempted to set path instead of hostname, but it failed with exception:

Endpoint.publish("/users", impl);

2008-04-24 22:28:05.641::WARN: Nested in javax.servlet.ServletException: org.apache.cxf.service.factory.ServiceConstructionException:
org.apache.cxf.service.factory.ServiceConstructionException
at org.apache.cxf.frontend.ServerFactoryBean.create(ServerFactoryBean.java:135) at org.apache.cxf.jaxws.JaxWsServerFactoryBean.create(JaxWsServerFactoryBean.java:160) at org.apache.cxf.jaxws.EndpointImpl.getServer(EndpointImpl.java:304) at org.apache.cxf.jaxws.EndpointImpl.doPublish(EndpointImpl.java:232)
        at org.apache.cxf.jaxws.EndpointImpl.publish(EndpointImpl.java:183)
at org.apache.cxf.jaxws.spi.ProviderImpl.createAndPublishEndpoint(ProviderImpl.java:74)
        at javax.xml.ws.Endpoint.publish(Endpoint.java:156)
Caused by: java.net.MalformedURLException: no protocol: /users
        at java.net.URL.<init>(URL.java:567)
        at java.net.URL.<init>(URL.java:464)
        at java.net.URL.<init>(URL.java:413)
at org.apache.cxf.transport.http_jetty.JettyHTTPDestination.<init>(JettyHTTPDestination.java:84) at org.apache.cxf.transport.http_jetty.JettyHTTPTransportFactory.createDestination(JettyHTTPTransportFactory.java:116) at org.apache.cxf.transport.http_jetty.JettyHTTPTransportFactory.getDestination(JettyHTTPTransportFactory.java:103) at org.apache.cxf.binding.soap.SoapTransportFactory.getDestination(SoapTransportFactory.java:74) at org.apache.cxf.endpoint.ServerImpl.initDestination(ServerImpl.java:90)
        at org.apache.cxf.endpoint.ServerImpl.<init>(ServerImpl.java:69)
at org.apache.cxf.frontend.ServerFactoryBean.create(ServerFactoryBean.java:114)


So am I doing something wrong or is it 2.0.5 bug?

Thanks for info, what to do now

Leos

Reply via email to