Java 单击按钮时出现雨伞异常

Java 单击按钮时出现雨伞异常,java,eclipse,gwt,smartgwt,Java,Eclipse,Gwt,Smartgwt,伙计们,我正在与GWT合作,当我点击一个按钮创建一个类时,我收到一个雨伞异常。 下面是有问题的代码: private void addPerson(){ final HashSet<Date> dates = new HashSet(); HorizontalPanel horizontalPanel = new HorizontalPanel(); HorizontalPanel buttonsPanel = new Horizon

伙计们,我正在与GWT合作,当我点击一个按钮创建一个类时,我收到一个雨伞异常。 下面是有问题的代码:

private void addPerson(){
        final HashSet<Date> dates = new HashSet();

        HorizontalPanel horizontalPanel = new HorizontalPanel();
        HorizontalPanel buttonsPanel = new HorizontalPanel();

        final TextItem textBox = new TextItem();
        textBox.setTitle("Name");

        DynamicForm form = new DynamicForm();

        final ListBox listBox = new ListBox();
        listBox.addItem("DiplomaManager");
        listBox.addItem("Reviewer");
        //listBox.setVisibleItemCount(2);

        DatePicker datePicker = new DatePicker();
        datePicker.addValueChangeHandler(new ValueChangeHandler<Date>() {
              public void onValueChange(ValueChangeEvent<Date> event) {
                  dates.add(event.getValue());
                  SC.say(event.getValue().toString() + " Added to unavailable dates ");
              }
            });

        Button oneMoreButton = new Button("One More");
        oneMoreButton.addClickHandler(new ClickHandler() {
            public void onClick(ClickEvent event) {

                //SC.say(listBox.getValue(0));
                getPerson(dates,textBox,listBox);
                RootPanel.get("mainDiv").clear();
                addPerson();
            }

        });

        Button back = new Button("Back");
        back.addClickHandler(new ClickHandler() {
            public void onClick(ClickEvent event) {
                RootPanel.get("mainDiv").clear();
                onModuleLoad();
            }               
        });

        Button next = new Button("Next");
        next.addClickHandler(new ClickHandler() {
            public void onClick(ClickEvent event) {
                RootPanel.get("mainDiv").clear();
                addDiploma();

            }           
        });

        form.setFields(textBox);

        horizontalPanel.add(form);
        horizontalPanel.add(datePicker);
        horizontalPanel.add(listBox);


        buttonsPanel.add(oneMoreButton);
        buttonsPanel.add(back);
        buttonsPanel.add(next);

        RootPanel.get("mainDiv").add(horizontalPanel);
        RootPanel.get("mainDiv").add(buttonsPanel);
    }
DiplicalLeader和Reviewer类是相同的,但名称不同,以便于处理。这是他们的代码:

    package org.elsys.salvation.client;

import java.util.Date;
import java.util.HashSet;

public class Reviewer {
    private String name;
    private HashSet<Date> unavailableDates;

    public Reviewer(String name, HashSet<Date> unavailableDates) {
        super();
        this.name = name;
        this.unavailableDates = unavailableDates;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public HashSet<Date> getUnavailableDates() {
        return unavailableDates;
    }

    public void setUnavailableDates(HashSet<Date> unavailableDates) {
        this.unavailableDates.addAll(unavailableDates) ;
    }

}

雨伞例外的相关部分是:

Caused by: java.lang.NullPointerException: null
    at org.elsys.salvation.client.Salvation.getPerson(Salvation.java:190)

您在第190行引用的对象为空。

@malkoto1,您在注释中提供的代码片段没有显示正在初始化审阅者

i、 e.
Reviewers=newhashset()


请确保您已正确初始化审阅者&第190行不为空。

您是否可以发布完整的雨伞例外?通常在umblellaexception下至少有一个有用的异常,可以更具体一些。我正在编辑问题并添加错误日志:)你能指出getPerson()中的第190行吗?
Reviewers.add(reviewer)开始时声明了审阅者:
公共类savation implements EntryPoint{private HashSet reviewers;private HashSet reviewers;
这是一个非常明显的错误,谢谢。没有抛出任何异常。
16:10:12.218 [ERROR] [Salvation] Uncaught exception escaped
com.google.gwt.event.shared.UmbrellaException: One or more exceptions caught, see full set in UmbrellaException#getCauses
    at com.google.gwt.event.shared.HandlerManager.fireEvent(HandlerManager.java:129)
    at com.smartgwt.client.widgets.BaseWidget.fireEvent(BaseWidget.java:67)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    at java.lang.reflect.Method.invoke(Unknown Source)
    at com.google.gwt.dev.shell.MethodAdaptor.invoke(MethodAdaptor.java:103)
    at com.google.gwt.dev.shell.MethodDispatch.invoke(MethodDispatch.java:71)
    at com.google.gwt.dev.shell.OophmSessionHandler.invoke(OophmSessionHandler.java:172)
    at com.google.gwt.dev.shell.BrowserChannelServer.reactToMessagesWhileWaitingForReturn(BrowserChannelServer.java:337)
    at com.google.gwt.dev.shell.BrowserChannelServer.invokeJavascript(BrowserChannelServer.java:218)
    at com.google.gwt.dev.shell.ModuleSpaceOOPHM.doInvoke(ModuleSpaceOOPHM.java:136)
    at com.google.gwt.dev.shell.ModuleSpace.invokeNative(ModuleSpace.java:561)
    at com.google.gwt.dev.shell.ModuleSpace.invokeNativeObject(ModuleSpace.java:269)
    at com.google.gwt.dev.shell.JavaScriptHost.invokeNativeObject(JavaScriptHost.java:91)
    at com.google.gwt.core.client.impl.Impl.apply(Impl.java)
    at com.google.gwt.core.client.impl.Impl.entry0(Impl.java:213)
    at sun.reflect.GeneratedMethodAccessor39.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    at java.lang.reflect.Method.invoke(Unknown Source)
    at com.google.gwt.dev.shell.MethodAdaptor.invoke(MethodAdaptor.java:103)
    at com.google.gwt.dev.shell.MethodDispatch.invoke(MethodDispatch.java:71)
    at com.google.gwt.dev.shell.OophmSessionHandler.invoke(OophmSessionHandler.java:172)
    at com.google.gwt.dev.shell.BrowserChannelServer.reactToMessages(BrowserChannelServer.java:292)
    at com.google.gwt.dev.shell.BrowserChannelServer.processConnection(BrowserChannelServer.java:546)
    at com.google.gwt.dev.shell.BrowserChannelServer.run(BrowserChannelServer.java:363)
    at java.lang.Thread.run(Unknown Source)
Caused by: java.lang.NullPointerException: null
    at org.elsys.salvation.client.Salvation.getPerson(Salvation.java:190)
    at org.elsys.salvation.client.Salvation.access$2(Salvation.java:184)
    at org.elsys.salvation.client.Salvation$5.onClick(Salvation.java:145)
    at com.smartgwt.client.widgets.events.ClickEvent.dispatch(ClickEvent.java:96)
    at com.smartgwt.client.widgets.events.ClickEvent.dispatch(ClickEvent.java:1)
    at com.google.gwt.event.shared.GwtEvent.dispatch(GwtEvent.java:1)
    at com.google.web.bindery.event.shared.EventBus.dispatchEvent(EventBus.java:40)
    at com.google.web.bindery.event.shared.SimpleEventBus.doFire(SimpleEventBus.java:193)
    at com.google.web.bindery.event.shared.SimpleEventBus.fireEvent(SimpleEventBus.java:88)
    at com.google.gwt.event.shared.HandlerManager.fireEvent(HandlerManager.java:127)
    at com.smartgwt.client.widgets.BaseWidget.fireEvent(BaseWidget.java:67)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    at java.lang.reflect.Method.invoke(Unknown Source)
    at com.google.gwt.dev.shell.MethodAdaptor.invoke(MethodAdaptor.java:103)
    at com.google.gwt.dev.shell.MethodDispatch.invoke(MethodDispatch.java:71)
    at com.google.gwt.dev.shell.OophmSessionHandler.invoke(OophmSessionHandler.java:172)
    at com.google.gwt.dev.shell.BrowserChannelServer.reactToMessagesWhileWaitingForReturn(BrowserChannelServer.java:337)
    at com.google.gwt.dev.shell.BrowserChannelServer.invokeJavascript(BrowserChannelServer.java:218)
    at com.google.gwt.dev.shell.ModuleSpaceOOPHM.doInvoke(ModuleSpaceOOPHM.java:136)
    at com.google.gwt.dev.shell.ModuleSpace.invokeNative(ModuleSpace.java:561)
    at com.google.gwt.dev.shell.ModuleSpace.invokeNativeObject(ModuleSpace.java:269)
    at com.google.gwt.dev.shell.JavaScriptHost.invokeNativeObject(JavaScriptHost.java:91)
    at com.google.gwt.core.client.impl.Impl.apply(Impl.java)
    at com.google.gwt.core.client.impl.Impl.entry0(Impl.java:213)
    at sun.reflect.GeneratedMethodAccessor39.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    at java.lang.reflect.Method.invoke(Unknown Source)
    at com.google.gwt.dev.shell.MethodAdaptor.invoke(MethodAdaptor.java:103)
    at com.google.gwt.dev.shell.MethodDispatch.invoke(MethodDispatch.java:71)
    at com.google.gwt.dev.shell.OophmSessionHandler.invoke(OophmSessionHandler.java:172)
    at com.google.gwt.dev.shell.BrowserChannelServer.reactToMessages(BrowserChannelServer.java:292)
    at com.google.gwt.dev.shell.BrowserChannelServer.processConnection(BrowserChannelServer.java:546)
    at com.google.gwt.dev.shell.BrowserChannelServer.run(BrowserChannelServer.java:363)
    at java.lang.Thread.run(Unknown Source)
Caused by: java.lang.NullPointerException: null
    at org.elsys.salvation.client.Salvation.getPerson(Salvation.java:190)