I work with GWT version 1.7.0. It’s old but our product requires it. Recently I had to debug using Hosted mode under Windows XP. During Hosted mode startup I had an exception
2011-02-08 17:04:31,578 [FATAL] Uncaught Exception: com.google.gwt.core.client.JavaScriptException:(TypeError): Object doesn't support this property or method. number: -2146827850 description: Obiekt nie obsługuje tej właściwości lub metody. at com.google.gwt.user.client.impl.DOMImplStandard.initEventSystem(Native Method) at com.google.gwt.user.client.impl.DOMImplMozilla.initEventSystem(DOMImplMozilla.java:39) at com.google.gwt.user.client.impl.DOMImpl.maybeInitializeEventSystem(DOMImpl.java:111) at com.google.gwt.user.client.impl.DOMImplStandard.sinkEvents(DOMImplStandard.java:140) at com.google.gwt.user.client.impl.DOMImplMozilla.sinkEvents(DOMImplMozilla.java:27) at com.google.gwt.user.client.DOM.sinkEvents(DOM.java:1221)
After some investigation I found the reason.
During development, for performance reasons I compile my GWT apps only for Firefox. So this was the case. You must know that in earlier versions of GWT (and so in 1.7.0), application is displayed in special window with embedded Internet Explorer. And now you might look closer to the stacktrace above and see that there are some Mozilla classes involved and that’s wrong because for IE we should have only IE classes! So that’s the cause I had exception.
So if you want to run Hosted mode you have to compile your GWT application at least with IE support. Add this to you *.gwt.xml config file
Or leave it without declaring user.agent so it would be compiled for all supported browsers. Too shame that GWT doesn’t warn if it was not compiled for current browser.
If you still have problems with mentioned exception look at an issue in GWT bug tracker.
Couple of years ago I wasn't a big fan of unit testing. It was obvious to me that well prepared unit tests are crucial though. I didn't known why exactly crucial yet then. I just felt they are important. My disliking to write automation tests was mostly related to the effort necessary to prepare them. Also a spaghetti code was easily spotted in test sources.
