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

带有bean的entityListener中的无限循环

闻鹤龄
2023-03-14

这对于注入存储库很有效,但是对于调用任何存储库的任何函数,请返回AutoWireHelper.AutoWire行。

这是我的代码,EntityListener执行autowireHelper.autowire,当涉及到“find”方法时,返回到autowire行:

public class AuditListener {

    @Inject
    private UserRepository userRepository;

    @Inject
    private ConfigurationRepository configurationRepository;

    @PreUpdate
    public void preUpdate(Object object) {
        //TODO: pre update
        AutowireHelper.autowire(this, this.userRepository, this.configurationRepository);

        //I need get bbdd entities
        List<Configuracion> config = this.configurationRepository.findAll();

        Foo foo = (Foo) object;
        System.out.println("Foo updated: " + foo.getId());
    }
}

我的错误:

无法提交JPA事务;嵌套异常为javax.persistence.RollbackException:提交事务时出错12:43:25,291信息[stdout](http-/0.0.0.0:8080-1)在Sun.Reflect.NativeMethodAccessorInvoke0(本机方法)12:43:25,291信息[stdout](http-/0.0.0.0:8080-1)在Sun.Reflect.NativeMethodAccessorInvoke(nativeMethodAccessorInvoke:57)12:43:25,291信息[stdout](http-/0.0.0.0:8080-1)在nNotation.ServletInvoCableHandlerMethod.InvokeAndHandle(ServletInvoCableHandlerMethod.java:110)12:43:25,291 INFO[stdout](http-/0.0.0.0:8080-1)在org.springframework.web.servlet.mvc.method.annotation.ExceptionHandlerExceptionResolver.DoResolveHandlerMethodException(ExceptionHandlerExceptionResolver.java:362)

全跟踪:

共有1个答案

安高义
2023-03-14
AuditListener.preUpdate
this.configurationRepository.findAll()
org.springframework.data.jpa.repository.support.SimpleJpaRepository.findAll

4-在提取元素并从存储库返回之后,这次hibernate尝试flush元素,您可以在堆栈中再次看到它:

org.hibernate.internal.SessionImpl.autoFlushIfRequired(SessionImpl.java:1166)
 类似资料:
  • 在使用MapStruct、Lombock和Spring时,我在Tomcat 9中的应用程序部署中遇到以下错误: 我的spring配置类在包层次结构的根目录中设置包扫描。映射器的实现也是在target/generated-sources下生成的: 我的错误表明Spring找不到实现类,我遗漏了什么?我试图将generated-sources文件夹添加到构建路径并将其包含在包扫描中,但没有成功。

  • 我想在保存或更新实体时进行复杂的验证。例如,我想检查实体的属性是否唯一,但通过复杂的条件,我无法在唯一约束中声明。 我对新实体使用@PrePersist,对现有实体使用@Pre/postapdate@PrePersist在所有情况下都运行良好,但在更新现有实体时会出现不同的错误。如果我将CRUD服务注入监听器,并根据属性值检查是否存在任何现有记录,我会得到堆栈溢出异常——我认为这是因为每次调用CR

  • 问题内容: 请看下面的Java 无限循环。它导致其下面的语句的编译时错误。 以下相同的无限循环可正常工作,并且不会发出任何错误,其中我只是用布尔变量替换了条件。 同样在第二种情况下,循环之后的语句显然不可访问,因为布尔变量为true,但编译器根本没有抱怨。为什么? 编辑:显然,以下版本的卡在无限循环中,但是即使循环中的条件始终存在,因此循环下面的语句也不会对该语句下的语句发出任何编译器错误,因此循

  • 问题内容: 我一直在使用React 16.7-alpha中的新钩子系统,并且当我正在处理的状态是对象或数组时陷入useEffect的无限循环中。 首先,我使用useState并使用一个空对象启动它,如下所示: 然后,在useEffect中,我再次使用setObj将其设置为空对象。作为第二个参数,我传递了[obj],希望如果对象的 内容 没有更改,它也不会更新。但是它一直在更新。我猜是因为不管内容如

  • 问题内容: 我正在使用第三方库来处理大量数据集。该过程偶尔会陷入无限循环(或被阻塞- 不知道为什么并且无法进入代码)。我想在设定的时间后消除这个问题,然后继续处理下一个案件。一个简单的例子是: processData通常最多需要1秒。我想设置一个计时器,该计时器在10秒后杀死processData() 编辑我将不胜感激代码片段(我没有在使用Thread的过程中练习过)。执行器方法看起来很有用,但我

  • 正如使用boto3完全扫描dynamoDb中所解释的,我构建了一个解决方案,使用某些条件完全扫描dynamoDb表。这是我的代码: 但是当代码被执行时,它会进入一个无限循环。这是LastEvaluatedKey每次迭代的输出: 它一直在这两对之间循环。 编辑: 我添加了do_scan方法。