【发布时间】:2017-08-17 18:28:18
【问题描述】:
我在同一个项目中有一个 Web 应用程序和 SOAP Web 服务。我已经定义了两个 servlet xml
mvc-servlet.xml
<import resource="ws-applicationContext.xml"/>
soap-servlet.xml
<import resource="soap-applicationContext.xml"/>
bot 这些 applicationContext 导入一个通用文件
soap-applicationContext.xml 的内容
<import resource="my-common-applicationContext.xml"/>
<context:annotation-config/>
<context:component-scan base-package="com.xyz.myproject1"/>
ws-applicationContext.xml 的内容
<import resource="my-common-applicationContext.xml"/>
<context:annotation-config/>
<context:component-scan base-package="com.xyz.myproject2"/>
my-common-applicationContext.xml 有集成、数据等都需要的通用包。
在应用程序启动时,由于 my-common-applicationContext.xml 包含在两个应用程序上下文中,它会被加载两次。这会导致 DataConfigurations 被加载两次。
解决这个问题的最佳方法是什么,同时确保上下文都可以访问相关的 bean?
【问题讨论】: