Прежде всего, это не файл JSP.Это файл Facelets (XHTML).JSP - это древняя технология просмотра.Facelets является преемником JSP.
Итак, ваша конкретная проблема в том, что теги JSF не были проанализированы?Это может произойти, если URL-адрес запроса не соответствует шаблону URL-адреса FacesServlet
, как определено в web.xml
.Если это, например, *.jsf
, то вам нужно изменить URL запроса с
http://localhost:8080/contextname/kontolist.xhtml
на
http://localhost:8080/contextname/kontolist.jsf
Однако гораздо лучше просто изменить шаблон URL-адреса FacesServlet
на *.xhtml
, чтобы вам не пришлось возиться с виртуальными URL-адресами и вводить ограничения безопасности для предотвращенияконечному пользователю от случайного или случайного просмотра необработанных *.xhtml
страниц.
<servlet-mapping>
<servlet-name>Faces Servlet</servlet-name>
<url-pattern>*.xhtml</url-pattern>
</servlet-mapping>
См. также:
Не связано с конкретной проблемой, вы, кстати, обнаружили ошибку NullPointerException
в своем коде.Замените
public Kontolist() {
kontos = kontofacade.findAll();
}
на
@PostConstruct
public void init() {
kontos = kontofacade.findAll();
}
Введенные зависимости, в частности, недоступны во время построения.Методы получения и установки для kontofacate
также полностью излишни, я бы удалил их, чтобы избежать путаницы и злоупотреблений в будущем.