Greetings,
I just found out about gwt-multipage and it is pretty much exactly
what I need. I had created my own dispatching entry point, but it was
going to get to be a burden to maintain. Making it use GWT.runAsync()
meant that it would have to be edited for every new page added rather
than using some sort of configuration data structure.
Where my requirements are different, however, is in the selection of
the entry point. I'm integrating with an existing Tapestry 4
application that doesn't use "pretty" URLs, so I can't rely on URL
patterns. Instead, I had been using the javascript variable selection
technique (the first option listed at
http://claudiushauptmann.com/a-framework-for-gwt-multipage-applications.html).
I don't see any reason why gwt-multipage couldn't support multiple
selection schemes.
I've started work on adding support for this and will hopefully have a
patch to submit in the next week or so. It's likely that there will be
opportunities to make improvements and tweaks to the interface, but at
least it'll be a place to start.
I wasn't sure whether I should add an attribute to the existing
MultipageEntryPoint annotation or create a new annotation. For now, I
went with adding a pageKey attribute (maybe it should be jsPageKey?),
making both it and urlPattern optional. However, I think it might be
better to have separate annotations for each selection strategy. That
way, the attribute can be required and, if we call it "value", we
don't even have to name the attribute when using it, e.g.:
@UrlPatternEntryPoint("(index.html)?(\\\\?
gwt.codesvr=127.0.0.1:9997)?");. Anyone have any opinions on that?
I'm also planning to add support for displaying a list of links to all
of the configured entry points in the case where none of the selection
criteria are satisfied. It's something that I had in my hand-written
dispatching entry point and is helpful during development and for
debugging selection issues.
-Brian