Как я могу получить поле Date со страницы JSP в repositoryFormHandler?

Я создал JSP, у которого есть поле ввода для даты, которая принимает дату как 1987-12-16

<dsp:input bean="RegisterFormHandler.dob" date="yyyy-MM-dd" size="25" type="text" required="true" />

и я пытаюсь установить значение в RepositoryFormHandler

public void setDob(SimpleDateFormat dob) 
{
    this.dob = dob;
}

но установить свойство не вызывает вышеуказанную функцию, я не уверен, что здесь проблема.

2 ответа

Решение

Ваша проблема в том, что вы пытаетесь позвонить setDob(SimpleDateFormat dob) где вы имели в виду setDob(Date dob), Вы передаете не формат, а фактическую дату.

Тем не менее, я видел множество примеров в ATG, когда пытался передать дату через поле с произвольным текстом, что приводит к ненужным ошибкам в серверной части, даже когда вы передаете формат даты. Большинство реализаций, которые работают, форматируют дату с помощью чего-то вроде jQuery. DatePicker библиотека и передать его в ATG как String значение. В своем обработчике формы вы затем реализуете метод проверки, который будет анализировать String для того, чтобы быть действительной датой и вернуть соответствующее исключение. Ваш подход выше чреват опасностью.

Да, есть способы, но большинство предпочитают как:

  1. На JSP сделайте простое поле ввода не desp: input
  2. Это поле ввода должно иметь идентификатор или класс, используя это, мы устанавливаем некоторый dsp: input, который скрыт в вашем jsp.
  3. Напишите скрипт jQuery, который сделает дату в виде ММ / ДД / ГГГГ и установите скрытое значение dsp: input с помощью jQuery.

Jsp:-/*dsp:input */

<dsp:getvalueof var="dateOfBirth" bean="ProfileFormHandler.value.dateOfBirth" />

/ * простой ввод * /

<input type="text" value="${dob}" maxlength="10" class="field text dob" id="accDOB" name="accDOB"></code>

/ * jQuery * /

    var accDOB = $('#accDOB').val();
    var d = accDOB.split("/");
    var dob = d[1]+'/'+d[0]+'/'+d[2];
    //convert the formate in mm/dd/yy
    $("#dob").val(dob);

Надеюсь, это поможет вам.

Другие вопросы по тегам