编辑:我不是在问ClassCastException 是什么。我在问在 Spring 4/Hibernate 4 的这个特定配置下是什么导致它在 DetachedCriteria 中。
我正在尝试将一些遗留代码升级到 Spring 4/Hibernate 4,但我遇到了困难,因为 Google 的表现并不多。
我正在尝试在一个非常简单的 Hibernate 存储库上运行 JUnit 测试,但它失败了
java.lang.ClassCastException: com.sun.proxy.$Proxy36 cannot be cast to org.hibernate.engine.spi.SessionImplementor
at org.hibernate.criterion.DetachedCriteria.getExecutableCriteria(DetachedCriteria.java:84)
at com.my.app.rest.domain.repository.AbstractHibernateRepository$6.doInHibernate(AbstractHibernateRepository.java:163)
...
Run Code Online (Sandbox Code Playgroud)
这发生在 Hibernate 的org.hibernate.criterion.DetachedCriteria类中:
/**
* Get an executable instance of Criteria to actually run the query.
*
* @param session The session to associate the built Criteria with
*
* @return The "executable" Criteria
*/
public Criteria getExecutableCriteria(Session session) {
impl.setSession( (SessionImplementor) session );
return …Run Code Online (Sandbox Code Playgroud) 我有一个分区的 Spring Batch 作业,它读取多个分割的 CSV 文件并在各自的线程中处理每个文件,然后将结果写入相应的输出文件。
如果某个项目无法处理(抛出异常),我想将该结果写入错误文件。有没有办法添加可以处理此问题的编写器或侦听器?
更进一步,有没有一种方法可以按异常类型将其拆分并将不同的异常写入不同的文件?