在tomcat中设置上下文变量

发布于 2025-01-05 01:18:22 字数 455 浏览 3 评论 0原文

我在设置 tomcat 上下文变量时遇到问题。 我尝试过:

  1. 在根文件夹中的web.xml中(注意:它不是conf文件夹中的那个) 我尝试添加上下文参数,但不起作用,这没有改变任何内容,上下文变量仍然为空

    <上下文参数>
        <参数名称>测试名称
        <参数值>测试值
    
    
  2. 使用 servlet getServletContext.setAttribute("test","ok") 设置变量,它也不起作用,变量一直为空。

  3. 我尝试在 server.xml 中添加 crossContext=true (即使我只有一个 webapp),但它不起作用。

那么有什么建议吗?

谢谢

I am having problem setting up tomcat context variable.
I have tried:

  1. in web.xml in root folder(note: it's not the one in conf folder)
    I tried adding context-param, not work, this did not change anything, the context variable is still null

    <context-param>
        <param-name>testname</param-name>
        <param-value>testvalue</param-value>
    </context-param>
    
  2. using servlet getServletContext.setAttribute("test","ok") to set variable, it does not work either, the variable just stay null all the time.

  3. i have tried to add crossContext=true in server.xml (even though i only have one webapp), it does not work.

so any suggestions?

Thanks

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

情深已缘浅 2025-01-12 01:18:22

您需要将上下文参数添加到 web 应用程序的 /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() 设置/获取应用程序范围内的属性。它们与上下文参数无关。

You need to add the context parameter to the /WEB-INF/web.xml of your webapp, not one "in root folder" wherever that is.

<context-param>
    <param-name>testname</param-name>
    <param-value>testvalue</param-value>
</context-param>

You need to get it by ServletContext#getInitParameter():

String testname = getServletContext().getInitParameter("testname");
System.out.println(testname); // testvalue

The ServletContext#set/getAttribute() sets/gets attributes in the application scope. They are not related to context parameters.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文