Store the name of the active page into RequestGlobals inside 
PageRenderRequestFilter and ComponentEventRequestHandler
---------------------------------------------------------------------------------------------------------------------

                 Key: TAP5-1234
                 URL: https://issues.apache.org/jira/browse/TAP5-1234
             Project: Tapestry 5
          Issue Type: Improvement
          Components: tapestry-core
    Affects Versions: 5.2.0
            Reporter: Igor Drobiazko


Currently the name of the active page is stored into RequestGlobals inside a 
ComponentRequestFilter (InitializeActivePageName). This is fine for most cases. 

If you terminate the Dispatcher chain before ComponentEventDispatcher and send 
a response using PageRenderRequestHandler service , then 
ComponentRequestHandler pipeline is never called. In this case the name of 
theactive page is never stored into requestGlobals. This can result in weird 
exceptions if the target page contains a Form. During beginRender phase Form 
tries to access the active page from ComponentSource service, which throws an 
exception if the activae page is not set inside RequestGlobals.

Execption message: The identity of the active page for this request has not yet 
been established.

Storing the activa page name into RequestGlobals should be moved from 
ComponentRequestFilter  into PageRenderRequestFilter  and 
ComponentEventRequestHandler.



-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to