【发布时间】:2012-04-10 10:37:49
【问题描述】:
我正在使用 GlassFish 3.1.2 服务器,并且我的 Web 应用程序使用 EclipseLink 3.1.2 作为 JPA 提供程序。 GlassFish 在本地运行,MySQL 服务器在远程。
问题是,当我启动服务器时,服务器挂了很长时间,日志中的最后一行是以下行。
[#|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 告诉我更多关于它在等待什么的信息?
更新:
这是我的 persistence.xml 文件——没什么了不起的。是否有 EclipseLink 特定的命令可以提供帮助?
<?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>
【问题讨论】:
-
最后记录的行之前延迟一定不是原因。也许日志条目在延迟之后是原因。