[
https://issues.apache.org/jira/browse/CXF-5347?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Alnour Goulamhoussen updated CXF-5347:
--------------------------------------
Description:
When the application receive a request with an url containing an extension and
the jsessionid, like http://mycompany.com/app/service.xml;jsessionid , CXF is
not able to match the path to a registered service :
{code}
WARNING: No operation matching request path
"/cxf-sample/hello/jsonBean.json;jsessionid=mysession" is found, Relative Path:
/jsonBean.json;jsessionid=mysession, HTTP Method: POST, ContentType:
application/json, Accept: application/json,.
Oct 21, 2013 4:57:54 PM org.apache.cxf.jaxrs.impl.WebApplicationExceptionMapper
toResponse
WARNING: javax.ws.rs.ClientErrorException
at
org.apache.cxf.jaxrs.utils.JAXRSUtils.findTargetMethod(JAXRSUtils.java:503)
at
org.apache.cxf.jaxrs.interceptor.JAXRSInInterceptor.processRequest(JAXRSInInterceptor.java:227)
at
org.apache.cxf.jaxrs.interceptor.JAXRSInInterceptor.handleMessage(JAXRSInInterceptor.java:103)
[...]
{code}
The reason is that the class org.apache.cxf.jaxrs.impl.RequestPreprocessor
doesn't strip the jsessionid before trying to match extension/language mappings
was:
When the application receive a request with an url containing an extension and
the jsessionid, like http://mycompany.com/app/service.xml;jsessionid , CXF is
not able to match the path to a registered service :
{code}
WARNING: No operation matching request path
"/cxf-sample/hello/jsonBean.json;jsessionid=mysession" is found, Relative Path:
/jsonBean.json;jsessionid=mysession, HTTP Method: POST, ContentType:
application/json, Accept: application/json,. Please enable FINE/TRACE log level
for more details.
Oct 21, 2013 4:57:54 PM org.apache.cxf.jaxrs.impl.WebApplicationExceptionMapper
toResponse
WARNING: javax.ws.rs.ClientErrorException
at
org.apache.cxf.jaxrs.utils.JAXRSUtils.findTargetMethod(JAXRSUtils.java:503)
at
org.apache.cxf.jaxrs.interceptor.JAXRSInInterceptor.processRequest(JAXRSInInterceptor.java:227)
at
org.apache.cxf.jaxrs.interceptor.JAXRSInInterceptor.handleMessage(JAXRSInInterceptor.java:103)
[...]
{code}
> Request routing is broken when the URL contains both jsessionid and an
> extension
> --------------------------------------------------------------------------------
>
> Key: CXF-5347
> URL: https://issues.apache.org/jira/browse/CXF-5347
> Project: CXF
> Issue Type: Bug
> Components: JAX-RS
> Affects Versions: 2.7.7
> Reporter: Alnour Goulamhoussen
>
> When the application receive a request with an url containing an extension
> and the jsessionid, like http://mycompany.com/app/service.xml;jsessionid ,
> CXF is not able to match the path to a registered service :
> {code}
> WARNING: No operation matching request path
> "/cxf-sample/hello/jsonBean.json;jsessionid=mysession" is found, Relative
> Path: /jsonBean.json;jsessionid=mysession, HTTP Method: POST, ContentType:
> application/json, Accept: application/json,.
> Oct 21, 2013 4:57:54 PM
> org.apache.cxf.jaxrs.impl.WebApplicationExceptionMapper toResponse
> WARNING: javax.ws.rs.ClientErrorException
> at
> org.apache.cxf.jaxrs.utils.JAXRSUtils.findTargetMethod(JAXRSUtils.java:503)
> at
> org.apache.cxf.jaxrs.interceptor.JAXRSInInterceptor.processRequest(JAXRSInInterceptor.java:227)
> at
> org.apache.cxf.jaxrs.interceptor.JAXRSInInterceptor.handleMessage(JAXRSInInterceptor.java:103)
> [...]
> {code}
> The reason is that the class org.apache.cxf.jaxrs.impl.RequestPreprocessor
> doesn't strip the jsessionid before trying to match extension/language
> mappings
--
This message was sent by Atlassian JIRA
(v6.1#6144)