applicationcontext.xml来自另一个jar的spring servrices

时间:2012-11-14 00:50:15

标签: java spring mapping applicationcontext

快速提问。 当你在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下面

1 个答案:

答案 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表示的类的名称。