Antoine Reilles created CXF-4973:
------------------------------------

             Summary: Resource constructor with @PathParam always recieves the 
path param of the first call
                 Key: CXF-4973
                 URL: https://issues.apache.org/jira/browse/CXF-4973
             Project: CXF
          Issue Type: Bug
          Components: JAX-RS
    Affects Versions: 2.6.7
         Environment: tomee 1.6.0-SNAPSHOT
            Reporter: Antoine Reilles


If I define a service using a constructor for injecting path parameters, as 
described in 
[http://cxf.apache.org/docs/jax-rs-basics.html#JAX-RSBasics-DealingwithParameters],
 the service will always be intantiated by recieving the value of the path 
parameter that was obtained during the first invocation of the service. 
Injecting the {{monospaced}}UriInfo{{monospaced}} in the service allows to 
compare the constructor injected path parameter value with the one used in the 
service, showing the issue.

The attached war exhibits the issue:
{code}GET http://localhost/testconstructor/a/b/one{code}
returns {{monospaced}}OK: one{{monospaced}}, and prints in the logs:
{code}
Service Constructor called with: one
Service nameparam one
{code}
A subsequent call to
{code}http://localhost/testconstructor/a/b/two{code}
returns an HTTP 500 (since the code raises an exception), with value 
{{monospaced}}one!= two{{monospaced}}, and prints in the server logs:
{code}
Service Constructor called with: one
Service nameparam two
MyExceptionMapper: javax.ws.rs.WebApplicationException
{code}




--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to