如何在没有web.xml的情况下以编程方式配置<context-param>

Hap*_*eal 5 servlets context-param

有没有其他方法来配置上下文参数,不包括使用web.xml如下例子中的那个?

<context-param>
    <param-name>com.sun.faces.numberOfLogicalViews</param-name>
    <param-value>10</param-value>
</context-param>
Run Code Online (Sandbox Code Playgroud)

Bal*_*usC 13

从Servlet 3.0开始,您可以通过编程方式设置它们ServletContext#setInitParameter().

只需ServletContextListener在您的Web项目中的任何位置.该@WebListener注释会使容器自动皮卡和web应用程序启动时运行它.

@WebListener
public class Config implements ServletContextListener {

    @Override
    public void contextInitialized(ServletContextEvent event) {
        ServletContext servletContext = event.getServletContext(); 
        servletContext.setInitParameter("com.sun.faces.numberOfLogicalViews", "10");
    }

    @Override
    public void contextDestroyed(ServletContextEvent event) {
        // NOOP.
    }

}
Run Code Online (Sandbox Code Playgroud)