JSF面向WEB-INF外的配置文件?

Pla*_*mer 6 java jsf web-inf faces-config

在创建多个面配置文件时,在WEB-INF之外设置faces-config.xml是正确的吗?JSF规范似乎并不十分清楚(第10.1.3节)

如果是,那么应该如何在web.xml中声明faces-config.xml?IDE生成的路径(如Eclipse/JDev)通常使用如下内容:

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

现在,如果我的faces-config.xml在WEB-INF之外 - 将param-value声明为"/WebContent/WEB-INF/faces-config2.xml"是否正确?

Dav*_*itz 7

这是可能的,但不推荐.你在WEB-INF下放置配置文件的原因是服务器知道不提供这些文件 - 你有代码,数据库配置和其他敏感的东西.

你不能使用"/WebContent/WEB-INF/faces-config2.xml" - AFAIK"WebContent"是特定于eclipse的.将配置文件名称设置为WAR内的绝对名称.这意味着它们将始终以"/ WEB-INF /"开头.