Jsf 是否以编程方式添加上下文参数?
有没有办法以编程方式添加上下文参数?我不想添加到web xml中。具体地说,我想做这篇文章的答案所建议的:。是的,这是可能的 在servlet的init方法中,使用Jsf 是否以编程方式添加上下文参数?,jsf,servlets,Jsf,Servlets,有没有办法以编程方式添加上下文参数?我不想添加到web xml中。具体地说,我想做这篇文章的答案所建议的:。是的,这是可能的 在servlet的init方法中,使用 getServletConfig().getServletContext().setInitParameter("[Parameter name]", "[value]"); 或者干脆 getServletContext().setInitParameter("[Parameter name]", "[value]"); 这一定
getServletConfig().getServletContext().setInitParameter("[Parameter name]", "[value]");
或者干脆
getServletContext().setInitParameter("[Parameter name]", "[value]");
这一定对你有好处
对于应用程序负载
在web.xml中,当您声明这个servlet时,为这个servlet提供
元素作为1
<servlet>
<servlet-name>TestServlet</servlet-name>
<servlet-class>TestServlet</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
TestServlet
TestServlet
1.
但是,这种方法不能保证需要上下文参数的API在以编程方式设置后会读取它。这是因为程序员知道将加载到应用程序中的第一个servlet,并且在该servlet中,将设置init参数。一些API(如JSF!)使用ServletContextListener
或ServletContainerInitializer
初始化API,它们在创建第一个Servlet
之前运行很长时间。因此,也许ServletContextListener
或另一个是设置初始化参数的最佳位置?顺便说一句,setInitParameter
似乎只能从Servlet 3.0以后的版本