Struts 2 JQuery Datepicker Проблема с Java.util.Date - PullRequest
0 голосов
/ 25 марта 2019

Я использую плагин Struts2 jQuery Datepicker.для тега lib, JSP, backend я добавил следующий фрагмент кода для вашей справки.Я использовал java.util.Date класс для бэкэнда.Каждый раз, когда я запускаю код, это дает мне ошибку.Насколько я понимаю, struts2-jquery не приводит непосредственно значение datePicker к java.util.Date, нам нужно изменить dateType startDate с java.util.Date на String.поправь меня если я не прав.Есть ли лучший подход для его обхода?

Использование String везде в приложении - не лучшее решение, так как есть много мест, которые мне нужно обновить, и, конечно, это также повлияет на реализацию Service и DAO.

Заранее спасибо.

Библиотека тегов:

<%@ taglib prefix="sj" uri="/struts-jquery-tags" %>

Выбор даты JSP:

<sj:datepicker id="startDate" name="searchFilter.startDate" cssStyle=" width:110px" displayFormat="mm/dd/yy" buttonImage="images/calendar.gif"/>

Бэкэнд Java Code:

private Date startDate;

public Date getStartDate() {
    return startDate;
}

public void setStartDate(Date startDate) {
    this.startDate = startDate;
}

Ошибка:

Error setting expression 'startDate' with value '[Ljava.lang.String;@412acad5'
java.lang.NoSuchMethodException: setStartDate([Ljava.lang.String;)

1 Ответ

0 голосов
/ 26 марта 2019

Возможное решение, которое я нашел в Интернете, заключалось в том, что я не хотел менять классы Service и DaoImpl . я определил одну переменную в классе Java типа данных String и связал ее с компонентом jsp, где я использовал startDate (java.util.Date)

private String startDateValue;

public String getStartDateValue() {
    return startDateValue;
}

public void setStartDateValue(String startDateValue) {
    this.startDateValue = startDateValue;
}

в методе установки я должен был определить java java.text.SimpleDateFormat объект для анализа String значение в java.util.Date Object.

final Date startDate = new SimpleDateFormat("dd/MM/yyyy").parse(startDateValue);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...