<f:loadBundle>
будет бросать NPE таким образом, когда FacesContext
отсутствует.
Другими словами, вы не вызываете запрос через url-pattern
из FacesServlet
, как определено в web.xml
. FacesServlet
именно тот, кто отвечает за создание FacesContext
. Если url-pattern
является, например, *.jsf
, вам следует открыть страницу в веб-браузере с помощью pagename.jsf
, а не pagename.jsp
.
Кстати, трассировка стека также свидетельствует о том, что она не была обработана JSF вообще. Там нет ни одной строки, указывающей на участие JSF API или impl до вызова f:loadBundle
.
Это сказанное (и не имеющее отношения к текущей проблеме), учитывая тот факт, что вы используете JSF 2.0 (по крайней мере, вы так пометили) и что Facelets является превосходным преемником JSP в случае JSF- Настоятельно рекомендуем вообще отказаться от JSP и использовать Facelets.