You're writing Facelets specific tags <ui:xxx>
inside a JSP file instead of a Facelets (XHTML) file.
This is indeed not going to work. That piece of code is basically interpreted as plain text, it's as if you're writing down plain HTML/XML. You would have gotten exactly the same error if you were using e.g.
<p>#{myBundle.myPageTitle}</p>
In other words, the EL expression is been interpreted as part of "template text" and the deferred EL form #{}
is in JSP not supported in template text, only the immediate EL form ${}
is supported in template text.
The solution is rather simple: rename mypage.jsp
to mypage.xhtml
and don't forget to replace all other JSP-specific tags like <%@...%>
and <jsp:xxx>
by Facelets/XHTML ones.