请求Dispatcher访问WEB-INF文件夹中的页面?

时间:2013-10-26 17:32:30

标签: java jsf-2.2

根据netbeans电子商务教程。 https://netbeans.org/kb/docs/javaee/ecommerce/page-views-controller.html#view有4个页面包含标题&页脚放在WEB-INF文件夹中,但可以通过controllerservlet(RequestDispatcher)访问它。 我在google搜索并发现了很多关于如何访问/重定向到WEB-INF文件夹中的页面的问题,但结果无法访问WEB-INF文件夹中的页面(xhtml,jsp等)。 我的问题是 1.我可以使用RequestDispatcher(使用JSF 2.X)访问WEB-INF文件夹中的页面吗? 2.如何使用JSF 2.X访问WEB-INF中的页面?

1 个答案:

答案 0 :(得分:0)

一个简单的解决方案是创建一个WEB-INF之外的页面。我们将此页面称为placeHolder.xhtml

如果您知道要在WEB-INF中显示哪个页面片段,请通过bean使其可用。让我们说以下方法返回必须包含的页面

#{mybean.pageToInclude}

现在,在placeHolder.xhtml文件中,使用ui:include标记包含WEB-INF下的页面

placeHolder.xhtml
...
  <ui:inlucde src="#{mybean.pageToInclude}"/>

通过这种方式,您可以在WEB-INF中获取代码,使其在其外部的页面中可用。

还有其他一些技术,比如编写ResourceHandler来查找您可以使用的不同位置下的视图资源。

希望有所帮助。