Je suis confronté à l'exception NullPointer en cliquant sur un bouton dans GWT, Quelqu'un pourrait me suggérer comment aller de l'avant et déboguer le problème? J'ai posté l'extrait du code ici.Exception NullPointer dans Onclick
J'ai un formulaire qui crée un ticket de cinéma sur créer, annuler si l'utilisateur décide de ne pas. Lors de l'annulation, il se charge avec succès sur le premier formulaire, mais les boutons de formulaire parent lancent une exception de pointeur null lors du clic.
Remarque: Ces boutons parents fonctionnent correctement si je ne charge pas la page createMovie.
createMovie.class
public void init(ClickListener listener)
{
// code ...
// ........
cancel.addClickListener(listener);
createMovie.add(header);
createMovie.add(table);
createMovie.setHeight("663px");
initWidget(createMovie);
}
Dans FocusWidget.class
public void addClickListener(ClickListener listener) {
if (clickListeners == null) {
clickListeners = new ClickListenerCollection();
sinkEvents(Event.ONCLICK);
}
clickListeners.add(listener);
}
// code
@Override
public void onBrowserEvent(Event event) {
switch (DOM.eventGetType(event)) {
case Event.ONCLICK:
if (clickListeners != null) {
clickListeners.fireClick(this); ------->>> LINE 102
}
break;
case Event.ONBLUR:
case Event.ONFOCUS:
if (focusListeners != null) {
focusListeners.fireFocusEvent(this, event);
}
break;
case Event.ONKEYDOWN:
case Event.ONKEYUP:
case Event.ONKEYPRESS:
if (keyboardListeners != null) {
keyboardListeners.fireKeyboardEvent(this, event);
}
break;
}
}
Dans ClickListenerCollection.class
public void fireClick(Widget sender) {
for (ClickListener listener : this) {
listener.onClick(sender);
}
}
Erreurs:
[ERROR] Uncaught exception escaped
java.lang.NullPointerException: null
at com.google.gwt.user.client.ui.ClickListenerCollection.fireClick(ClickListenerCollection.java:34)
at com.google.gwt.user.client.ui.FocusWidget.onBrowserEvent(FocusWidget.java:102)
at com.google.gwt.user.client.DOM.dispatchEventImpl(DOM.java:1308)
at com.google.gwt.user.client.DOM.dispatchEventAndCatch(DOM.java:1287)
at com.google.gwt.user.client.DOM.dispatchEvent(DOM.java:1255)
at sun.reflect.GeneratedMethodAccessor34.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
C'est probablement pas la source de vos problèmes, mais 'addClickListener' est dépréciée, vous devriez vraiment utiliser' addClickHandler'instead. – Marconius