$Proxy25 无法转换为我的类 Spring 框架

2023-12-26

我在运行测试时遇到此异常(我正在尝试在 spring 中配置 aop):

java.lang.ClassCastException: $Proxy25 cannot be cast to path.UserDao
    at com.playence.app.daoTests.TestCreateOntologyDB.testGenerateGlobalAnnotation(TestCreateOntologyDB.java:49)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:597)
    at org.junit.internal.runners.TestMethod.invoke(TestMethod.java:59)
    at org.junit.internal.runners.MethodRoadie.runTestMethod(MethodRoadie.java:98)
    at org.junit.internal.runners.MethodRoadie$2.run(MethodRoadie.java:79)
    at org.junit.internal.runners.MethodRoadie.runBeforesThenTestThenAfters(MethodRoadie.java:87)
    at org.junit.internal.runners.MethodRoadie.runTest(MethodRoadie.java:77)
    at org.junit.internal.runners.MethodRoadie.run(MethodRoadie.java:42)
    at org.junit.internal.runners.JUnit4ClassRunner.invokeTestMethod(JUnit4ClassRunner.java:88)
    at org.junit.internal.runners.JUnit4ClassRunner.runMethods(JUnit4ClassRunner.java:51)
    at org.junit.internal.runners.JUnit4ClassRunner$1.run(JUnit4ClassRunner.java:44)
    at org.junit.internal.runners.ClassRoadie.runUnprotected(ClassRoadie.java:27)
    at org.junit.internal.runners.ClassRoadie.runProtected(ClassRoadie.java:37)
    at org.junit.internal.runners.JUnit4ClassRunner.run(JUnit4ClassRunner.java:42)
    at org.eclipse.jdt.internal.junit4.runner.JUnit4TestReference.run(JUnit4TestReference.java:49)
    at org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38)
    at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:467)
    at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:683)
    at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:390)
    at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:197)   

UserDao.java

public class UserDao extends AbstractHibernateDAOSupport {

    public UserDao() {
        super();
    }

    /**
     * Insert a new User into the database.
     * 
     * @param user
     */
    public void store(User user) throws DataAccessLayerException {
        super.save(user);
    }

    /**
     * Delete a User from the database.
     * 
     * @param user
     */
    public void delete(User user) throws DataAccessLayerException {
        super.delete(user);
    }

    /**
     * Updates the state of a detached User.
     * 
     * @param user
     */
    public void update(User user) throws DataAccessLayerException {
        super.update(user);
    }

    public User findByID(String id) throws DataAccessLayerException {
        return (User) this.find(User.class, id);

    }

    /**
     * Finds all Users in the database.
     * 
     * @return
     */
    public List findAll() throws DataAccessLayerException {
        return super.findAll(User.class);
    }

弹簧配置文件:applicationContext-dao.xml

<bean id="userDao" class="path.UserDao">
        <property name="sessionFactory">
            <ref bean="sessionFactory" />
        </property>
    </bean>

TestCreateOntologyDB.java

....  
ApplicationContext ctx ;

    public TestCreateOntologyDB() {
        ctx = new ClassPathXmlApplicationContext("/applicationContext.xml");
    }

    @Test
    public void testGenerateGlobalAnnotation(){
        UserDao userDao = (UserDao)ctx.getBean("userDao");

...

而且我没有在任何其他配置文件中设置任何 UserDao 附加属性。可能是什么错误?任何帮助,将不胜感激。提前致谢


最后我找到了解决方案:

  1. 为将使用aop的类创建接口
  2. 在 spring 配置文件中编辑正确路径:

  3. 在同一配置文件中添加此行。请注意,在我的情况下,它将影响所有豆子,但它可以只影响一种豆子。

整个主题都在这里http://forum.springsource.org/showthread.php?p=357883 http://forum.springsource.org/showthread.php?p=357883

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

$Proxy25 无法转换为我的类 Spring 框架 的相关文章

随机推荐

  • 我们什么时候可以在 C++11 lambda 中省略返回类型?

    据我所知know http en cppreference com w cpp language lambda 在标准 C 11 中 不是 C 14 当省略 lambda 的返回类型时 其返回类型推导为 当 lambda 仅包含带有表达式的
  • Cordova Android 升级 - 找不到模块“lodash/object/assign”错误

    我已经使用 gradle 构建了 Cordova 版本 2 9 Android 应用程序 现在我想使用升级 cordovacordova平台更新android命令但始终给我以下错误 找不到模块 lodash object assign 错误
  • 根据文本长度动态改变字体大小

    我需要将用户输入的文本显示到固定大小的 div 中 我想要的是自动调整字体大小 以便文本尽可能填充框 我可能想从最大字体大小开始 虽然文本太大而无法容纳容器 但缩小字体大小直到适合并且字体必须显示为单行 假设你有这个 div style w
  • 使用 PyMUPDF 使用标志提取文本以重点关注粗体/斜体字体

    我正在尝试使用 PyMUPDF 1 18 14 从 PDF 中提取粗体文本元素 我希望这能按照我从文档中了解到的那样起作用flags 4目标为粗体字体 page doc 1 text page get text flags 4 print
  • 在Android中向ImageView添加文本

    我想用一个ImageView以一种奇特的方式显示一些信息 如何将文本添加到ImageView 添加文本到您的ImageView你可以这样做
  • 重命名后以编程方式在编辑器中打开文件

    我正在导出一个文件 在导出时 我正在重命名现有文件并创建一个新文件 如果现有文件在 Eclipse 中打开 它将从中关闭 我必须再次手动打开该文件 如何以编程方式打开重命名后打开编辑器的文件 这应该有帮助 IFile file IEdito
  • 将列值分组在一起

    我有一个像这样的数据框 Class price demand 1 22 8 1 60 7 3 32 14 2 72 9 4 45 20 5 42 25 我想做的是将 1 3 班分组为一个类别 将 4 5 班分组为一个类别 然后我想获得每个类
  • NUnit 中可以自定义过滤器吗?

    是否可以定义一个自定义过滤器 以便 NUnit 只运行特定的测试 我的许多 Nunit 测试都标有自定义属性 BugId 是否可以编写一个过滤器 以便我可以传入一个数字并仅使用该属性和数字运行测试 如果是这样 请显示模型或真实代码 过滤器是
  • 如何将 numpy 数组呈现到 pygame 表面?

    我正在编写一段代码 其中一部分是读取图像源并将其显示在屏幕上以供用户交互 我还需要锐化的图像数据 我使用以下方法读取数据并将其显示在pyGame def image and sharpen array file name read the
  • 如何让 XSL 中的 javascript for 循环中的 less 起作用?

    我正在使用 CDATA 来转义脚本 但在 IE8 的调试器中 我仍然收到此消息 在 for 循环条件中 预期 我假设它仍然认为 在里面 lt CDATA 生成的是结束循环条件 我的 XSL 模板中的原始脚本
  • 通过 Terraform 创建 Azure Windows VM

    在 Azure 中 我尝试使用 Terraform 创建 Windows VM 我之前已经使用 Template json 文件通过 Powershell 完成了此操作 现在我要处理 terraform 我对它完全陌生 所以我搜索了一些在A
  • 是否可以使用 php 或 javascript 获取硬件信息?

    是否可以使用 php 脚本获取硬件详细信息 是否可以通过 php 脚本检查笔式驱动器或其他设备是否连接到电脑 因此 当用户加载网页时 它应该显示 Pendrive 已连接到您的计算机 是否可以 请参阅此链接 它是如何工作的 http lin
  • 创建 Excel SUMIF 函数的 R 版本,可用于测量连续在多个数据集上运行的模型的性能

    首先 这个问题是一个后续问题最近的问题 https stackoverflow com questions 74956321 creating the equivalent of a sumif function in excel 7495
  • 如何为 JSON 主体创建自定义绑定器?

    我正在使用 play 框架 我想为来自 POST 方法的 JSON 创建一个自定义绑定器 我试图用 Global TypeBinder 来做到这一点 但这似乎只适用于形式编码的情况 我正在挖掘 Binder java 它似乎没有考虑用于绑定
  • 在 Tesseract 中识别数字时遇到问题 - android

    我希望有人能告诉我为什么我的 Tesseract 无法识别一些带有数字的图像 以及我是否可以对此做些什么 一切都根据测试工作 并且由于它只是我需要的数字 我认为我可以使用英文模式进行管理 直到我也必须从 7 段显示开始 虽然我在附加图像方面
  • INSERT ON CONFLICT DO NOTHING 和 SELECT 之间的竞争条件

    Does a SELECT查询以下INSERT ON CONFLICT DO NOTHING给定默认事务隔离 读已提交 的情况下 语句总是找到一行 我想要INSERT or SELECT一个表中的一行 然后在第二个表中插入行时引用该行 自从
  • 使用glide库进行图像灰度化

    我正在使用 glide 库在图像视图中加载图像 url Glide with context load imageurl apply RequestOptions circleCropTransform into holder thumbn
  • Mysqli 准备语句破坏了图像插入数据库

    我有一个 sql 语句工作正常 直到我尝试将其更改为 sql 准备好的语句 这是旧的插入 sql INSERT INTO items seller post date expiration date image description na
  • Bootstrap 下拉菜单:删除滚动条

    我正在以下工作GitHub Repo https github com patreu22 Twittex 当窗口宽度减小时 导航栏会折叠并更改为带有滚动条 宽度和高度 的下拉菜单 我怎样才能删除这些滚动条 我尝试添加 navbar coll
  • $Proxy25 无法转换为我的类 Spring 框架

    我在运行测试时遇到此异常 我正在尝试在 spring 中配置 aop java lang ClassCastException Proxy25 cannot be cast to path UserDao at com playence a