EL не получит мою собственность в моем бобе - PullRequest
0 голосов
/ 16 апреля 2011

Ошибка, которую я получаю: javax.el.PropertyNotFoundException: у класса Beans.ReservationBean нет свойства getFirstName. Я пытаюсь получить доступ к своему Бобу, чтобы получить значение У моего бина есть геттеры и сеттеры с конструктором без параметров. Имеет все переменные, также определяет.

public ReservationBean{

 String FirstName

public String getFirstName() {
    return FirstName;
}

public void setFirstName(String FirstName) {
    this.FirstName = FirstName;
}
    }

Это моя страница JSP, пытающаяся получить свойство.

<tr><td>First Name:</td><td>${RB.FirstName}</td></tr>

Это мой код сервлета, передающий бин как объект.

request.setAttribute("RB", RB);
            RequestDispatcher rd = getServletContext().getRequestDispatcher("/Confirmation.jsp");
            rd.forward(request, response);

Спасибо за вашу помощь!

Ответы [ 2 ]

1 голос
/ 16 апреля 2011

Я не вижу getFirstName() в коде, который вы вставили.Может ли это быть?

0 голосов
/ 16 апреля 2011

У вас нет получателя для поля FirstName getFirstName.В EL, когда вы указываете имя свойства, оно вызывает метод получения этого свойства.Java не может найти метод, поэтому вы получаете исключение PropertyNotFoundException.Кроме того, используйте camelCase для field-name, поэтому в вашем случае поле должно называться firstName.Общий синтаксис для bean-компонента будет выглядеть примерно так:

private {type} fieldName;

public {type} getFieldName() {
 return (this.fieldName);
}
public void setFieldName({type} fieldName) {
 this.fieldName = fieldName;
}

Дайте мне знать, как это происходит.

...