JAX-WS API fails to build an endpoint reference (IllegalStateException) when service is published with Endpoint.publish() -------------------------------------------------------------------------------------------------------------------------
Key: AXIS2-4247 URL: https://issues.apache.org/jira/browse/AXIS2-4247 Project: Axis 2.0 (Axis2) Issue Type: Bug Components: jaxws Affects Versions: nightly Environment: JDK 1.6.0_06, WinXP Reporter: Franck Michel Hi, I'm facing a trouble using the Enpoint.publish() JAXWS API. I've checked several issues that may be related, with no success until now : https://issues.apache.org/jira/browse/AXIS2-3116?page=com.atlassian.jira.plugin.ext.subversion:subversion-commits-tabpanel https://wso2.org/jira/browse/CARBON-738 I'm using the last nightly build as some issues were fixed on this kind of thing recently. I publish a very basic WS Endpoint.publish(String url) API: the service seems to be published (isPublished() returns true), but it fails to return an endpoint reference. My code does this: Endpoint endPoint = Endpoint.create(new Axis2Test()); endPoint.publish("http://localhost:8081/services/Test"); logger.debug("isPublished: " + endPoint.isPublished()); logger.debug("getProperties: " + endPoint.getProperties()); logger.debug("getMetadata: " + endPoint.getMetadata()); logger.debug("getEndpointReference: " + endPoint.getEndpointReference()); This fails on endPoint.getEndpointReference(), an returns: java.lang.IllegalStateException: Unable to locate a deployed service that maps to the requested endpoint, Service: {http://server.neurolog.techlog.anr.fr/}Axis2TestService, Port: {http://server.neurolog.techlog.anr.fr/}Axis2TestPort at org.apache.axis2.jaxws.addressing.factory.impl.Axis2EndpointReferenceFactoryImpl.createEndpointReference(Axis2EndpointReferenceFactoryImpl.java:66) at org.apache.axis2.jaxws.addressing.factory.impl.Axis2EndpointReferenceFactoryImpl.createEndpointReference(Axis2EndpointReferenceFactoryImpl.java:97) at org.apache.axis2.jaxws.addressing.util.EndpointReferenceUtils.createAxis2EndpointReference(EndpointReferenceUtils.java:133) at org.apache.axis2.jaxws.server.endpoint.EndpointImpl.getEndpointReference(EndpointImpl.java:244) at org.apache.axis2.jaxws.server.endpoint.EndpointImpl.getEndpointReference(EndpointImpl.java:261) at package.LaunchA2xis2Test.main(LaunchA2xis2Test.java:21) Also, accessing the service using Firefox return this : 2009-02-23 11:52:46,184 [HttpConnection-8081-2] ERROR org.apache.axis2.engine.AxisEngine:212 - The service cannot be found for the endpoint reference (EPR) /services/Test?wsdl org.apache.axis2.AxisFault: The service cannot be found for the endpoint reference (EPR) /services/Test?wsdl at org.apache.axis2.engine.DispatchPhase.checkPostConditions(DispatchPhase.java:65) at org.apache.axis2.engine.Phase.invoke(Phase.java:333) at org.apache.axis2.engine.AxisEngine.invoke(AxisEngine.java:264) at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:163) at org.apache.axis2.transport.http.util.RESTUtil.invokeAxisEngine(RESTUtil.java:136) at org.apache.axis2.transport.http.util.RESTUtil.processURLRequest(RESTUtil.java:130) at org.apache.axis2.transport.http.HTTPWorker.service(HTTPWorker.java:257) at org.apache.axis2.transport.http.server.AxisHttpService.doService(AxisHttpService.java:281) at org.apache.axis2.transport.http.server.AxisHttpService.handleRequest(AxisHttpService.java:187) at org.apache.axis2.transport.http.server.HttpServiceProcessor.run(HttpServiceProcessor.java:82) at edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1061) at edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:575) at java.lang.Thread.run(Thread.java:619) In addition a very curious behaviour is this : when I get this URL, http://localhost:8081/services/Axis2TestService.Axis2TestPort, I get a proper service page with a correct list of available operations. However the link to the wsdl (http://localhost:8081/services/Axis2TestService.Axis2TestPort?wsdl) returns another error : 2009-02-23 11:55:31,728 [HttpConnection-8081-4] WARN org.apache.axis2.description.AxisService:1003 - Unable to generate EPR for the transport : http My web service code is the most simple that could be: import javax.jws.WebService; @WebService public class Axis2Test { public Axis2Test() {} public int getNumber() { return 0; } } -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.