faces-config.xml是配置文件

St.*_*rio 6 jsf faces-config

默认情况下,当我们创建Web应用程序时,faces-config.xml不会自动创建.我们必须手动创建他,因为我理解faces-config.xml必须严格定位WEB-INF.

所以,我的问题:

我是否必须faces-config.xmlweb.xml创建后WEB-INF或其他文件夹中注册或自动注册.即JSF"知道"是什么,faces-config.xml并且可以在所有项目的文件夹中找到他.

希望,我问了正确的问题.;)

sku*_*sel 21

取自FacesServlet文档:

如果未在web.xml或web-fragment.xml中显式映射此servlet,并且满足以下一个或多个条件,则必须自动映射此servlet.

  • 在WEB-INF中可以找到faces-config.xml文件.

  • faces-config.xml文件位于应用程序类路径中jar的META-INF目录中.

  • 以.faces-config.xml结尾的文件名位于应用程序类路径中jar的META-INF目录中.

  • javax.faces.CONFIG_FILES上下文参数在web.xml或web-fragment.xml中声明.

  • 传递给ServletContainerInitializer实现的onStartup()方法的类集不为空.

您可以将配置文件放在webapp中的其他位置,但需要记住以下事实:

  1. 您不希望将文件公开为可访问,因此您希望它最终位于WEB-INF/ META-INFfolders下;
  2. 您需要将以下条目添加到web.xml:

    <context-param>
        <param-name>javax.faces.CONFIG_FILES</param-name>
        <param-value>
            WEB-INF/path/to/faces-config.xml
       </param-value>
    </context-param>
    
    Run Code Online (Sandbox Code Playgroud)

否则,如果在某些预定义位置找到faces-config.xml,则会自动加载.