【发布时间】:2014-08-26 22:35:58
【问题描述】:
我使用 IntelliJ、Spring、Maven、Tomcat7 和 MongoDB
我有 2 个项目:
- JAR:这应该是一个身份验证服务
- WAR:这有我的身份验证服务作为依赖项
现在我的战争项目中有以下 bean 配置:
<!-- Factory bean that creates the Mongo instance -->
<bean id="mongo" class="org.springframework.data.mongodb.core.MongoFactoryBean">
<property name="host" value="localhost" />
</bean>
<!-- MongoTemplate for connecting and quering the documents in the database -->
<bean id="jwt" class="org.springframework.data.mongodb.core.MongoTemplate">
<constructor-arg name="mongo" ref="mongo" />
<constructor-arg name="databaseName" value="ProjectDB" />
</bean>
<!-- Use this post processor to translate any MongoExceptions
thrown in @Repository annotated classes -->
<bean class="org.springframework.dao.annotation.PersistenceExceptionTranslationPostProcessor" />
<!-- ########################################################################### -->
<!-- Configuration for auth -->
<!-- ########################################################################### -->
<!-- MongoTemplate for connecting and quering the documents in the database -->
<bean id="auth" class="org.springframework.data.mongodb.core.MongoTemplate">
<constructor-arg name="mongo" ref="mongo" />
<constructor-arg name="databaseName" value="ProjectDB-auth" />
</bean>
我的 WAR 项目应该使用 ProjectDB 并为 ProjectDB-auth 提供身份验证服务
- 在我的 WAR 项目中注入 ->
@Autowired private MongoTemplate jwt; - 在我的 JAR 项目中注入 ->
@Autowired private MongoTemplate auth;
这很好用,但是我的 JAR 项目中有另一个 mongoDB 配置 XML 文件,它将被完全忽略(永远不会在我的应用程序上下文中导入)。
<!-- Factory bean that creates the Mongo instance -->
<bean id="mongo" class="org.springframework.data.mongodb.core.MongoFactoryBean">
<property name="host" value="localhost" />
</bean>
<!-- MongoTemplate for connecting and quering the documents in the database -->
<bean id="test" class="org.springframework.data.mongodb.core.MongoTemplate">
<constructor-arg name="mongo" ref="mongo" />
<constructor-arg name="databaseName" value="AuthDBBase-notInUse" />
</bean>
<!-- Use this post processor to translate any MongoExceptions
thrown in @Repository annotated classes -->
<bean class="org.springframework.dao.annotation.PersistenceExceptionTranslationPostProcessor" />
我需要删除此文件,但 IntelliJ 无法解析 @Autowired private MongoTemplate auth; 的依赖关系
我认为我的配置有问题,尽管这可以正常工作。但是如何正确配置我的两个项目呢?
【问题讨论】:
-
“一切都错了”是什么意思?也许“没有错”?
-
对不起我的失败,我的意思是我的配置有问题:P
标签: spring mongodb maven intellij-idea tomcat7