I'm currently looking into how tacos works within portlets. After solving some minor issues, I got into this: I got a "no ajaxdirect service defined" exception. In order to see what was happenning, I patched Tapestry's org.apache.tapestry.services.impl.ServiceMapImpl and made it printout all available services when its getService(String) was called. During a single portlet page rendering I got this output:
direct action xtile render exception asset restart page reset external home direct action xtile render exception asset restart page reset external home ... (the same, at least 10 more times) direct action xtile asset restart page reset external ajaxdirect home direct action xtile asset restart page reset external ajaxdirect home direct action xtile asset restart page reset external ajaxdirect home ... (the same, at least 4 more times) On the other hand, in servlet mode, all of those service are always available. I don't really know: a) why there's this diff between portlet and servlet behaviour, and b) what triggers some services to become available later on (but always during the same page render) in portlet mode and what triggers some to disappear (i.e. the render or the exception services). My current theory is that services contributed from anywhere to ApplicationServices and services contributed from within Tapestry's module to FactoryServices are always available. Contrary, external services contributed to FactoryServices are not always there. Anyway, I thought I'd report this since it may be a source of potential bugs (at least in portlets) PS. Regarding tacos, the ajaxdirect was indeed contributed to FactoryServices and switching this to ApplicationServices made it work. --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
