如何从DatePicker小部件计算两个日期之间的差异

时间:2013-07-05 19:55:53

标签: java date gwt datepicker

我的GWT项目有问题:我只想计算两个DatePicker Widget的两个日期(以天为单位)之间的差异。

这是我的代码,我主要从这里开始:http://www.gwtproject.org/javadoc/latest/com/google/gwt/user/datepicker/client/DatePicker.html

    // Create a date picker "FROM: "
    final DatePicker datePicker1 = new DatePicker();
    datePicker1.addValueChangeHandler(new ValueChangeHandler<Date>() {
      public void onValueChange(ValueChangeEvent<Date> event) {
      Date date1 = datePicker1.getValue();
      }
    });
    // Set the default value
    datePicker1.setValue(new Date(), true);

    // Create a date picker "TO: "
    final DatePicker datePicker2 = new DatePicker();
    datePicker2.addValueChangeHandler(new ValueChangeHandler<Date>() {
       public void onValueChange(ValueChangeEvent<Date> event) {
       Date date2 = datePicker2.getValue();        
      }
    });
    // Set the default value
    datePicker2.setValue(new Date(), true);

    // =================DEBUG===================
    Button send = new Button("send", new ClickHandler(){
        public void onClick(ClickEvent event) {
            //calculate difference between date1 and date2
            days = (int) CalendarUtil.getDaysBetween(date1, date2);
            Window.alert("Differece: " + days);
        }
    });

但是我在eclipse中没有错误,当我运行Web应用程序时,我有这个错误:

[ERROR] [progetto] Uncaught exception escaped
com.google.gwt.event.shared.UmbrellaException: Exception caught: null
[...]

如果有必要,我可以写更多错误详情,但这很长......

您能告诉我如何修复此错误或如何使用其他方法计算错误吗?

提前谢谢。

1 个答案:

答案 0 :(得分:0)

在我看来,你的一个对象是null。在这个例外情况下查看异常,会有更多细节。第二个告诉我你在哪里计算代码的天数以及如何计算?如果您分享更多代码,那将会很有帮助。但我认为你为null寻找date1和date2。如果你能分享更多的代码,我会更有帮助,并做好调试,牢记这一点。