Mvp4gAnnotationException при использовании SimpleDateFormat

Я пишу приложение GWT, используя java и eclipse. Я пытаюсь добавить проверку даты в текстовое поле, и я сталкиваюсь с самой странной проблемой.

При попытке собрать сборку ant я получаю следующую ошибку com.mvp4g.util.exception.loader.Mvp4gAnnotationException:

Мой код ниже:

private boolean dateValidation(Date value) {
    boolean valid = true;
    String dateString = value.toString();   
    try {
        //SimpleDateFormat format = new SimpleDateFormat("MM/dd/yyyy HH:mm a");
        //format.setLenient(false);
        //format.parse(dateString);
    } catch (Exception e) {
        valid = false;
    }
    return valid;
}

Закомментированный код — это код, вызывающий ошибку. Когда я раскомментирую оператор format = new SimpleDateFormat(), здание ломается. В противном случае он строится нормально. Кто-нибудь знает, что может быть причиной этого? Я не очень хорошо знаком с GWT, и я не уверен, что может быть причиной этого....

любая помощь приветствуется. Я оглядывался и пытался понять это навсегда! Дайте мне знать, если вам нужно, чтобы я добавил больше кода / полное исключение!

Спасибо...

К вашему сведению: использование gwt-2.5.1-2.5.1 jdk1.6.0_43 в eclipse

ОБНОВЛЕНИЕ:

Я смог исправить это, используя следующий код:

DateTimeFormat dateFormat = DateTimeFormat.getFormat("MM/dd/yyyy HH:mm a");
Date current = view.getDtEndDate().getValue();                          
current = dateFormat.parse(dateFormat.format(current));

Хотя проблема технически решена.... Мне было бы интересно, ПОЧЕМУ это произошло? Кто-нибудь может уточнить?


person ola    schedule 02.10.2014    source источник


Ответы (1)


Я предполагаю, что вы проверяете поле даты в классе представления или ведущего. Поскольку вы не можете использовать SimpleDateFormat на стороне клиента (Отсутствует исходный код для типа java.text.SimpleDateFormat: ошибка компиляции GWT), класс не может быть скомпилирован.

В mvp4g вы должны аннотировать своего ведущего (внутри шины событий в аннотации @Event) и свой класс просмотра в качестве параметра аннотации @Presenter. mvp4g пытается загрузить эти классы. В случае, когда класс не может быть скомпилирован, класс недоступен и не может быть загружен.

Вот почему вы получаете исключение com.mvp4g.util.exception.loader.Mvp4gAnnotationException.

надеюсь, это поможет

person El Hoss    schedule 08.10.2014