我的 context.xml 中有以下条目:
<Environment name="environment" value="DEV" type="java.lang.String" override="false" />
还有一个需要它的 servlet -
try
{
Context initContext = new InitialContext();
environment = (String) initContext.lookup("environment");
}
catch (final NamingException nx)
{
ERROR_RECORDER.error(nx.getMessage(), nx);
}
现在,代码可以工作了。我可以在其他容器中运行它,这很好。这只发生在 Tomcat 9.0.73 下,根据 Tomcat 文档我已经正确配置了这个,但是我得到以下异常:
[Time: 16 Mar 2023 06:36:36,840][Thread: main][Log: ERROR_RECORDER.][Level: ERROR] - [File: ResponseTimeFilter.java:80] - Name [environment] is not bound in this Context. Unable to find [environment].
javax.naming.NameNotFoundException: Name [environment] is not bound in this Context. Unable to find [environment].
有人有什么想法吗?