No more failed asserts from UIObjects with no element set. 
Fixes issue 3586

Reviewed by: jlabanca


git-svn-id: https://google-web-toolkit.googlecode.com/svn/trunk@5273 8db76d5a-ed1c-0410-87a9-c151d255dfc7
diff --git a/user/src/com/google/gwt/user/client/ui/UIObject.java b/user/src/com/google/gwt/user/client/ui/UIObject.java
index a9ba5be..32b3df6 100644
--- a/user/src/com/google/gwt/user/client/ui/UIObject.java
+++ b/user/src/com/google/gwt/user/client/ui/UIObject.java
@@ -16,8 +16,8 @@
 package com.google.gwt.user.client.ui;
 
 import com.google.gwt.core.client.GWT;
-import com.google.gwt.user.client.DOM;
 import com.google.gwt.dom.client.Element;
+import com.google.gwt.user.client.DOM;
 
 /**
  * The superclass for all user-interface objects. It simply wraps a DOM element,
@@ -723,7 +723,7 @@
    */
   @Override
   public String toString() {
-    if (getElement() == null) {
+    if (element == null) {
       return "(null handle)";
     }
     return DOM.toString(getElement());
diff --git a/user/test/com/google/gwt/user/client/ui/UIObjectTest.java b/user/test/com/google/gwt/user/client/ui/UIObjectTest.java
index 7c151f1..449302b 100644
--- a/user/test/com/google/gwt/user/client/ui/UIObjectTest.java
+++ b/user/test/com/google/gwt/user/client/ui/UIObjectTest.java
@@ -15,6 +15,8 @@
  */
 package com.google.gwt.user.client.ui;
 
+import com.google.gwt.dom.client.Document;
+import com.google.gwt.dom.client.SpanElement;
 import com.google.gwt.junit.client.GWTTestCase;
 import com.google.gwt.user.client.DOM;
 import com.google.gwt.user.client.Element;
@@ -70,6 +72,14 @@
   public String getModuleName() {
     return "com.google.gwt.user.DebugTest";
   }
+  
+  public void testToString() {
+    UIObject u = new UIObject(){};
+    assertEquals("(null handle)", u.toString());
+    SpanElement span = Document.get().createSpanElement();
+    u.setElement(span);
+    assertEquals(span.toString(), u.toString());
+  }
 
   public void testAccidentalPrimary() {
     MyObject o = new MyObject();