在运行时更新内存中的faces-config.xml

时间:2012-06-22 02:53:26

标签: jsf xpages

当JSF / XPages应用程序启动时,它会读取托管bean,验证器等的faces-config.xml。我可以在运行时操作加载的配置吗?例如动态添加验证器以确保我的自定义代码将运行。

我不是试图在运行时更改xml文件,而是在加载后更改内存表示。

XPages使用JSF 1.x运行时,因此JSF 2.0构造可能不起作用

1 个答案:

答案 0 :(得分:2)

是的,您可以添加许多通常在faces-config.xml中配置Application class的JSF工件。

Application application = FacesContext.getCurrentInstance().getApplication();
application.addValidator("fooValidator", "com.example.FooValidator");
// ...

您可以在急切初始化的应用程序作用域托管bean中完成这项工作。

@ManagedBean(eager=true)
@ApplicationScoped
public class Config {

    @PostConstruct
    public void init() {
        // ...
    }

}