1

我们正在从 JDK 1.6 迁移到 1.7,我们使用的是 spring 2.5.1 版本。启动应用程序时,我收到以下错误。

org.springframework.beans.factory.BeanCreationException:在 ServletContext 资源 [/WEB-INF/classes/spring-managers.xml] 中定义名称为 'tivoliTransferManager' 创建 bean 时出错:bean 实例化之前的 BeanPostProcessor 失败;嵌套异常是 org.springframework.beans.factory.BeanCreationException:创建名为 'org.springframework.transaction.config.internalTransactionAdvisor' 的 bean 时出错:无法创建 [org.springframework.transaction.interceptor 类型的内部 bean '(inner bean)' .TransactionInterceptor] 同时设置 bean 属性“transactionInterceptor”;嵌套异常是 org.springframework.beans.factory.BeanCreationException:创建名称为“(内部 bean)”的 bean 时出错:设置 bean 属性时无法解析对 bean 'transactionManager' 的引用' 事务管理器'; 嵌套异常是 org.springframework.beans.factory.BeanCreationException:创建 ServletContext 资源 [/WEB-INF/classes/spring.xml] 中定义的名称为“transactionManager”的 bean 时出错:设置 bean 属性时无法解析对 bean 'sessionFactory' 的引用'会话工厂'; 嵌套异常是 org.springframework.beans.factory.BeanCreationException:创建 ServletContext 资源 [/WEB-INF/classes/spring.xml] 中定义的名称为“sessionFactory”的 bean 时出错:设置 bean 属性时无法解析对 bean 'dataSource' 的引用'数据源'; 嵌套异常是 org.springframework.beans.factory.BeanCreationException:在 ServletContext 资源 [/WEB-INF/classes/spring.xml] 中定义名称为“dataSource”的 bean 创建错误:bean初始化失败;嵌套异常是 java.lang.IllegalArgumentException:在 ::0 处的错误在 java.security.AccessController 的 org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory$1.run(AbstractAutowireCapableBeanFactory.java:379) 处找不到引用的切入点 addSingleUserToGroupPointCut。 org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:353) 的 doPrivileged(Native Method)

我们是否也需要迁移 spring 版本?

另请查找 spring.xml 的内容

<?xml version="1.0" encoding="UTF-8"?>

<beans xmlns="http://www.springframework.org/schema/beans"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:aop="http://www.springframework.org/schema/aop"
    xmlns:context="http://www.springframework.org/schema/context" xmlns:tx="http://www.springframework.org/schema/tx"
    xsi:schemaLocation="
       http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd
       http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-2.5.xsd
       http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-2.5.xsd
       http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-2.5.xsd">

    <import resource="spring-managers.xml" />
    <import resource="spring-elementpermissions.xml" />
    <import resource="spring-scheduling.xml" />

    <context:annotation-config />
4

2 回答 2

3

Spring 2.5 至少明确地与 JDK 1.7 不兼容。它最初是在 JDK 1.6 上构建和测试的,但是我认为它应该与 JDK 1.7 1.7 一起使用,除非 JDK 出现任何重大损坏。此外,该错误似乎根本不是与 JDK 版本相关的问题。

我建议将 Spring 升级到更高版本,因为在更高版本中引入了很多改进和新功能。

于 2016-04-11T11:00:47.423 回答
1

错误

bean初始化失败;嵌套异常是 java.lang.IllegalArgumentException: ::0 处的错误在 org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory$1.run 中找不到引用的切入点 addSingleUserToGroupPointCut

jar 看起来有问题aspectjweaver.jar

请检查jar文件并配置兼容的aspectjweaver.jar版本

于 2016-04-12T11:26:23.827 回答