• spring中junit 提示Failed to load ApplicationContext


    错误提示: 1:java.lang.IllegalStateException: Failed to load ApplicationContext

        2:Error creating bean with name 'userService' defined in class path resource [UserService.xml]: Initialization of bean failed; nested exception is org.springframework.aop.framework.AopConfigException: Cannot proxy target class because CGLIB2 is not available. Add CGLIB to the class path or specify proxy interfaces.

        3:Cannot proxy target class because CGLIB2 is not available. Add CGLIB to the class path or specify proxy interfaces.

    根本原因:由于web在加载spring的配置文件(applicationContext.xml)时,发生了错误,而错误是3(cglib2不可用),所以根本原因是缺少cglib的包。

    applicationContext.xml中的代理配置如下

      <!-- 指定使用cglib -->
        <aop:aspectj-autoproxy proxy-target-class="true" />
        
        <tx:advice id="txAdvice" transaction-manager="transactionManager">
            <tx:attributes>
                <tx:method name="*" />
            </tx:attributes>
        </tx:advice>
        <!-- 通过AOP配置提供事务增强,让service包下所有bean的所有方法拥有事务 -->
        <aop:config proxy-target-class="true">
            <aop:pointcut id="serviceMethod" expression=" execution(* com.luxl.service..*(..))" />
            <aop:advisor pointcut-ref="serviceMethod" advice-ref="txAdvice" />
        </aop:config>

    解决方法:在maven中添加cglib的包,如下:

      <dependency>
            <groupId>cglib</groupId>
            <artifactId>cglib</artifactId>
            <version>2.2.2</version>
        </dependency>

  • 相关阅读:
    我的黑客偶像
    2020-2021-1学期 学号20201222 《信息安全专业导论》第5周学习总结
    XOR加密
    pep/9
    我的黑客偶像
    学年2020-2021,1 学号:20201222《信息安全专业导论》第4周学习总结”
    IEEE754浮点数转换
    师生关系
    罗马数字转阿拉伯数字
    第三周总结
  • 原文地址:https://www.cnblogs.com/ScorchingSun/p/3924012.html
Copyright © 2020-2023  润新知