如何从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
[...]

如果需要的话,我可以写更多的错误细节,但它很长。。。

你能告诉我如何纠正这个错误吗?或者如何用其他方法计算它吗?

提前谢谢。

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

最新更新