2012-03-26 3 views
1

GlassFish 3.1.2 서버를 사용하고 있으며 웹 응용 프로그램은 JPA 공급자로 EclipseLink 3.1.2를 사용합니다. GlassFish는 로컬에서 실행되고 MySQL 서버는 원격입니다.EclipseLink 연결 지연 진단?

문제는 서버를 시작할 때 서버가 오랫동안 멈추고 다음 줄이 로그의 마지막 항목으로 사용된다는 것입니다.

[#|2012-03-26T14:37:31.765-0700|INFO|glassfish3.1.2|org.eclipse.persistence.session.file:/Users/alan/NetBeansProjects/MyApp/target/MyApp/WEB-INF/classes/_com.myapp|_ThreadID=10;_ThreadName=Thread-3;|EclipseLink, version: Eclipse Persistence Services - 2.3.2.v20111125-r10461|#] 

여기에서 2-3 분 동안 기다린 후에는 일반적으로 모든 것이 정상적인대로 계속 작동합니다. 내 웹 응용 프로그램은 예상대로 데이터베이스와 함께 작동합니다.

NetBeans가 서버를 시작하려고하면 시작이 실패했다고 생각하여 대부분 시간 초과됩니다. asadmin 명령을 사용하여 도메인을 시작하면 동일한 시간이 소요되지만 성공합니다.

나는 집에서 동일한 시스템을 사용하며,이 시스템은 동일한 MySQL 서버에 연결하지 않습니다.

그래서 EclipseLink가 기다리는 것에 대해 더 알려주려면 어떻게해야합니까?

UPDATE :

가 여기 내 persistence.xml 파일입니다 - 놀라운 아무것도. 도움이 될 수있는 EclipseLink 전용 명령이 있습니까? 당신이 창에 죽 또는 Ctrl 휴식을 실행하면 당신이 기다리고 무엇을 볼 수 있도록

<?xml version="1.0" encoding="UTF-8"?> 
<persistence version="2.0" xmlns="http://java.sun.com/xml/ns/persistence" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/persistence http://java.sun.com/xml/ns/persistence/persistence_2_0.xsd"> 
<persistence-unit name="com.myapp" transaction-type="JTA"> 
    <jta-data-source>jdbc/MyApp</jta-data-source> 
    <exclude-unlisted-classes>false</exclude-unlisted-classes> 
</persistence-unit> 

+0

마지막으로 기록 된 줄 _before_ 지연이 원인이되어서는 안됩니다. 어쩌면 로그 항목 _ 지연이 원인입니다. –

답변

1

는, 자바는 현재 스레드를 덤프합니다. 또는 디버거에서 스레드를 일시 중지하십시오.

persistence.xml을 포함하십시오. 연결 풀의 크기를 확인하고 네트워크가 데이터베이스에 올바르게 액세스 할 수 있는지 확인하십시오. jar 파일에 몇 개의 클래스가 있습니까? 수업을 짜거나 나열하지 못하게하려고 했습니까?

+0

덧글 추가. 나는 Windows를 사용하지 않지만 MacOS는 내가 쓰레드 덤프를 얻을 수 있는지를 알 수있는 신호를 보내도록 허용 할 것이다. 제안 해 주셔서 감사합니다. – AlanObject