JavaScriptException with 1.6.2

22 views
Skip to first unread message

nicolas de loof

unread,
Mar 26, 2009, 12:14:59 PM3/26/09
to Google Web Toolkit Contributors
Hi

I just tried the new gwt 1.6 RC and get this stacktrace :

[FATAL] Uncaught JavaScript exception [com.google.gwt.core.client.JavaScriptException: (TypeError): 'nodeType' a la valeur Null ou n'est pas un objet.

[FATAL]  number: -2146823281

[FATAL]  description: 'nodeType' a la valeur Null ou n'est pas un objet.

[FATAL]     at com.google.gwt.dom.client.Node$.is(Native Method)

[FATAL]     at com.google.gwt.dom.client.Element$.is(Element.java:48)

[FATAL]     at com.google.gwt.user.client.ui.PopupPanel.eventTargetsPopup(PopupPanel.java:932)

[FATAL]     at com.google.gwt.user.client.ui.PopupPanel.previewNativeEvent(PopupPanel.java:1104)

[FATAL]     at com.google.gwt.user.client.ui.PopupPanel.access$6(PopupPanel.java:1085)

[FATAL]     at com.google.gwt.user.client.ui.PopupPanel$2.onPreviewNativeEvent(PopupPanel.java:1199)

[FATAL]     at com.google.gwt.user.client.Event$NativePreviewEvent.dispatch(Event.java:181)

[FATAL]     at com.google.gwt.user.client.Event$NativePreviewEvent.dispatch(Event.java:1)

[FATAL]     at com.google.gwt.event.shared.HandlerManager$HandlerRegistry.fireEvent(HandlerManager.java:60)

[FATAL]     at com.google.gwt.event.shared.HandlerManager$HandlerRegistry.access$1(HandlerManager.java:53)

[FATAL]     at com.google.gwt.event.shared.HandlerManager.fireEvent(HandlerManager.java:178)

[FATAL]     at com.google.gwt.user.client.Event$NativePreviewEvent.fire(Event.java:80)

[FATAL]     at com.google.gwt.user.client.Event$NativePreviewEvent.access$4(Event.java:73)

[FATAL]     at com.google.gwt.user.client.Event$.fireNativePreviewEvent(Event.java:412)

[FATAL]     at com.google.gwt.user.client.DOM.previewEvent(DOM.java:1284)] in http://localhost:8080/bios-rc/com.sfr.bios.rc.CONX/hosted.html?com_sfr_bios_rc_CONX, line 7


Is there any usefull information I could send you to help getting it fixed ?

Scott Blum

unread,
Mar 26, 2009, 1:40:50 PM3/26/09
to Google-Web-Tool...@googlegroups.com, Joel Webber, John LaBanca, Ray Ryan
That's not good....  it looks like Nicolas found an object for which trying to evaluate (!!o.nodeType) throws an exception.

@Nicolas:

- What browser is this?

- What are you actually doing to trigger the exception?

- Can you repro it on any popup panel, or is it specific to your app?

John Tamplin

unread,
Mar 26, 2009, 2:18:41 PM3/26/09
to Google-Web-Tool...@googlegroups.com, Joel Webber, John LaBanca, Ray Ryan
On Thu, Mar 26, 2009 at 1:40 PM, Scott Blum <sco...@google.com> wrote:
That's not good....  it looks like Nicolas found an object for which trying to evaluate (!!o.nodeType) throws an exception.

If my atrophied high-school French is correct, I believe the error is that o is null at that point.

--
John A. Tamplin
Software Engineer (GWT), Google

nicolas de loof

unread,
Mar 26, 2009, 2:32:54 PM3/26/09
to Google-Web-Tool...@googlegroups.com, Joel Webber, John LaBanca, Ray Ryan
Nice translation ;)

The dev team repported me this error but I'm not working on the module myself.

I'll try to get more info on how the PopupPanel is used. I think it is part of the DatePicker but have to confirm.
Must also ask which browser is used in this test.

Scott Blum

unread,
Mar 26, 2009, 2:58:28 PM3/26/09
to Google-Web-Tool...@googlegroups.com, Joel Webber, John LaBanca, Ray Ryan
Ah, okay, that's much better than how I read it.

Thomas Broyer

unread,
Mar 27, 2009, 10:57:13 AM3/27/09
to Google Web Toolkit Contributors


On 26 mar, 19:18, John Tamplin <j...@google.com> wrote:
> On Thu, Mar 26, 2009 at 1:40 PM, Scott Blum <sco...@google.com> wrote:
> > That's not good....  it looks like Nicolas found an object for which trying
> > to evaluate (!!o.nodeType) throws an exception.
>
> If my atrophied high-school French is correct, I believe the error is that o
> is null at that point.

It actually says that 'nodeType' (not 'o'!) is Null or is not an
object.

The thing is: I cannot understand why IE (this looks like an IE
exception message, don't you think?) would throw such an exception
while evaluating "!!" on such a null/undefined (it would effectively
throw if 'o' were null, but it would say that "'o' is null or is not
an object", or if we were trying to get or set a property or call a
method on o.nodeType).

Am I wrong?

nicolas de loof

unread,
Mar 27, 2009, 11:46:51 AM3/27/09
to Google-Web-Tool...@googlegroups.com
Some more infos :

We got this exception running in hosted mode browser (with -noserver) on windows
No error when using an empty PopupPanel, also fine when containing a label, but fails when including a Table.

Hope this helps ...

Scott Blum

unread,
Mar 27, 2009, 12:07:51 PM3/27/09
to Google-Web-Tool...@googlegroups.com
Do you know what event this was?  What do you do with the popup to get it to trigger?  Or does it just happen with no user interaction?

nicolas de loof

unread,
Mar 30, 2009, 8:25:34 AM3/30/09
to Google-Web-Tool...@googlegroups.com
Some more infos about this bug :

it happens in eventTargetsPopup as the NativeEvent beeing passed has no eventTarget set.

Find attached a screen capture from the developper that detected this issue. Maybe the stacktrace can help you.
dump.jpg

Joel Webber

unread,
Mar 30, 2009, 3:01:38 PM3/30/09
to Google-Web-Tool...@googlegroups.com
I made some changes in event handling for 1.6, which might have caused this (though it's not yet immediately obvious how). I'll be digging into it tonight -- everyone please update this thread if any more information surfaces.

Joel Webber

unread,
Mar 30, 2009, 3:28:45 PM3/30/09
to Google-Web-Tool...@googlegroups.com
Still trying to see how this can happen in practice. The only way I can get the expression !!o.nodeType to give the aforementioned error on IE is to set o to null or undefined. This could happen (on any browser) if event.target is null, but that *should* be illegal. We could try to work around this by adding a null check in Node.is() (or upstream in PopupPanel.eventTargetsPopup()), but I'd really like to see precisely what went wrong before getting quite that defensive.

Is there any chance you could provide a code snippet that causes this in practice? I know we have tables in popups all over the place, because the DialogBox class does this (by using a DockPanel in a PopupPanel), so it's got to be a bit more subtle or complex than that.

Thanks,
joel.

nicolas de loof

unread,
Mar 30, 2009, 3:42:40 PM3/30/09
to Google-Web-Tool...@googlegroups.com
I'll try to setup a smallest project and reproduce the issue.

Gilles B

unread,
Apr 10, 2009, 4:29:57 AM4/10/09
to Google Web Toolkit Contributors

I have a problem that seems close to this one. Using GWT 1.6.4 the
problem occurs with IE (6 and 7), not with Firefox, not in local mode,
not with Opera. In the previous version 1.5 I haven't noticed such
bug.

When I close a Popup, my IE freeze and I need to refresh my browser
The JS line in error is : function pAd(a){if(a.nodeType){return
a.nodeType==1}return false}

This occurs in various popup panels when I call "hide();" to close the
browser (no rpc call, no other code line invoqued).
Theses popup dialogs are used to show or update data, they used
various widgets (listbox, textbox, label, pushbutton... no date
picker ) in multiples VerticalPanel/HorizontalPanel to build a form, a
ClickHandler on each button (ok, cancel...). I use setText and such
function and then use "center()" to display the dialog. My application
is quite big and it's difficult to extract a code snippet...

It 's not a systematic error but it occurs 1 time to 3.
When I use the same dialog in display mode there is no error!!! It's
the same code but I hide the "ok" button, I use differents text
constants and I disable the textbox and listbox widgets used and I
don't call the setfocus.
When I validate an update I have an additionnal RPC call before hiding
the dialog and it seems to work fine ?!

It's look like a synchro problem like some code running before/after
closing and deleting objects... If someone have an idea ?

Thanks.
Gilles

Gilles B

unread,
Apr 11, 2009, 2:29:05 AM4/11/09
to Google Web Toolkit Contributors

I keep on investigating, if I remove all "setEnabled" call (TextBox
widget) used to gray not inputable fields (when I display the dialog)
it seems to work fine... and IE doesn't freeze.

The dialog contains multiples panels:
1 Vertical panel : the form (defined as main widget of the dialog)
1 Horizontal panel for each line in the form
1 Horizontal panel for each data input (label + textbox or other input
widget)
Is it a wrong thing to do ?

Thanks

Joel Webber

unread,
May 11, 2009, 10:03:14 AM5/11/09
to Google-Web-Tool...@googlegroups.com
I filed issue 3644 for this, and am going to get a fix into the 1.6 update.
Reply all
Reply to author
Forward
0 new messages