Unfortunately, there is a serious limitation as to what you can do with Ajax in 
portlet mode: you can't generate any portlet url with the AjaxDirect service. 
The reason being that AjaxDirect does not and cannot use the PortletLinkFactory 
(since it operates in servlet mode). This is a limitation of the JSR168 spec.

Hopefully, the new portlet 2.0 spec (JSR286) will overcome this limitation.

Raphael Jean
EntropySoft

> -----Original Message-----
> From: Jesse Kuhnert [mailto:[EMAIL PROTECTED]
> Sent: vendredi 10 février 2006 16:02
> To: Tapestry users
> Subject: Re: Tacos & Tapestry Portlets?
> 
> How cool! I love hivemind sometimes :)
> 
> On 2/10/06, Raphaël Jean <[EMAIL PROTECTED]> wrote:
> >
> > I was able to use the Autocompleter component in portlet mode. The trick
> > is to set the tacos.AjaxDirect service to not use the infrastructure
> > LinkFactory but to use the servlet LinkFactory (the one used to generate
> > resource links like assets):
> >
> >     <set-object property="linkFactory"
> >                 value="service:tapestry.url.LinkFactory"/>
> > instead of:
> >
> >     <set-object property="linkFactory"
> >                 value="infrastructure:linkFactory"/>
> >
> > This works in both normal (servlet) mode and in portlet mode.
> >
> > I haven't tried any of the other tacos components.
> >
> > Raphael Jean
> > EntropySoft
> >
> > > -----Original Message-----
> > > From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]
> > > Sent: vendredi 10 février 2006 02:26
> > > To: Tapestry users
> > > Subject: Re: Tacos & Tapestry Portlets?
> > >
> > > Hi, I had done some similar tests a month ago.
> > >
> > > From  Aj Gregory <[EMAIL PROTECTED]>:
> > >
> > > > Is it true that you can't use Tacos AjaxDirectLink with portlets
> since
> > > > getAbsoluteURL isn't supported?
> > >
> > > Yes, that was the case. Three days ago I refactored AjaxDirectLink,
> > > and it no longer uses getAbsoluteURL. Will have to check which other
> > > components use it.
> > >
> > > > Is there a work around?
> > >
> > > Back then, i had tried patching tacos to use getURL instead of
> > > getAbsoluteURL. But then I came across the other problem:
> > > request.getHeader(...) is also unsupported in portlets, and it is
> > > currently needed by the AjaxDirectService. The headers are set
> > > in the incoming request by dojo (or perhaps tacos.js) - I do not know
> > > if theres another way to pass such info.
> > >
> > > Anyway, i commented out those lines (just to see what happens)
> > > and they run ok - but of course with no ajax functionality at all.
> > > The best I could get (with portlets and tacos) was having a
> > > javascript-disabled similar experience.
> > >
> > > PS. I ve added these details in an old bug report - bug6 or bug7
> > > or something, but i cant find a link to it. And only bugs from 10
> > > and on are shown on the bugtracker. Any way to get to those old
> > > entries?
> > >
> > >
> > > >
> > > > -Thanks
> > > > -Aj
> > > >
> > > > --------------------------------------------------------------------
> -
> > > > To unsubscribe, e-mail: [EMAIL PROTECTED]
> > > > For additional commands, e-mail: tapestry-user-
> [EMAIL PROTECTED]
> > > >
> > > >
> > >
> > >
> > > --
> > >
> > >
> > >
> > > ---------------------------------------------------------------------
> > > To unsubscribe, e-mail: [EMAIL PROTECTED]
> > > For additional commands, e-mail: [EMAIL PROTECTED]
> >
> >
> > ---------------------------------------------------------------------
> > To unsubscribe, e-mail: [EMAIL PROTECTED]
> > For additional commands, e-mail: [EMAIL PROTECTED]
> >
> >

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

Reply via email to