December 14, 2007
Francis Hans E. Mohan
GWT is not really suppose to have browser issues because it claims that the javascript produced is compatible to all (if not at least the most common) browsers. We did not have any issues with browsers when working with GWT before except for some minor inevitable rendering but recently, to our surprise, one of the GWT widgets did not work on Firefox.
At first, I thought it was the Tree widget we used for displaying the teacher’s list of handled classes. When I found out that the Tree does shows up in IE and not Firefox, I was surprised first because usually its the other way around and second because of GWT’s compatible-to-all-browser javascript. Of all browsers, how can it not work on Firefox? We suspected the Tree widget and researched hoping for a solution. We came across this one post in the forums where he had the same Firefox problem with his Tree and some of his images. There were replies to this post and in summary, it was concluded to be some GWT bug. But they had a workaround. By taking a GWT tree from a GWT sample application, the KitchenSink, he saw that it displayed on Firefox. He started eliminating some code until it didn’t display. The discovery was that it didn’t display when he removed the tree item which contained a GWT checkbox. So does this mean that for a Tree to display in Firefox, we needed to include a checkbox or any similar widget as a node of that tree? I thought it was ridiculous at first, but then again, if it worked for him, maybe that is the only workaround we need to make this Tree appear, at least until a new GWT version comes up and they fix the bug.
After knowing this, I tried it but it still doesn’t show up in Firefox. Then I luckily saw some text in one of the google search results about something about the Split Panel. I didn’t really read it fully but that was enough to make me try to remove the HorizontalSplitPanel I used to contain the tree and the class list. I actually did not appreciate the split panel anyway so I removed it and replaced it with a regular HorizontalPanel. I compiled it for web mode and it worked!!! It was the HorizontalSplitPanel all along.
Although, it still does not change the fact that there is a widget in GWT that is not compatible in Firefox, at least all functionalities are working properly in both hosted and web mode (both IE and Firefox). We will be testing the whole application using different common browsers in the future. There is probably a way to make the split panel work on Firefox but we will leave that for future research. It is not a high priority since we do not have any plans of using it yet. If this is a bug, I hope Google fixes it in the next version. I guess GWT is still very young since the client side java code still does not support some JDK 5.0 features like Generics.
Next steps are to complete all rubric and checklist features by next week.
eAssess group