Jakarta ee 隐藏.xhtml源代码-facelets/icefaces?
我对Icefaces和Facelets都不熟悉,但我正在一个新项目中使用它们。我已经把所有的东西都配置好了,工作得很好。但是,当我访问mywebapp/file.xhtml时,整个facelets模板源都会出现在我的浏览器中。如何隐藏此项以防止用户查看我的服务器端模板?在web.xml中应该有一个条目,用于配置xhtml模板的行为(显示/隐藏..) 如果将.jsp文件移动到WEB-INF文件夹(必须为JSF重新配置jsp路径),则无法通过URL访问它们。我认识的每个J2EE服务器/网络容器都是这样工作的 另一种方法是自行编写servlet过滤器等Jakarta ee 隐藏.xhtml源代码-facelets/icefaces?,jakarta-ee,facelets,icefaces,Jakarta Ee,Facelets,Icefaces,我对Icefaces和Facelets都不熟悉,但我正在一个新项目中使用它们。我已经把所有的东西都配置好了,工作得很好。但是,当我访问mywebapp/file.xhtml时,整个facelets模板源都会出现在我的浏览器中。如何隐藏此项以防止用户查看我的服务器端模板?在web.xml中应该有一个条目,用于配置xhtml模板的行为(显示/隐藏..) 如果将.jsp文件移动到WEB-INF文件夹(必须为JSF重新配置jsp路径),则无法通过URL访问它们。我认识的每个J2EE服务器/网络容器都是这
但是,为什么要隐藏模板 将所有模板放入WEB-INF/someDirectory/templates 然后,根据facelets文档,将其放入web.xml中,用于所有其他xhtml文件:
<security-constraint>
<display-name>Restrict XHTML Documents</display-name>
<web-resource-collection>
<web-resource-name>XHTML</web-resource-name>
<url-pattern>*.xhtml</url-pattern>
</web-resource-collection>
<auth-constraint>
<description>Only Let 'developer's access XHTML pages</description>
<role-name>someone</role-name>
</auth-constraint>
</security-constraint>
限制XHTML文档
XHTML
*.xhtml
仅允许开发人员访问XHTML页面
某人
我很惊讶默认情况下没有隐藏模板。模板暴露应用程序的内部结构,泄漏它们可能会带来安全隐患。与其问为什么要隐藏模板,不如问为什么要暴露它们?为什么我们要向世界展示我们网站的模板布局?