Recent forays into GWT have enlightened me to this wonderful beast, but how do you apply it to the real world?
Consider this scenario: a web development team split into two groups - the developers and the designers. The former is responsible for implementing functionality on the website, the latter the page design, copy and usability. That can't be too alien to anyone who's worked in IT in a development or programme management role. Little wonder, perhaps, that there are numerous frameworks that try to ease the development of websites in Java, to allow the developers to be more productive in a business sense and not spend their time reinventing the wheel. This notion however does fall short slightly, and that is in how it is used by designers or editors.
In the old days of Struts 1.x you'd implement Actions as your controllers, and utilise an array of custom tags for reusability when it comes to the view layer. In our makeshift development scenario above, this would mean the designers having to put up with - or worse - get to grips with programming in Struts. This feels wrong from an organisational point of view. Perhaps it's akin to having your plumber lay your bathroom tiles too; although designers eat and breathe HTML, CSS & images it doesn't mean they should be au fait with Struts tags too. There's a fine line perhaps - custom tags could be used to leverage a designer-friendly functional tag for a page which is in your organisation's language.
Can GWT be used to build big websites that separate design, editorial and development teams? Can a developer write the functional 'widgets' in GWT for a page and a designer work with it happily and perhaps still in HTML, or are you stuck with a developer creating your UIs in Java and your designers just playing with CSS? Is GWT simply not meant for this scenario of development? Is there a happy medium for such a thing to exist?
Tell me GWT experts lingering in the hue of their monitors - how does GWT sit within the real world 'enterprise' e-commerce department? Can it be utilised to build a large website, or are you stuck to cherry-picking from GWT and elsewhere? Enlighten this eager newbie, if you please!