改成
<property name="target"><ref bean="loginService"/></property>
后报这个错误Error creating bean with name 'userManager' defined in ServletContext resource [/WEB-INF/config/spring/spring-context.xml]: Instantiation of bean failed; nested exception is java.lang.NoClassDefFoundError: org/aopalliance/aop/Advice

解决方案 »

  1.   

    以下是我的配置:
    <bean id="kizaiTxManager"
    class="org.springframework.orm.hibernate3.HibernateTransactionManager">
    <property name="sessionFactory" ref="kizaiSessionFactory" />
    </bean>
    <tx:advice id="kizaiTxAdvice"
    transaction-manager="kizaiTxManager">
    <tx:attributes>
    <tx:method name="*" rollback-for="Exception" />
    </tx:attributes>
    </tx:advice>
    <aop:config>
    <aop:advisor advice-ref="kizaiTxAdvice"
    pointcut="execution(* org.opencarp.kizai.service.*.set*(..))" />
    </aop:config>
      

  2.   

    你要把spring安装目录下lib下aop下面的Jar放到classpath中去。
    以后要学会看报错信息:
    Instantiation of bean failed;
     nested exception is java.lang.NoClassDefFoundError: org/aopalliance/aop/AdviceNoClassDefFoundError: 就是说类没有找到,一般是因为JAR包没有加进去的原因
    当然还有可能的是JAR包的版本不对,在当前的JAR包版本中,还没有这个类
      

  3.   

    问题解决,少了一个<bean id="userManager" class="org.springframework.transaction.interceptor.TransactionProxyFactoryBean">改成<bean id="userManager"  abstract="true" class="org.springframework.transaction.interceptor.TransactionProxyFactoryBean">后问题解决,散分