I agree with everything you have said and this is the approach I am experimenting with except for one problem. Since 2.0 it is not possible to load modules dynamically. I have written a jsp that will add all the installed plug-ins' scripts to the head when the page is loaded, but unfortunately this causes a lot of unnecessary start-up loading. I am going to look into putting the entire instantiation under a runAsync and that should hopefully fix the problem. It would still be nice to load the modules dynamically, but i guess it isn't a huge deal to make them reload after installing a plug-in.
On Mar 31, 12:12 pm, Sripathi Krishnan <sripathikrish...@gmail.com> wrote: > GWT's architecture is orthogonal to your requirement of dynamic module > loading / pluggable sub-modules, so whatever solution you find will be a > hack and not maintainable. > > One of the core philosophies of GWT - *If something can be done at compile > time, do it*. The key benefit of such a philosophy is performance. GWT > scores over a lot of other frameworks because of its monolithic, > closed-world compile. Any framework for dynamic module loading needs to > defer a few operations to runtime, and that is a cost GWT core is unwilling > to pay (thats what I understand). > > Having said that, you can still achieve what you want. Define an API (in > terms of javascript methods) for your module, and use GWT > Exporter<http://code.google.com/p/gwt-exporter/>to export the methods. > That way, your GWT modules can inter-operate with > hand-written javascript or with other pre-compiled GWT code. You can also > dynamically add new modules to a page if you wish to do so. Any > shared/common will however get download multiple times as part of each > modules nocache.js + guid.cache.html, and there is nothing you can do about > it. > > --Sri > > On 31 March 2010 21:48, lineman78 <linema...@gmail.com> wrote: > > > Yeah, there is 1 problem I have with your solution and a separate > > issue your solution doesn't address. The problem I have with your > > solution is that iFrames can't inherit size. One behavior I like is > > that you can stack the modules and they will fit tightly against the > > other and the one below will move if the upper one's height changes, > > i.e. a disclosure panel. The issue that your issue doesn't seem to > > resolve is that I would like to dynamically add the modules to the > > page as they are added and would like the main module to not know > > anything about them other than the fact that they extend an abstract > > sub module and the location of the module's nocache.js. > > > On Mar 31, 2:14 am, Olivier Monaco <olivier.mon...@free.fr> wrote: > > > Hi, > > > > I don't know if I'll answer your question but we working on a main GWT- > > > module with pluggable sub-modules. Each sub-modules is an ui- > > > independant part of the whole application. To avoid interferences, > > > each module loads into its own iframe. I wrote a messaging system that > > > allow each module to communicate with each other (JSON serialization, > > > auto-discovery of other modules...). > > > > Olivier > > > > On 31 mar, 03:10, lineman78 <linema...@gmail.com> wrote: > > > > > I know this is a common request of people trying to make pluggable > > > > applications. It seems that every time someone comes up with a > > > > solution to this problem the GWT team changes the way the core linkers > > > > work and break the solution. I was wondering if anyone knows a way to > > > > dynamically load a module either with a new linker, or a different > > > > method than the traditional appending a new script element to the end > > > > of the body. I try to append a script element to the end of the body > > > > and it completely blows the document away and freezes the page in a > > > > loading mode. I found an email exchange between members of the GWT > > > > contributors group in December where they discuss new methods for the > > > > default linkers using dynamic iframes. I have been exploring this > > > > capability since 1.5 and every time I revisit it the method(hack job) > > > > I used the last time will not work. I would really like a more > > > > consistent method. > > > > > Every forum I have seen where someone asks this someone inevitably > > > > asks why, so let me head off this question by explaining. I have run > > > > into this in a few different situations, one when trying to integrate > > > > GWT "portlets" into Liferay(Java portlet). The second situation is in > > > > trying to create a dynamic binding of sorts. I have been trying to > > > > figure out a way to create a GWT portal where you could install > > > > modules and they could be added and removed dynamically without having > > > > to recompile the core, creating something similar to iGoogle or > > > > Liferay in a GWT/J2EE implementation. > > > -- > > You received this message because you are subscribed to the Google Groups > > "Google Web Toolkit" group. > > To post to this group, send email to google-web-tool...@googlegroups.com. > > To unsubscribe from this group, send email to > > google-web-toolkit+unsubscr...@googlegroups.com<google-web-toolkit%2bunsubscr...@googlegroups.com> > > . > > For more options, visit this group at > >http://groups.google.com/group/google-web-toolkit?hl=en. -- You received this message because you are subscribed to the Google Groups "Google Web Toolkit" group. To post to this group, send email to google-web-tool...@googlegroups.com. To unsubscribe from this group, send email to google-web-toolkit+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-web-toolkit?hl=en.