Hi,

Thanks for your response.
I have a additional question:
In tapestry, is there any way to invoke an method when "page begin render" one time?

I need retrieve the records from database before the page begin render, this is a heavy weight operation, I don't want it will be invoke twice.

Thanks.

Kind regards.


Huang Yifu  »ÆÞȸ£


From: "Howard M. Lewis Ship (JIRA)" <[email protected]>
To: [EMAIL PROTECTED]
Subject: [jira] Closed: (TAPESTRY-744) page method pageBeginRender() was been invoked twice when direct link to a page
Date: Sat, 12 Nov 2005 04:08:05 +0100 (CET)

     [ http://issues.apache.org/jira/browse/TAPESTRY-744?page=all ]

Howard M. Lewis Ship closed TAPESTRY-744:
-----------------------------------------

    Resolution: Invalid
     Assign To: Howard M. Lewis Ship

This is correct behavior; pageBeginRender() is invoked when a form within a page rewinds, then again when the response page is rendered.

> page method pageBeginRender() was been invoked twice when direct link to a page > -------------------------------------------------------------------------------
>
>          Key: TAPESTRY-744
>          URL: http://issues.apache.org/jira/browse/TAPESTRY-744
>      Project: Tapestry
>         Type: Bug
>   Components: Framework
>     Versions: 4.0
>  Environment: windows jboss
>     Reporter: HUANG Yifu
>     Assignee: Howard M. Lewis Ship

>
> I used a @Submit component to invoke the delete method of page class,
> -----------------
> <span jwcid="@Submit" class="button" listener="ognl:listeners.delete" label="message:button.delete" > onclick="javascript: return deleteConfirm();" parameters="ognl:currentObject.id" />
> -----------------
> and found the pageBeginRender method was invoked twice, the flow listed below:
> =================================
> first time(invoke pageBeginRender method)
> -----------------
> at org.apache.tapestry.AbstractPage.firePageBeginRender(AbstractPage.java:478) > at org.apache.tapestry.AbstractPage.beginPageRender(AbstractPage.java:529) > at org.apache.tapestry.engine.RequestCycle.rewindForm(RequestCycle.java:439)
> at org.apache.tapestry.form.Form.trigger(Form.java:338)
> at org.apache.tapestry.engine.DirectService.triggerComponent(DirectService.java:144) > at org.apache.tapestry.engine.DirectService.service(DirectService.java:130)
> then invoke listener mothod delete()
> ------------------------------------------
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) > at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> at java.lang.reflect.Method.invoke(Method.java:585)
> at org.apache.tapestry.listener.ListenerMethodInvokerImpl.invokeTargetMethod(ListenerMethodInvokerImpl.java:214) > at org.apache.tapestry.listener.ListenerMethodInvokerImpl.invokeListenerMethod(ListenerMethodInvokerImpl.java:155) > at org.apache.tapestry.listener.ListenerMethodInvokerImpl.searchAndInvoke(ListenerMethodInvokerImpl.java:124) > at org.apache.tapestry.listener.ListenerMethodInvokerImpl.invokeListenerMethod(ListenerMethodInvokerImpl.java:73) > at org.apache.tapestry.listener.SyntheticListener.actionTriggered(SyntheticListener.java:51) > at org.apache.tapestry.listener.ListenerInvokerTerminator.invokeListener(ListenerInvokerTerminator.java:51) > at $ListenerInvoker_10778cfb798.invokeListener($ListenerInvoker_10778cfb798.java) > at org.apache.tapestry.form.AbstractSubmit.handleClick(AbstractSubmit.java:81) > at org.apache.tapestry.form.AbstractSubmit.rewindFormComponent(AbstractSubmit.java:49) > at org.apache.tapestry.form.AbstractFormComponent.renderComponent(AbstractFormComponent.java:115) > at org.apache.tapestry.AbstractComponent.render(AbstractComponent.java:617)
> then the second time(invoke pageBeginRender method)
> ---------------------------------------
> at org.apache.tapestry.AbstractPage.firePageBeginRender(AbstractPage.java:478)
> at org.apache.tapestry.AbstractPage.renderPage(AbstractPage.java:268)
> at org.apache.tapestry.engine.RequestCycle.renderPage(RequestCycle.java:368) > at org.apache.tapestry.services.impl.ResponseRendererImpl.renderResponse(ResponseRendererImpl.java:71) > at $ResponseRenderer_10778cfb78a.renderResponse($ResponseRenderer_10778cfb78a.java) > at org.apache.tapestry.engine.DirectService.service(DirectService.java:135)

--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira




---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to