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]