2013-10-26 3 views
-3

도움이 필요합니다, pls.java.lang.IllegalStateException : 타이머가 이미 취소 된

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 가까이

java.lang.IllegalStateException: Timer already cancelled. 

스택 추적 완료는 다음과 같습니다

나는 다음 오류를 받고 있어요 최대 절전 모드의 세시 노

대단히 감사는

나는

개미 제안 자바 1.7와 함께 글래스 피쉬 3.1.2에 응용 프로그램 자바를 실행하는거야?

+2

예외가 유효하다고 보입니다. 코드는 어디에 있습니까? –

+0

이것이 글래스 피시 JDBC 커넥터 코드의 버그라고 생각합니다. 취소 된 Timer는 해당 코드 내부에 있습니다. grepcode의 소스 코드가 제안한 바입니다. http://grepcode.com/file/maven.java.net/content/groups/promoted/org.glassfish.main.jdbc.jdbc-ra.jdbc-core/jdbc-core/4.0-b68/com/sun/ gjc/util/StatementLeakDetector.java/ –

+0

감사합니다. 전체 스택 추적 코드와 코드를 작성했습니다. – user2922863

답변

0

태양 jbdc 구현의 버그처럼 보입니다. 래퍼가 이미 실행을 완료했기 때문에 래스터가 타이머를 취소하려고 시도했는지는 확실하지 않지만 그 것처럼 보입니다. 어쩌면 당신은 Statement leaks를 확인하지 않도록 Glassfish를 설정할 수 있습니다.

관련 문제