我的faces-config.xml里面有很多导航规则,所以我想知道是否有机会只使用导航规则编写外部xml,并将nav-rules.xml导入faces-config .XML。
我想保持结构良好的faces-config,因为很多导航规则都太长了。
提前谢谢!!!
答案 0 :(得分:4)
是的,可以将webapp自己的/WEB-INF/faces-config.xml
文件内容分割为多个文件。您只需要更改web.xml
以使用逗号分隔的所有外部文件的webcontent-relative路径指定javax.faces.CONFIG_FILES
上下文参数:
<context-param>
<param-name>javax.faces.application.CONFIG_FILES</param-name>
<param-value>/WEB-INF/navigation-config.xml</param-value>
</context-param>
或者,如果您已经使用JSF 2.x,那么您还可以通过使用JSF 2.0新的隐式导航功能完全摆脱所有导航案例。即只需将from-outcome
与to-view-id
或return "/result.xhtml";
中的return "/result";
完全相同,而不是return "success";
。通过这种方式,整个导航案例变得非常丰富,可以从faces-config.xml
中删除。
答案 1 :(得分:0)
可以在运行时整理多个faces-config.xml文件。因此,您可以创建一个faces-config.xml文件并将其存储在某个jar中的 META-INF / faces-config.xml 文件中,它将在运行时获取。
您决定加入原始文件的哪些部分取决于您。