You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@cxf.apache.org by "Joseph Leung (JIRA)" <ji...@apache.org> on 2014/07/29 05:46:38 UTC

[jira] [Closed] (CXF-5889) No root resource matching request when using atmosphere websocket

     [ https://issues.apache.org/jira/browse/CXF-5889?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Joseph Leung closed CXF-5889.
-----------------------------

    Estimated Complexity:   (was: Unknown)

> No root resource matching request when using atmosphere websocket 
> ------------------------------------------------------------------
>
>                 Key: CXF-5889
>                 URL: https://issues.apache.org/jira/browse/CXF-5889
>             Project: CXF
>          Issue Type: Bug
>          Components: Transports
>    Affects Versions: 3.0.0
>         Environment: atmosphere-runtime 2.1.7
> Apache Tomcat/7.0.52
>            Reporter: Joseph Leung
>            Assignee: Sergey Beryozkin
>              Labels: atmosphere, jax-rs, websocket
>             Fix For: 3.0.2
>
>
> When using websocket jax-rs in container mode with atmoshpere,
> org.apache.cxf.transport.endpoint.address is not set in the request used to resolve jaxrs resource, which means it will not trucate the
> container path in the uri before comparing with @Path, and since WebSocketVirtualServletRequest will check if the request is within the orgin path, work aound by request uri is not possible.
> the request in the org.apache.cxf.transport.websocket.atmosphere.AtmosphereWebSocketHandler passed into org.apache.cxf.transport.websocket.atmosphere.AtmosphereWebSocketHandler.onMessage()
> did contains the attribute, but it is not copied to the request created in createServletRequest
> [INFO ] 09:50:44.315|http-bio-8080-exec-3|org.apache.cxf.interceptor.LoggingInInterceptor| Inbound Message
> ----------------------------
> ID: 8
> Address: http://127.0.0.1:8080/jaxrs-websocket/websocket/web/bookstore/bookbought
> Http-Method: GET
> Content-Type: 
> Headers: {$method=[GET], $uri=[/jaxrs-websocket/websocket/web/bookstore/bookbought], Content-Type=[null]}
> --------------------------------------
> [DEBUG] 09:50:44.315|http-bio-8080-exec-3|org.apache.cxf.phase.PhaseInterceptorChain| Invoking handleMessage on interceptor org.apache.cxf.transport.https.CertConstraintsInterceptor@5e834b36
> [DEBUG] 09:50:44.315|http-bio-8080-exec-3|org.apache.cxf.phase.PhaseInterceptorChain| Invoking handleMessage on interceptor org.apache.cxf.jaxrs.interceptor.JAXRSInInterceptor@7a0522a5
> [INFO ] 09:50:44.315|http-bio-8080-exec-3|org.apache.cxf.transport.websocket.WebSocketVirtualServletRequest| getAttribute(org.apache.cxf.transport.endpoint.address)
> [DEBUG] 10:03:01.926|http-bio-8080-exec-3|org.apache.cxf.jaxrs.utils.JAXRSUtils| Trying to select a resource class, request path : /jaxrs-websocket/websocket/web/bookstore/bookbought
> [WARN ] 10:03:01.927|http-bio-8080-exec-3|org.apache.cxf.jaxrs.interceptor.JAXRSInInterceptor| No root resource matching request path /jaxrs-websocket/websocket/web/bookstore/bookbought has been found, Relative Path: /jaxrs-websocket/websocket/web/bookstore/bookbought. Please enable FINE/TRACE log level for more details.
> [WARN ] 10:03:01.927|http-bio-8080-exec-3|org.apache.cxf.jaxrs.impl.WebApplicationExceptionMapper| javax.ws.rs.NotFoundException: HTTP 404 Not Found



--
This message was sent by Atlassian JIRA
(v6.2#6252)