gpt4 book ai didi

java - GlassFish Server 部署和 MySQLNonTransientConnectionException

转载 作者:行者123 更新时间:2023-11-29 09:02:18 24 4
gpt4 key购买 nike

当我部署我的应用程序时,过了一会儿我得到了这个异常:

    javax.servlet.ServletException: Exception [EclipseLink-4002] (Eclipse Persistence Services - 2.3.2.v20111125-r10461): org.eclipse.persistence.exceptions.DatabaseException
Internal Exception: com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException: No operations allowed after connection closed.

我正在使用持久性单元,具有以下设置:

    <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="PU" transaction-type="JTA">
<provider>org.eclipse.persistence.jpa.PersistenceProvider</provider>
<jta-data-source>myconnhere</jta-data-source>
<exclude-unlisted-classes>false</exclude-unlisted-classes>
<shared-cache-mode>NONE</shared-cache-mode>
<properties>
<property name="eclipselink.ddl-generation" value="create-tables"/>
<property name="autoReconnect" value="true"/>
</properties>
</persistence-unit>
</persistence>

我怎样才能避免/解决这个问题?这是 Java 问题还是 MySQL 配置问题?

我添加了 <property name="autoReconnect" value="true"/>在 JPA.xml 中——正如我在 SO 上发现的那样。但是,这并不能解决问题。我还在 GlassFish (3.1.2) 管理中删除了连接池超时(设置为 0)。

最佳答案

这是一个驱动程序参数,因此您必须修改 GlassFish 连接池中的 URL。在管理 UI 中:Resources -> JDBC -> JDBC Connection Pools -> Your Pool -> Additional Properties。

另一个选项是在“高级”选项卡中启用连接验证。

关于java - GlassFish Server 部署和 MySQLNonTransientConnectionException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16650454/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com