tomee-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Thorsten Meinl (JIRA)" <>
Subject [jira] [Created] (TOMEE-1510) CXF Continuations not working for REST services
Date Mon, 09 Feb 2015 20:12:35 GMT
Thorsten Meinl created TOMEE-1510:

             Summary: CXF Continuations not working for REST services
                 Key: TOMEE-1510
             Project: TomEE
          Issue Type: Bug
    Affects Versions: 1.7.1
            Reporter: Thorsten Meinl

CXF Continuations for asynchronous REST requests are not working. You can suspend the current
request but when you try to resume it, the original method will not be found. I debugged into
the code and the bug seems to be in line 118 of org.apache.tomee.webservices.TomcatRsRegistry.
The URL mapping as added both to the mapping wrapper (line 117) and the context itself. In
line 117 the context root is correctly removed but in line 118 it isn't. Therefore the context
has a mapping of e.g. "/my.context/rest/*" instead of the correct "/rest/*".
The problem does not become apparent on the intial request because there the URL mapping of
the Connector is used to dispatch to the correct class and method and not the Context's mapping.
The connector has the correct mapping (in addition to the wrong one), which was added by org.apache.catalina.connector.MapperListener.registerContext.
However, when using continuations, only the context's mapping is consulted because it's an
"internal" request. Due to the wrong mapping the "/" mapping is used in the end.
The fixed would be simple, just remove the context in line 118, too. I cannot judge if this
has any side-effects, though.

This message was sent by Atlassian JIRA

View raw message