You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@tapestry.apache.org by Inge Solvoll <in...@gmail.com> on 2006/01/13 16:04:08 UTC

Tapestry 4 upgrade problem, nested link

I have a component that contains a component that contains a link component.
After upgrading to T4, I get the following error when I access the page by
submitting a form on the previous page, and running cycle.activate() on the
page (The url in the browser becomes  /SurveyEdit,form.sdirect):

Component SurveyEdit/viewQuestionnaireLink.link requires rendering support,
but no PageRenderSupport object has been stored into the request cycle. This
object is typically provided by a Body component. You should add a Body
component to your template.

When I access the page using the reset url, /SurveyParticipants.reset, the
page renders.... I have a Body component wrapping all the other components.

Thanks

Inge

Re: Tapestry 4 upgrade problem, nested link

Posted by Inge Solvoll <in...@gmail.com>.
Thanks, that's probably it, sounds logical!

Inge

On 1/13/06, Sohail Aslam <so...@techlogix.com> wrote:
>
> I had a similar problem with PopupLinkRenderer. The issue is logged as
> http://issues.apache.org/jira/browse/TAPESTRY-774. I used the proposed
> fix to create MyPopupLinkRenderer which overrides the constructURL
> method and checks for the rewind phase:
>
> =========================
> import org.apache.tapestry.contrib.link.PopupLinkRenderer;
> import org.apache.tapestry.components.ILinkComponent;
> import org.apache.tapestry.IRequestCycle;
>
> public class MyPopupLinkRenderer extends PopupLinkRenderer
> {
>      public String constructURL(ILinkComponent link, IRequestCycle cycle)
>      {
>          if (cycle.isRewinding()) {
>              return null;
>          }
>          return super.constructURL(link, cycle);
>      }
> }
>
> =========================
> Try this approach with your link component. It may help out.
>
> Regards
> Sohail Aslam
> sohail.aslam AT google mail dot calm
>
> Inge Solvoll wrote:
> > I have a component that contains a component that contains a link
> component.
> > After upgrading to T4, I get the following error when I access the page
> by
> > submitting a form on the previous page, and running cycle.activate() on
> the
> > page (The url in the browser becomes  /SurveyEdit,form.sdirect):
> >
> > Component SurveyEdit/viewQuestionnaireLink.link requires rendering
> support,
> > but no PageRenderSupport object has been stored into the request cycle.
> This
> > object is typically provided by a Body component. You should add a Body
> > component to your template.
> >
> > When I access the page using the reset url, /SurveyParticipants.reset,
> the
> > page renders.... I have a Body component wrapping all the other
> components.
> >
> > Thanks
> >
> > Inge
> >
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: tapestry-user-unsubscribe@jakarta.apache.org
> For additional commands, e-mail: tapestry-user-help@jakarta.apache.org
>
>

Re: Tapestry 4 upgrade problem, nested link

Posted by Sohail Aslam <so...@techlogix.com>.
I had a similar problem with PopupLinkRenderer. The issue is logged as
http://issues.apache.org/jira/browse/TAPESTRY-774. I used the proposed 
fix to create MyPopupLinkRenderer which overrides the constructURL 
method and checks for the rewind phase:

=========================
import org.apache.tapestry.contrib.link.PopupLinkRenderer;
import org.apache.tapestry.components.ILinkComponent;
import org.apache.tapestry.IRequestCycle;

public class MyPopupLinkRenderer extends PopupLinkRenderer
{
     public String constructURL(ILinkComponent link, IRequestCycle cycle)
     {
         if (cycle.isRewinding()) {
             return null;
         }
         return super.constructURL(link, cycle);
     }
}

=========================
Try this approach with your link component. It may help out.

Regards
Sohail Aslam
sohail.aslam AT google mail dot calm

Inge Solvoll wrote:
> I have a component that contains a component that contains a link component.
> After upgrading to T4, I get the following error when I access the page by
> submitting a form on the previous page, and running cycle.activate() on the
> page (The url in the browser becomes  /SurveyEdit,form.sdirect):
> 
> Component SurveyEdit/viewQuestionnaireLink.link requires rendering support,
> but no PageRenderSupport object has been stored into the request cycle. This
> object is typically provided by a Body component. You should add a Body
> component to your template.
> 
> When I access the page using the reset url, /SurveyParticipants.reset, the
> page renders.... I have a Body component wrapping all the other components.
> 
> Thanks
> 
> Inge
> 


---------------------------------------------------------------------
To unsubscribe, e-mail: tapestry-user-unsubscribe@jakarta.apache.org
For additional commands, e-mail: tapestry-user-help@jakarta.apache.org