【问题标题】:Initialize Spring beans packaged inside a jar file初始化打包在 jar 文件中的 Spring bean
【发布时间】:2010-03-04 23:08:18
【问题描述】:

在 web-app 中,我们定义了 spring 的上下文配置位置,以像这样初始化所有 bean

 <!-- Spring Application Configuration -->
 <context-param>
  <param-name>contextConfigLocation</param-name>
  <param-value>/WEB-INF/spring/ctx-*.xml</param-value>
 </context-param>
 <listener>
  <description>Spring Context Listener</description>
  <display-name>SpringContextListener</display-name>
  <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
 </listener>

我正在尝试找出是否可以在我没有 web.xml 的 jar 文件(包含所有 spring bean)中执行此操作?

【问题讨论】:

    标签: java spring spring-mvc


    【解决方案1】:

    【讨论】:

    • 但是我在哪里指定 ?我可以在其中一个 ctx-* 文件中指定吗?
    • 我检查了 XSD,它没有定义 springframework.org/schema/beans/spring-beans-2.5.xsd
    • 如果你想在没有 web.xml 的情况下使用它,那么你应该自己创建应用程序上下文。在该初始化代码中,您可以使用“类路径:”前缀来加载打包在 jar 中的配置文件
    【解决方案2】:

    您可以添加委托级别 put /WEB-INF/spring/my-aggregator-context.xml

    这是一个占位符 xml 文件,它执行“import classpath:ctx*-xml”

    如果您在许多 jar 中有多个 appContext.xml,并且希望全部包含,那么您甚至可以说 classpath*:appContext.xml

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-03-02
      • 2020-11-30
      • 2015-09-27
      • 2020-02-22
      相关资源
      最近更新 更多