2008-09-09 3 views
2

응용 프로그램이 시작될 때 오류가 발생합니다. 데이터베이스 연결이 초기화 된 것 같습니다. 스레드가 생성되기 시작했을 수도 있지만 의도적으로 발생할 수는 없습니다.JVMTI_ERROR_NULL_POINTER의 원인은 무엇입니까?

전체 오류 메시지는 다음과 같습니다 네이티브 메소드에
FATAL ERROR : JDWP NewGlobalRef이는 jvmtiError는 = JVMTI_ERROR_NULL_POINTER (100) JDWP 종료 오류 JVMTI_ERROR_NULL_POINTER (100) : NewGlobalRef

에릭슨 : 나는 매우 익숙하지 해요 내가에만이 오류 때 디버깅을 얻고 있었다 가능성 하지만 충분히 일치하지 않습니다 : 여기서 databaseName = FOO

톰 Hawtin의; // 로컬 호스트 : JDBC : SQLSERVER DB를 코드로, 그러나 희망이 문자열 도움이됩니다 내가 알아 차리면.

또한 여러 스레드에서 DB의 동일한 행을 업데이트하려고하는 버그가 수정되어 이후로 JVMTI ... 오류가 발생하지 않았습니다.

답변

3

JVMTI는 디버깅 및 프로파일 링 프로토콜입니다. 그래서, 당신이 당신의 응용 프로그램을 실행하려고하는 환경에 특유의 뭔가 같아요.

1

기본 코드 – 기반 데이터베이스 드라이버 (JDBC 드라이버 유형 1 또는 2)를 사용하고 있다고 생각합니다. 그리고 나는 그 운전자가 버그라고 생각합니다. 드라이버 및 데이터 소스 구성 또는 연결 문자열에 대한 자세한 정보를 제공 할 수 있으면 몇 가지 대답을 결정하는 데 도움이 될 수 있습니다.

0

저는 Tom과 함께이 디버거/JVMTI 에이전트가 NULL 값을 JVM에 전달하는 것처럼 보입니다. JVMTI 인터페이스를 통해 이 특정 오류는 응용 프로그램 코드에 문제가없는 것 같습니다.

관련 문제