Проверьте регистр атрибутов в вашем элементе тега - они должны совпадать с регистром сеттера, а не регистром переменных-членов (которые, между прочим, должны быть частными).
Правило состоит в том, что имя атрибута имеет свою первую букву с заглавной буквы, а затем к результату добавляется префикс 'set', чтобы получить имя установщика.
В вашем случае вы назвали атрибут 'firstname'
, поэтому правило приводит к тому, что JSP-компилятор ищет метод setFirstname. Поскольку вы назвали свой установщик 'setFirstName'
(с большой буквы N), вы должны использовать 'firstName'
(также с большой буквы N) в качестве имени атрибута.
Примените то же правило к атрибуту 'lastname'
, чтобы получить 'lastName'
, и вы должны быть в бизнесе.
P.S. В этом случае помогло бы использование хорошей IDE, такой как IntelliJ
, поскольку она предложила бы правильные имена для ваших атрибутов, что избавило бы вас от большого количества царапин на голове.