Tim*_*Tim 11 java model-view-controller web-inf jsf-2
我想将我的JSF 2.0 xhtml文件放在WEB-INF\jsf下.我如何访问它们呢?我知道WEB-INF内部的任何内容都没有暴露在外面,所以我需要一个控制器来将我重定向到相应的JSP,对吧?(这也是模型2模式iirc).
我可以使用web.xml/faces-config.xml中的参数来实现这一点吗?我认为FacesServlet是我的webapp的控制器所以它应该用于此目的?
另一个理解模型2模式的问题.是否每个操作都必须首先进入servlet,然后处理下一个可能的步骤?因此,<a href="anotherPage.html" />在这种模式中禁止使用简单,因为它不会进入控制servlet?
Bal*_*usC 19
我想将我的JSF 2.0 xhtml文件放在WEB-INF\jsf下.我如何访问它们呢?
你不能.文件/WEB-INF夹中的文件无法直接访问.
有两种方法可以解决JSF源文件可公开访问的问题.
在地图FacesServlet上*.xhtml,而不是*.jsf.
或者,限制直接访问*.xhtml通过一个<security-constraint>在web.xml.
<security-constraint>
<display-name>Restrict direct access to XHTML files</display-name>
<web-resource-collection>
<web-resource-name>XHTML files</web-resource-name>
<url-pattern>*.xhtml</url-pattern>
</web-resource-collection>
<auth-constraint />
</security-constraint>
Run Code Online (Sandbox Code Playgroud)另一个理解模型2模式的问题.是否每个操作都必须首先进入servlet,然后处理下一个可能的步骤?
在FacesServlet已经做到这一点.这是控制器.使用JSF,您最终会得到一个简单的javabean作为模型,JSP/Facelets文件作为视图.在FacesServlet作为控制器已经采取了请求参数的采集,验证,转换,模型更新和导航的所有肮脏的工作,从你的手中.
因此,
<a href="anotherPage.html" />在这种模式中禁止使用简单,因为它不会进入控制servlet?
不,这很好.控制器将在需要时启动.如果资源不需要控制器(即静态资源),那么您也不需要让它通过某个控制器.
将来,请在单独的Stack Overflow问题中提出多个问题.
| 归档时间: |
|
| 查看次数: |
17753 次 |
| 最近记录: |