-2

我需要帮助,请。

我收到下一个错误:

java.lang.IllegalStateException: Timer already cancelled.

堆栈跟踪完成是:

java.util.Timer.sched(Timer.java:397)
java.util.Timer.schedule(Timer.java:193)
com.sun.gjc.util.StatementLeakDetector.startStatementLeakTracing(StatementLeakDetector.java:129)
com.sun.gjc.spi.base.PreparedStatementWrapper.(PreparedStatementWrapper.java:107)
com.sun.gjc.spi.jdbc40.PreparedStatementWrapper40.(PreparedStatementWrapper40.java:64)
negocio.DAO.mfPersonas.PersonaInstitucionalDAO.obtenerPorId(PersonaInstitucionalDAO.java:30)
negocio.services.impl.PersonaInstitucionalServiceImpl.obtenerPorId(PersonaInstitucionalServiceImpl.java:28)
PortalHC.action.login.ActionRegistrarArea.action(ActionRegistrarArea.java:56)
PortalHC.action.ActionBase.execute(ActionBase.java:130)
negocio.DAO.Hibernation.doFilter(Hibernation.java:135)

我在 PersonaInstitucionalDAO 中的代码是:

public static PersonaInstitucional obtenerPorId(Long idPersonaInstitucional) {
            return (PersonaInstitucional) Hibernation.getSession().get(PersonaInstitucional.class, idPersonaInstitucional);
}

而我的休眠doFilter关闭了休眠的sessino

非常感谢,

我正在使用 Java 1.7 在 glassfish 3.1.2 上运行应用程序 Java

蚂蚁建议?

4

1 回答 1

0

它看起来像是 sun jbdc 实现的一个错误。目前尚不清楚包装器是否因为已经完成执行而试图取消计时器,但看起来确实如此。也许您可以尝试配置 Glassfish,使其不检查语句泄漏。

于 2013-10-26T22:46:51.587 回答