tapestry-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Christophe Cordenier (JIRA)" <j...@apache.org>
Subject [jira] Commented: (TAP5-1201) PageResponseRenderer.render() should call RequestGlobabls.storeActivePageName(String pageName)
Date Sun, 01 Aug 2010 10:37:18 GMT

    [ https://issues.apache.org/jira/browse/TAP5-1201?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12894366#action_12894366
] 

Christophe Cordenier commented on TAP5-1201:
--------------------------------------------

Active page name is used to pre-allocates control names in Form component, but also to append
loopback marker in LinkSource.

Two decent workarounds :

- Redirect instead of direct rendering
- Insert your security component request filter after the one that initializes active page
("InitializeActivePageName")

At last, the active page state should be reseted in case of exception (can be done in developer
code with onException) and current active page should be changed in DefaultRequestExceptionHandler
to avoid consistency problem in loopback URL.

> PageResponseRenderer.render() should call RequestGlobabls.storeActivePageName(String
pageName) 
> -----------------------------------------------------------------------------------------------
>
>                 Key: TAP5-1201
>                 URL: https://issues.apache.org/jira/browse/TAP5-1201
>             Project: Tapestry 5
>          Issue Type: Bug
>          Components: tapestry-core
>    Affects Versions: 5.2.0
>            Reporter: Kalle Korhonen
>            Assignee: Christophe Cordenier
>            Priority: Minor
>         Attachments: TAP5-1201.patch
>
>
> Applications may want render an error page as a response to handling an exception thrown
from a page. This can be achieved by calling PageResponseRenderer.render() and worked in T5.1.05
but in T5.2 throws ComponentSource.getActivePage() throws "org.apache.tapestry5.ioc.internal.util.TapestryException:
The identity of the active page for this request has not yet been established" if the newly
added RequestGlobabls.storeActivePageName(String pageName) hasn't been called before. When
asked on the mailing list (http://www.listware.net/201007/tapestry-users/10342-using-pageresponserendererrender-in-t52.html)
for adding the call to PageResponseRenderer.render(), Howard's response was:
> "I suppose it could; just a case of unexpected use of the APIs.  As currently coded,
we assume that the active page is identified by the component event or page render dispatcher."

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


Mime
View raw message