Facelets页面在WEB-INF目录下

cla*_*a b 8 jsf facelets web-inf

到目前为止,我在书或教程中看到的每个项目示例都将XHTML(Facelets)页面与WEB-INF目录放在同一级别上.我还读过,为了让服务器上的页面无法直接访问,你需要将它们隐藏在WEB-INF目录下,这意味着需要某种视图解析器.我的问题是,我该怎么做?

Bal*_*usC 10

我认为你误解了放置在XHTML文件中的目的/WEB-INF.这些是包含文件,主模板和标记文件,正是那些您不希望最终用户能够独立打开的页面.普通页面和模板客户端放入/WEB-INF.

也可以看看:

  • 在Spring MVC中,所有文件都放在`/ WEB-INF`中以防止直接访问,因为它们需要通过虚拟URL打开,否则最终用户将能够通过直接打开`*.jsp`来获取原始源代码而不是`*.html`,`*.do`或Spring MVC映射的任何内容.但在JSF中这是不必要的.你只需要在`*.xhtml`的URL模式上映射`FacesServlet`.这样终端用户永远无法获得原始源代码.您只需将include/tag/template文件放在`/ WEB-INF`中,因为它们根本不应该直接访问. (2认同)