【问题标题】:What is the equivalent of web.xml's <env-entry> tag when using ServletContainerInitializer?使用 ServletContainerInitializer 时,web.xml 的 <env-entry> 标记等效于什么?
【发布时间】:2014-07-21 18:39:55
【问题描述】:

我正在尝试使用从 Spring 的 WebApplicationInitializer 扩展的基于代码的类替换我的 web.xml 文件。我的 web.xml 文件有几个“env-entry”元素。我试图弄清楚如何在我的 WebApplicationInitializer 类中设置这些,但没有运气。也许有人知道这些标签的等效代码?

public class MyWebApplicationInitializer implements WebApplicationInitializer {

    @Override
    public void onStartup(ServletContext servletContext) throws ServletException {
        XmlWebApplicationContext appContext = new XmlWebApplicationContext();
        appContext.setConfigLocation("WEB-INF/springmvc-servlet.xml");

        Dynamic servlet = servletContext.addServlet("springmvc", new DispatcherServlet(appContext));
        servlet.setLoadOnStartup(1);
        servlet.addMapping("/*");

        //How do I add this?
        //  <env-entry>
        //      <env-entry-name>logback/configuration-resource</env-entry-name>
        //      <env-entry-type>java.lang.String</env-entry-type>
        //      <env-entry-value>logback.xml</env-entry-value>
        //  </env-entry>    
    }
}

【问题讨论】:

  • 试试:InitialContext context = new InitialContext(); context.addToEnvironment("logback/configuration-resource","logback.xml)";
  • 谢谢@kolossus。这是正确的答案。可以在此处找到参考:tomcat.apache.org/tomcat-5.5-doc/jndi-resources-howto.html 是一个标量 JDNI 资源。我正在使用 Spring,并决定在组合根中定义值而不是作为 JNDI 资源。
  • 哈哈。那很好。我现在将取消删除我的答案

标签: java spring spring-mvc servlet-3.0 spring-java-config


【解决方案1】:

&lt;env-entry&gt; 本质上只是声明了一个 Web 应用上下文属性,您可以将自己绑定到您已经拥有的 ServletContext#setAttribute()

   servletContext.setAttribute("logback/configuration-resource", "logback.xml");

【讨论】:

    【解决方案2】:

    接受的答案对我不起作用。一段时间后,我最终找到了解决方案并将其发布到类似的堆栈溢出帖子中,并包括在这里以防它帮助任何人:

    https://stackoverflow.com/a/66109551/2441088

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2015-01-02
      • 1970-01-01
      • 2012-10-05
      • 2015-01-03
      • 2019-10-06
      • 2015-11-01
      • 1970-01-01
      相关资源
      最近更新 更多