[
https://issues.apache.org/jira/browse/TAPESTRY-872?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Jesse Kuhnert resolved TAPESTRY-872.
------------------------------------
Resolution: Fixed
Assignee: Jesse Kuhnert
Yep you're right. Fixed.
> Persitent page properties are not set before PageAttachListener#pageAttached
> method is fired
> --------------------------------------------------------------------------------------------
>
> Key: TAPESTRY-872
> URL: https://issues.apache.org/jira/browse/TAPESTRY-872
> Project: Tapestry
> Issue Type: Bug
> Components: Framework
> Affects Versions: 4.0
> Environment: Windows 2000 Proffesional SP4
> Apache Tomcat 4.1
> Tapestry 4
> Reporter: Petr Marek
> Assigned To: Jesse Kuhnert
> Fix For: 4.1.2
>
>
> Persisten page property in pageAttached method is not set to stored property
> value before this listener is notified.It is set after pageAttached is
> called, not before. It means property values stored in session can not be
> accesses in pageAttached method. If II understood specificaion correctly, it
> should be set before pageAttached is called.
> In javadoc specification for PageAttachListener#pageAttached(PageEvent event)
> it is written:
> "... Notifications occur after persistent page properties have been restored,
> but before the page is
> activated (if it is activated). ..."
> Here is simple example:
> ZTest.page specification:
> <page-specification class="ZTest">
> <property name="name" persist="session"/>
> <property name="nameNoSession"/>
> </page-specification>
> Asociated java class:
> public abstract class ZTest extends BasePage implements PageAttachListener
> {
> public abstract String getName();
> public abstract void setName(String name);
> public abstract String getNameNoSession();
> public abstract void setNameNoSession(String nameWithoutSession);
> public void pageAttached(PageEvent event) {
> String name = this.getName(); // <-- here is returned null
> every time even if value is stored to session
> String nameWithoutSession = this.getNameNoSession();
> }
> /**
> * Listener
> * <at> cycle
> */
> public void namelistener(IRequestCycle cycle) {
> String name = this.getName(); // <-- here is correctly
> returned value stored in session
> String nameWithoutSession = this.getNameNoSession();
> cycle.activate("Home");
> }
> }
> Petr Marek
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]