java报错信息--Spring篇【1】

2023-11-13

报错信息一:

时间:学习spring的aop容器:xml形式配置aop功能

起因:测试xml形式配置好的aop功能

经过:在运行junit测试时出现以下报错信息:

警告: 
    Exception encountered during context initialization - cancelling refresh attempt:
    org.springframework.beans.factory.BeanCreationException: 
    Error creating bean with name 'calculator' defined in class path resource          
    [applicationContext.xml]: 
    BeanPostProcessor before instantiation of bean failed; 
    nested exception is org.springframework.beans.factory.BeanCreationException:
    Error creating bean with name 'org.springframework.aop.aspectj.AspectJPointcutAdvisor#0':
    Bean instantiation via constructor failed; nested exception is     org.springframework.beans.BeanInstantiationException:
    Failed to instantiate [org.springframework.aop.aspectj.AspectJPointcutAdvisor]:
    Constructor threw exception; 
    nested exception is java.lang.IllegalArgumentException: 
    warning no match for this type name: com.lixxkvSpringSeven.pojo.Calculator 
    [Xlint:invalidAbsoluteTypeName]


严重: 
    Caught exception while allowing TestExecutionListener
    [org.springframework.test.context.support.DependencyInjectionTestExecutionListener@1794d431] 
    to prepare test instance 
    [com.lixxkvSpringEight.test.springTestTwo@70325e14]

java.lang.IllegalStateException: Failed to load ApplicationContext

解决:

        根据报错信息进行排查,可知在配置文件applicationContext.xml中存在以下异常情况:在配置目标对象时,配置情况如下:

<bean class="com.lixxkvSpringEight.pojo.Calculator" id="calculator"/>

在通知的切入表达式中,配置的情况如下(以前置通知为例):

<aop:before 
    method="logBefore" 
    pointcut="execution(public int com.lixxkvSpringSeven.pojo.Calculator.*(int,int))"
/>

目标对象所属包名与切入表达式中目标对象所属包名不一致。

解决结果:

        将包名称统一,此bug得到解决。

报错信息二

时间:学习spring使用xml方式配置声明式事务

起因:进行spring使用xml方式配置声明式事务测试

经过:在运行junit测试时出现以下报错信息:

警告: 
	Exception encountered during context initialization - cancelling refresh attempt:
	org.springframework.beans.factory.BeanCreationException: 
	Error creating bean with name 'transactionManager' defined in class path resource [applicationContext.xml]: 
	Initialization of bean failed; 
	nested exception is org.springframework.beans.ConversionNotSupportedException: 
	Failed to convert property value of type 'java.lang.String' to required type 'javax.sql.DataSource' for property 'dataSource'; 
	nested exception is java.lang.IllegalStateException: 
	Cannot convert value of type 'java.lang.String' to required type 'javax.sql.DataSource' for property 'dataSource': 
	no matching editors or conversion strategy found

严重: 
	Caught exception while allowing TestExecutionListener 
	[org.springframework.test.context.support.DependencyInjectionTestExecutionListener@31a5c39e] 
	to prepare test instance 
	[com.lixxkvSpringTen.test.TransactionTestOne@fe34b86]
	
java.lang.IllegalStateException: Failed to load ApplicationContext

解决:

        根据报错信息进行排查,经过与学习资料综合分析,发现在spring的配置文件applicationContext.xml中:

        存在已经引入数据源

<!--
            加载jdbc.properties属性配置文件
-->
    <context:property-placeholder location="classpath:jdbc.properties"/>

<!--
            配置数据库连接池
-->
    <bean class="com.alibaba.druid.pool.DruidDataSource" id="dataSource">
        <property name="username" value="${user}"/>
        <property name="password" value="${password}"/>
        <property name="url" value="${url}"/>
        <property name="driverClassName" value="${driver}"/>
        <property name="initialSize" value="${initialSize}"/>
        <property name="maxActive" value="${maxActive}"/>
    </bean>

        而在进行事务管理器配置时配置语句如下

<bean class="org.springframework.jdbc.datasource.DataSourceTransactionManager" id="transactionManager">
    <property name="dataSource" value="dataSource"/>
</bean>

在property标签中引用的dataSource是以value标签引用,导致此处的数据源与整个spring中使用的数据源不一致,导致项目中无法加载applicationContext.xml文件。

解决结果:

        在进行事务管理器配置时配置中进行标签修改

<bean class="org.springframework.jdbc.datasource.DataSourceTransactionManager" id="transactionManager">
    <property name="dataSource" ref="dataSource"/>
</bean>

报错得以解决。

以上是本篇小节,不喜勿喷,感谢理解

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

java报错信息--Spring篇【1】 的相关文章

  • (Java) App Engine 中的静态文件无法访问

    The 示例文档 http code google com appengine docs java gettingstarted staticfiles html表示您只需将文件放在 war 或子目录 中 并且应该可以从主机访问它们 只要它
  • 如何将jscrollpane添加到jframe?

    我有以下源代码 有人可以给我建议如何将 jscrollpane 添加到 jframe 上吗 我尝试了几次将其添加到 jframe 但没有任何进展 它甚至没有显示 public class Form3 JFrame jframe new JF
  • 文本在指定长度后分割,但不要使用 grails 打断单词

    我有一个长字符串 需要将其解析为长度不超过 50 个字符的字符串数组 对我来说 棘手的部分是确保正则表达式找到 50 个字符之前的最后一个空格 以便在字符串之间进行彻底的分隔 因为我不希望单词被切断 public List
  • Logback:SizeAndTimeBasedRollingPolicy 不遵守totalSizeCap

    我正在尝试以一种方式管理我的日志记录 一旦达到总累积大小限制或达到最大历史记录限制 我最旧的存档日志文件就会被删除 当使用SizeAndTimeBasedRollingPolicy在 Logback 1 1 7 中 滚动文件追加器将继续创建
  • 如何在java Spring Boot中实现通用服务类?

    我有许多具有重复代码的服务 我想知道如何实现通用服务 以便我的所有服务都可以扩展它 服务接口示例 重复代码 Service public interface IUserService List
  • Spring数据中的本机查询连接

    我有课 Entity public class User Id Long id String name ManyToMany List
  • Java中的断点和逐步调试?

    抱歉我的问题名称很奇怪 我不知道如何寻找这个 因为我不知道这些东西是如何称呼的 Visual Studio 中至少有一个功能 您可以单击代码左侧并设置一个大红点的起点 然后运行程序 您可以通过按 f8 或 f5 实际上是不同的 f 来跟踪步
  • 是否可以从 servlet 内部以编程方式设置请求上下文路径?

    这是一个特殊情况 我陷入了处理 企业 网络应用程序的困境 企业应用程序正在调用request getContext 并将其与另一个字符串进行比较 我发现我可以使用 getServletContext getContextPath 获取 se
  • 从直方图计算平均值和百分位数?

    我编写了一个计时器 可以测量任何多线程应用程序中特定代码的性能 在下面的计时器中 它还会在地图中填充花费了 x 毫秒的调用次数 我将使用这张图作为我的直方图的一部分来进行进一步的分析 例如调用花费了这么多毫秒的百分比等等 public st
  • 虽然我的类已加载,但 Class.forName 抛出 ClassNotFoundException

    代码如下 它的作用是加载我放在主目录中的 jar 文件中的所有类 import java io File import java util jar JarFile import java util jar JarEntry import j
  • 将数据预加载到 GAE 开发服务器数据存储中的验收测试

    在我的应用程序中 我有一组 DAO 我将它们注入到我的应用程序层中 对于我正在编写的验收测试 我想用数据预加载 dev server 数据存储 因此我在 JUnit 测试中使用相同的 Spring 配置 使用 ContextConfigur
  • 如何从日期中删除毫秒、秒、分钟和小时[重复]

    这个问题在这里已经有答案了 我遇到了一个问题 我想比较两个日期 然而 我只想比较年 月 日 这就是我能想到的 private Date trim Date date Calendar calendar Calendar getInstanc
  • 我们如何测试包私有类?

    我正在看书Effective Java in Item 13 Minimize the accessibility of classes and members 它提到 为了方便测试 您可能想让类 接口或成员更易于访问 这在某种程度上是好的
  • 在 Clojure 中解压缩 zlib 流

    我有一个二进制文件 其内容由zlib compress在Python上 有没有一种简单的方法可以在Clojure中打开和解压缩它 import zlib import json with open data json zlib wb as
  • Lombok @Builder 不创建不可变对象?

    在很多网站上 我看到 lombok Builder 可以用来创建不可变的对象 https www baeldung com lombok builder singular https www baeldung com lombok buil
  • 如何处理 StaleElementReferenceException

    我正在为鼠标悬停工作 我想通过使用 for 循环单击每个链接来测试所有链接的工作条件 在我的程序中 迭代进行一次 而对于下一次迭代 它不起作用并显示 StaleElementReferenceException 如果需要 请修改代码 pub
  • Java 的 PriorityQueue 与最小堆有何不同?

    他们为什么命名PriorityQueue如果你不能插入优先级 它看起来与堆非常相似 有什么区别吗 如果没有区别那为什么叫它PriorityQueue而不是堆 默认的PriorityQueue是用Min Heap实现的 即栈顶元素是堆中最小的
  • 使用 JFreeChart 为两个系列设置不同的 y 轴

    我正在使用 JFreeChart 使用折线图绘制两个数据系列 XYSeries 复杂的因素是 其中一个数据系列的 y 值通常远高于第二个数据系列的 y 值 假设第一个系列的 y 值约为数百万数量级 而第二个数据系列的 y 值约为数百万数量级
  • 检查应用程序是否在 Android Market 上可用

    给定 Android 应用程序 ID 包名称 如何以编程方式检查该应用程序是否在 Android Market 上可用 例如 com rovio angrybirds 可用 而 com random app ibuilt 不可用 我计划从
  • 基于 Spring Boot 的测试中的上下文层次结构

    我的 Spring Boot 应用程序是这样启动的 new SpringApplicationBuilder sources ParentCtxConfig class child ChildFirstCtxConfig class sib

随机推荐

  • 公司阿里云服务器被暴力破解

    公司阿里云服务器被暴力破解 公司云服务器跑了3年了 从来没改过密码 而且基本所有服务器密码都是同一个 只把公司IP添加白名单了 确实不严谨 但至少限制了连接源 突然就收到阿里云短信提醒被暴力破解了 有了下面画面 查看攻击地址和登录来源都是公
  • C++ bind与回调函数

    1 回调函数 注册回调函数里可以使用functional来统一接口 可以传入函数指针 lambda bind等 函数1 2 为一个模块 为回调函数 函数3为一个模块 为注册回调函数 形参为函数指针 注册回调函数的入参为函数指针 指向回调函数
  • 开发实践

    0x00 前言简述 描述 最近在研究app自动化测试相关资料 正好最近喜欢上了耍快手以及抖音 头条 我突发奇想能否自动的刷视频而不需要我们动手指 我想懒人就是这样炼成的 我作为一名运开 想到我们可以使用adb工具加上PowerShell或者
  • 基于HAL库的STM32单定时器多路输入捕获测量PWM的频率和占空比实现(状态机方式实现)

    目录 写在前面 先回顾下定时器的单路捕获PWM 多路捕获PWM的频率和占空比 状态机实现 我的思路 状态图 配置 给出示例代码 测试效果 写在前面 先有了这篇文章实现了单定时器的多通道测量频率 以外部时钟的方式可测量任意频率的方波 奈何不能
  • UIImage加载本地图片资源

    图片读取 根据是否将创建好的对象缓存入系统内存 有两类创建UIImage 对象的方法可选 UIImage 缓存 imageNamed 只需传入文件名 扩展名 可选 即可 不缓存 imageWithContentsOfFile 必须传入文件的
  • vmware克隆Centos6 网卡无法启动

    原因是以下三处mac地址不一致 1 使用dmesg grep eth 获得eth编号和MAC地址 2 cat etc udev rules d 70 persistent net rules 3 cat etc sysconfig netw
  • 背包问题学习笔记-完全背包

    题意描述 有 N 种物品和一个容量是 V 的背包 每种物品都有无限件可用 第 i 种物品的体积是 vi 价值是 wi 求解将哪些物品装入背包 可使这些物品的总体积不超过背包容量 且总价值最大 输出最大价值 输入格式 第一行两个整数 N V
  • c语言规定简单的变量做实参时它和对应行参,C语言规定,简单变量做实参时,它和对应形参之间的数据传递方式是。...

    根据规范载体形式的不同法律 语言规应形可将渊源法律分为 简单间 变量年 平高比国外先进水油耗 一 规划种方编制的各法中 投入于 分析法属产出 根据可供对各地区的研节水究量和水量 规划需水可减我国的节量6通过亿m水措施约少年 0年到2 下7的
  • android MediaPlayer 中的JNI总结

    1 在android media MediaPlayer cpp 中 定义fields静态变量 里面有两个重要的成员变量 context 用来保存创建的mediaplayer post event 用来将JNI层的事件回调给JAVA层 实现
  • 关于使用IAR软件stlink下载stm8程序失败问题

    以前一直使用IAR很正常 这次使用使用stlink下载 stlink莫名其妙的就不能下载了 断电 重启 有时候能用 有时候真的就不能用了提示信息如下图 Failed to initialize communcation with hardw
  • Nginx 配置TCP代理转发

    Nginx 配置TCP代理转发 使用Nginx 新版的 stream方式 实现TCP UDP代理转发 在Nginx安装了 stream 模块后 修改nginx conf 在主配置文件下 nginx conf 增加 stream配置 如 ng
  • VUE 中Element-ui 添加滚动条

  • C/C++:02 1/2. 类和对象

    文章目录 前言 1 类的定义和对象的创建 类的定义 创建对象 访问类成员 使用对象指针 2 类的成员变量和成员函数 成员函数的定义 类体和类外定义成员函数的区别 3 C 类成员的访问权限以及类的封装 成员的访问限定 类的封装 6 C 构造函
  • c++20特性(模块)

    看了c 白皮书之后 发现c 20有了很大的改变 写下一些其中的内容 模块 export指令可以使代码可以被import到另一个模块中 import指令可以使从另一个模块export出来的代码能够被使用 import的实体不会被隐式的再exp
  • 支付平台--网联详解

    支付清算体系是一个国家的金融基础设施 或说是公共服务 而提供这一服务的机构是银联 而现在是银联和网联 现在我国大体维持 结算 清算 二级制的支付体系 通俗的说 银行与商户 消费者之间为结算关系 而银行之间构成清算关系 这两个层次完成后 支付
  • 训练大模型时显存占用影响因素总结(以starcoderplus 15.5B为例)

    背景 实验室计算资源紧张 单卡最大显存是RTX 3090 24G 但是又要用大模型 指参数量达到10B 做实验 模型文件获取 大约60B https huggingface co bigcode starcoderplus tree mai
  • 2. 2019年《斯坦福大学CS330多任务和元学习》第2讲:多任务和元学习基础【中文字幕】

    2019年 斯坦福大学CS330多任务和元学习 第2讲 多任务和元学习基础 中文字幕 https www bilibili com video BV17a4y1J7eG 斯坦福大学切尔西 芬恩 Chelsea Finn 助理教授 http
  • 微星b560m mortar wifi 开机二检(开机灭了1秒后自动重启)

    微星b560m mortar wifi 开机二检 开机灭了1秒后自动重启 1 起因 为了照顾旧CPU 还想把内存扩容到64GB 就选择了DDR4的4条插槽的 B560M主板 都弄好之后 开机发现在按下电源键之后 通电自检后断电了大概2秒左右
  • ESLint(JavaScript代码校验)

    概要 关于JavaScript的代码校验 2016年5月以来大家一直使用jswatchdog 2018年4月以后 从运维的角度上来说 我们更推荐使用ESLint 关于ESLint的设置 我们更推荐有利于kintone自定义开发的eslint
  • java报错信息--Spring篇【1】

    报错信息一 时间 学习spring的aop容器 xml形式配置aop功能 起因 测试xml形式配置好的aop功能 经过 在运行junit测试时出现以下报错信息 警告 Exception encountered during context