快速提问。 当你在webApp使用的另一个jar中时,你可以在applicationContext.xml中引用Spring类吗?
JAR(包含我所有服务和daos等的常见jar)在WAR文件中,但是当我尝试通过applicationContext.xml引用服务时,我收到以下错误: -
Error creating bean with name 'com.myproject.common.test.impl.TestServiceImpl' defined in ServletContext resource [/WEB-INF/context/spring-context.xml]: Instantiation of bean failed; nested exception is java.lang.IllegalStateException: No bean class specified on bean definition
(注意spring-context.xml被导入applicationContext.xml而没有错误。)
我的上下文XML:
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:tx="http://www.springframework.org/schema/tx"
xmlns:context="http://www.springframework.org/schema/context"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
http://www.springframework.org/schema/tx
http://www.springframework.org/schema/tx/spring-tx-3.0.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context-3.0.xsd">
<bean id="com.myproject.common.test.impl.TestServiceImpl">
<property name="genericDao" ref="genericDao" />
</bean>
</beans>
我的应用程序包都在com.myproject.web下 我的常见JARS都在com.myproect.common下面
答案 0 :(得分:5)
您的bean元素需要一个class属性:
<bean id="myTestServiceImpl" class="com.myproject.common.test.impl.TestServiceImpl">
<property name="genericDao" ref="genericDao" />
</bean>
id属性只是在bean文件的其他地方引用bean的标识符。 class属性提供bean表示的类的名称。