我在设置tomcat上下文变量时遇到问题。 我试过了:
在根文件夹的web.xml中(注意:它不是conf文件夹中的那个) 我尝试添加context-param,而不是工作,这没有改变任何东西,上下文变量仍为null
<context-param>
<param-name>testname</param-name>
<param-value>testvalue</param-value>
</context-param>
使用servlet getServletContext.setAttribute(“test”,“ok”)来设置变量,它也不起作用,变量一直保持为null。
我试图在server.xml中添加crossContext = true(即使我只有一个webapp),但它不起作用。
所以有什么建议吗?
由于
答案 0 :(得分:4)
您需要将上下文参数添加到您的webapp的/WEB-INF/web.xml
,而不是“根文件夹”中的任何一个。
<context-param>
<param-name>testname</param-name>
<param-value>testvalue</param-value>
</context-param>
您需要ServletContext#getInitParameter()
:
String testname = getServletContext().getInitParameter("testname");
System.out.println(testname); // testvalue
ServletContext#set/getAttribute()
在应用程序范围内设置/获取属性。它们与上下文参数无关。