【问题标题】:Xpages - Exception occurred calling NotesDocument.getItemValueDateTimeArray(string)Xpages - 调用 NotesDocument.getItemValueDateTimeArray(string) 时发生异常
【发布时间】:2016-10-25 13:36:31
【问题描述】:

我已经使用full calendar 构建了一个 xpages 应用程序,并且到目前为止能够在日历上显示数据。但是每当提交的任何字段留空时,它都会杀死日历页面并返回上面的异常错误。如果提交的字段中没有空白,则日历会很好地打开。

我可以通过在表单上使用验证来确保填写所有字段来解决此问题,但这会限制用户,我想避免这种情况。

下面是返回错误的代码:

try { 
  var calendarDate:NotesDateTime; 
  try{
    calDate:NotesDateTime = docEv.getItemValueDateTimeArray("MeetingDate").elementAt(0);//error coming from here when it is null
  }catch(e){
      print("Meeting date null error: " + e.toString());
      return calendarDate;
  }
  if(calDate != null){
      var today:NotesDateTime = session.createDateTime("Today");

      if (calDate != null && calDate.timeDifference(today) > 0) {
          try{
              var calDate:NotesDateTime = docEv.getItemValueDateTimeArray("MeetingDate").elementAt(0);
          } catch(e) {
              print("calendar error: " + e.toString());
          }
      }
   }
  }catch(e){
      print("Calendar error: " + e.toString());
      return calendarDate;
  }

我也尝试使用 try/catch 来阻止页面被杀,但这似乎也不起作用。

有什么逻辑可以用来检查var calendarDate:NotesDateTime; 是否为空,如果为空则什么都不做?

非常感谢。

【问题讨论】:

    标签: xpages lotus-notes xpages-ssjs domino-designer-eclipse ssjs


    【解决方案1】:

    测试文档是否包含至少一个元素的“MeetingDate”项:

    var calDate:NotesDateTime;
    if (!docEv.getItemValue("MeetingDate").isEmpty()) {
        calDate = docEv.getItemValueDateTimeArray("MeetingDate").elementAt(0);
        ...
    }
    

    【讨论】:

    • 使用 getItemValue() 检查字段是否至少有一个元素有效!感谢您的帮助克努特。
    • 那时,我认为您也可以使用 getItemValue 返回的相同 List - 如果它是日期/时间字段,则元素将已经是 DateTimes,并且可以保存第二次调用。
    【解决方案2】:

    我不使用 XPages,但我认为这样的事情会起作用,因为在尝试执行 elementAt 方法时会发生错误:

    if (docEv.getItemValueDateTimeArray("MeetingDate") == null) {
       calDate:NotesDateTime = null;
    } else {
       calDate:NotesDateTime = docEv.getItemValueDateTimeArray("MeetingDate").elementAt(0);
    }
    

    【讨论】:

      猜你喜欢
      • 2014-08-11
      • 2019-10-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-11-23
      • 1970-01-01
      相关资源
      最近更新 更多