当前位置: 首页 > 知识库问答 >
问题:

添加安全jar后创建Bean失败

秦琦
2023-03-14

我遇到以下错误

异常发送上下文初始化事件到org.springframework.web.context.类的监听器实例ContextLoaderListener:org.springframework.beans.factory.BeanCreation异常:创建名为“userAuditLogAspect”的bean时出错:自动构建依赖项的注入失败;嵌套异常org.springframework.beans.factory.BeanCreation异常:无法自动构建字段:私有javax.sql.DataSourcecom.vzw.aspect.UserAuditLogAspect.dataSource;嵌套异常org.springframework.beans.factory.NoSuchBean定义异常:没有为依赖项找到类型为[javax.sql.DataSource]的匹配bean:预计至少有1个bean符合此依赖项的自动构建候选项。依赖批注:{@org.springframework.beans.factory.annotation.自动加载(必需=true),@org.springframework.beans.factory.annotation.限定符(值=topoDataSource)}相关原因:org.springframework.beans.factory.BeanCreationExctive:创建名为topoDataSource的bean时出错:bean初始化失败;嵌套异常java.lang.NoClassDefFoundError:无法初始化类org.springframework.expression.TypeValue

我的web xml是:

<context-param>
  <param-name>contextConfigLocation</param-name>
  <param-value>WEB-INF/spring-security.xml, WEB-INF/topoService-servlet.xml</param-value>
 </context-param>
 <!-- Spring Security Filter -->
 <filter>
  <filter-name>springSecurityFilterChain</filter-name>
  <filter-class>org.springframework.web.filter.DelegatingFilterProxy</filter-class>
 </filter>
 <filter-mapping>
  <filter-name>springSecurityFilterChain</filter-name>
  <url-pattern>/*</url-pattern>
 </filter-mapping>
 <!-- <context-param>
        <param-name>resteasy.resources</param-name>
        <param-value>com.vz.myrest.MessageRestService</param-value>
    </context-param> -->
 <listener>
  <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
 </listener>}

2) 拓扑服务servlet。xml

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

    http://www.springframework.org/schema/jee http://www.springframework.org/schema/jee/spring-jee.xsd
    http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop.xsd
    http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd"
    >   
    <aop:aspectj-autoproxy />
    <context:component-scan base-package="com.vzw.context, com.vzw.aspect, com.vzw.logger" />

    <jee:jndi-lookup id="topoDataSource" jndi-name="java:/TopoDSJNDI" />

    <!--<bean class="com.vzw.context.SpringApplicationContext"></bean> -->

    <bean id="topoServiceDao" class="com.vzw.topo.dao.TopoServiceDaoImpl">
        <property name="dataSource">
            <ref bean="topoDataSource" />
        </property>
    </bean>

</beans>

3) 波姆。xml

<dependencies>
    <dependency>
        <groupId>org.jboss.resteasy</groupId>
        <artifactId>resteasy-jaxrs</artifactId>
        <scope>provided</scope>
        <version>2.3.4.Final</version><!--$NO-MVN-MAN-VER$ -->
    </dependency>
    <dependency>
        <groupId>org.jboss.resteasy</groupId>
        <artifactId>resteasy-multipart-provider</artifactId>
        <scope>provided</scope>
        <version>2.3.4.Final</version><!--$NO-MVN-MAN-VER$ -->
    </dependency>
    <dependency>
        <groupId>org.jboss.resteasy</groupId>
        <artifactId>resteasy-jaxb-provider</artifactId>
        <scope>provided</scope>
        <version>2.3.4.Final</version>
    </dependency>
    <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-jdbc</artifactId>
        <version>3.1.3.RELEASE</version>
    </dependency>
    <dependency>
        <groupId>org.jboss.resteasy</groupId>
        <artifactId>resteasy-jackson-provider</artifactId>
        <scope>provided</scope>
        <version>2.3.4.Final</version><!--$NO-MVN-MAN-VER$ -->
    </dependency>
    <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-web</artifactId>
        <version>3.1.1.RELEASE</version>
    </dependency>
    <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-beans</artifactId>
        <version>3.1.1.RELEASE</version>
        <classifier>sources</classifier>
    </dependency>
    <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-aop</artifactId>
        <version>3.1.2.RELEASE</version>
    </dependency>
    <!--<dependency> <groupId>org.springframework</groupId> <artifactId>spring-aspects</artifactId> 
        <version>3.1.2.RELEASE</version> </dependency> -->
    <!-- <dependency> <groupId>org.springframework</groupId> <artifactId>spring-context</artifactId> 
        <version>3.1.2.RELEASE</version> </dependency> <dependency> <groupId>org.springframework</groupId> 
        <artifactId>spring-context-support</artifactId> <version>3.1.2.RELEASE</version> 
        </dependency> -->
    <!-- Spring Security -->
    <dependency>
        <groupId>org.springframework.security</groupId>
        <artifactId>spring-security-core</artifactId>
        <version>3.1.3.RELEASE</version>
    </dependency>
    <dependency>
        <groupId>org.springframework.security</groupId>
        <artifactId>spring-security-web</artifactId>
        <version>3.1.3.RELEASE</version>
    </dependency>
    <dependency>
        <groupId>org.springframework.security</groupId>
        <artifactId>spring-security-config</artifactId>
        <version>3.1.3.RELEASE</version>
    </dependency>
    <!-- Spring Security ends -->
    <dependency>
        <groupId>org.jboss.spec.javax.servlet</groupId>
        <artifactId>jboss-servlet-api_3.0_spec</artifactId>
        <version>1.0.2.Final</version>
    </dependency>
    <dependency>
        <groupId>javax.annotation</groupId>
        <artifactId>jsr250-api</artifactId>
        <version>1.0</version>
        <type>jar</type>
        <scope>compile</scope>
    </dependency>
    <dependency>
        <groupId>org.aspectj</groupId>
        <artifactId>aspectjweaver</artifactId>
        <version>1.7.0</version>
    </dependency>
    <dependency>
        <groupId>commons-beanutils</groupId>
        <artifactId>commons-beanutils</artifactId>
        <version>1.8.3</version>
    </dependency>
    <dependency>
        <groupId>commons-lang</groupId>
        <artifactId>commons-lang</artifactId>
        <version>2.6</version>
    </dependency>
    <dependency>
        <groupId>log4j</groupId>
        <artifactId>log4j</artifactId>
        <version>1.2.17</version>
    </dependency>
</dependencies>

问题是一旦我添加了安全依赖项,我就会得到异常。这与上下文有关,但我不确定。任何指针都会有帮助。

谢了阿米特

共有1个答案

令狐珂
2023-03-14

您的一些Spring依赖项具有版本3.1.1。RELEASE其他具有3.1.2。RELEASE3.1.3。RELEASE。始终使用相同的Spring版本。您应该在maven pom中定义一个spring.version属性,而不是手动输入值。

检查应用程序运行时使用的类路径(例如,使用mvn-X运行测试),确保没有不一致之处,例如不同的Spring jar版本或具有不同版本号的重复jar。

 类似资料:
  • 我正在使用笔记本中的pyspark,我不处理SparkSession的创建。我需要加载一个jar,其中包含一些在处理rdd时要使用的函数。这是一件你可以很容易地用罐子做的事,但我在我的特殊情况下做不到。有没有办法访问spark scala上下文并调用addJar方法?我尝试使用JavaGateway(sparksession.\u jvm…)但到目前为止还没有成功。有什么想法吗? 谢谢纪尧姆

  • 我可以运行我的项目,并且没有错误地运行它。但当我运行测试时,它不能。 我看到文档,一步一步地。 我不知道我在哪里犯了错误。 配置: 测试文件 错误消息:

  • 我错过了什么依赖吗?

  • 问题内容: 我用记事本创建了一个项目,并且在mysql服务器数据库的cmd中运行良好。 但是在创建相同项目的jar文件之后,jar文件将无法连接到服务器数据库。所以不知道下一步该怎么做?从cmd或jar文件运行后,即使其他系统(仅安装了Java而不是mysql)也无法连接到服务器数据库。 每个系统是否都必须在其他系统上安装java和mysql才能运行?如何克服这样的问题。我想将其分发给用户,但是我

  • 当我将core-ktx依赖项添加到我的应用程序的build.gradle文件时,我的gradle构建失败,错误消息它还告诉中缺少两个属性。此文件位于我的用户目录中的. gradle文件夹下。 当我将添加到我的项目属性时,由于该选项已弃用,构建失败,因此我想避免这种情况。 两个的错误描述如下: 错误:资源android: attr/fontVariationSetting未找到。消息{种类=错误,文