我刚刚开始学习Java服务器界面,并在JSF中成功测试了我的第一个Web应用程序。

让我感到困惑的是,导航规则是在WEB-INF文件夹中的faces-config.xml中指定的,而在web.xml中没有指定我的faces-config.xml文件位置的位置。

那么导航如何进行?

最佳答案

JSF 1.2 specification (JSR 252)需要任何JSF实现来在启动时自动加载/WEB-INF/faces-config.xml(如果存在这样的资源)。

引用部分10.4.2应用程序启动行为:


  在应用程序启动时,
  JSF处理了所有请求
  实施必须处理零或
  更多应用程序配置
  资源,根据
  以下算法:
  
  
  在目录中搜索所有名为“META-INF/faces-config.xml”的资源。
  ServletContext的资源路径
  此Web应用程序,并将其分别加载为
  JSF配置资源(在
  顺序相反的顺序
  他们被归还
  当前的getResources()
  线程的ContextClassLoader)。
  检查是否存在名为的上下文初始化参数
  javax.faces.CONFIG_FILES。如果它
  存在,将其视为以逗号分隔
  上下文相关资源列表
  路径(以“ /”开头)和加载
  每个指定的资源。
  检查是否存在Web应用程序配置资源
  名为“/WEB-INF/faces-config.xml”
  并在资源存在的情况下加载它。

08-08 01:09
查看更多