Olá pessoal,
alguem sabe como restaurar uma conexão do banco de dados via hibernate, caso a mesma tenha se perdido, por algum motivo qualquer? Estou usando sqlserver.
Grato
Restaurar conexão hibernate
G
4 Respostas
D
kra vc pode usar um pool de conexao como o c3p0.
G
Fala dkenji,
ja estava vendo o C3PO, fiz as inclusões das dependencias, porém esta dando uma dependencia que aparentemente terei problemas,
java.lang.NoClassDefFoundError: java/sql/NClob
em que pelo o que pesquisei, esta classe esta presente na jdk 1.6, e eu uso atualmente a jdk 5.
Segue as minhas configurações
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE hibernate-configuration PUBLIC "-//Hibernate/Hibernate Configuration DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">
<hibernate-configuration>
<session-factory name="">
<!-- JDBC connection settings -->
<property name="connection.driver_class">net.sourceforge.jtds.jdbc.Driver</property>
<property name="connection.url">...</property>
<property name="connection.username">...</property>
<property name="connection.password">...</property>
<!-- JDBC connection pool, use Hibernate internal connection pool -->
<!-- <property name="connection.pool_size">5</property>-->
<!-- Defines the SQL dialect used in Hiberante's application -->
<property name="dialect">org.hibernate.dialect.SQLServerDialect</property>
<!-- Enable Hibernate's automatic session context management -->
<property name="current_session_context_class">thread</property>
<!-- Disable the second-level cache -->
<property name="cache.provider_class">org.hibernate.cache.NoCacheProvider</property>
<!-- Display and format all executed SQL to stdout -->
<property name="show_sql">true</property>
<property name="format_sql">true</property>
<property name="hibernate.c3p0.acquire_increment">1</property>
<property name="hibernate.c3p0.idle_test_period">100</property> <!-- seconds -->
<property name="hibernate.c3p0.max_size">100</property>
<property name="hibernate.c3p0.max_statements">0</property>
<property name="hibernate.c3p0.min_size">10</property>
<property name="hibernate.c3p0.timeout">100</property> <!-- seconds -->
<property name="hibernate.c3p0.idle_test_period">300</property>
<mapping class="..."/>
</session-factory>
</hibernate-configuration>
Alguem tem alguma ideia?
G
Segue mensagem de erro:
10:59:46,842 INFO [C3P0Registry] Initializing c3p0-0.9.1.2 [built 21-May-2007 15:04:56; debug? true; trace: 10]
10:59:46,952 INFO [AbstractPoolBackedDataSource] Initializing c3p0 pool... com.mchange.v2.c3p0.PoolBackedDataSource@a04f71c6 [ connectionPoolDataSource -> com.mchange.v2.c3p0.WrapperConnectionPoolDataSource@c6b636cc [ acquireIncrement -> 1, acquireRetryAttempts -> 30, acquireRetryDelay -> 1000, autoCommitOnClose -> false, automaticTestTable -> null, breakAfterAcquireFailure -> false, checkoutTimeout -> 0, connectionCustomizerClassName -> null, connectionTesterClassName -> com.mchange.v2.c3p0.impl.DefaultConnectionTester, debugUnreturnedConnectionStackTraces -> false, factoryClassLocation -> null, forceIgnoreUnresolvedTransactions -> false, identityToken -> 2ryvlr8h1cig470qn9xym|42751f, idleConnectionTestPeriod -> 300, initialPoolSize -> 10, maxAdministrativeTaskTime -> 0, maxConnectionAge -> 0, maxIdleTime -> 100, maxIdleTimeExcessConnections -> 0, maxPoolSize -> 100, maxStatements -> 0, maxStatementsPerConnection -> 0, minPoolSize -> 10, nestedDataSource -> com.mchange.v2.c3p0.DriverManagerDataSource@a47a6980 [ description -> null, driverClass -> null, factoryClassLocation -> null, identityToken -> 2ryvlr8h1cig470qn9xym|188045a, jdbcUrl -> ..., properties -> {user=******, password=******} ], preferredTestQuery -> SELECT 1;, propertyCycle -> 0, testConnectionOnCheckin -> false, testConnectionOnCheckout -> false, unreturnedConnectionTimeout -> 0, usesTraditionalReflectiveProxies -> false; userOverrides: {} ], dataSourceName -> null, factoryClassLocation -> null, identityToken -> 2ryvlr8h1cig470qn9xym|19ce8f3, numHelperThreads -> 3 ]
10:59:51,733 ERROR [STDERR] Exception in thread "com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread-#0"
10:59:51,733 ERROR [STDERR] java.lang.NoClassDefFoundError: java/sql/NClob
10:59:51,733 ERROR [STDERR] at java.lang.Class.getDeclaredMethods0(Native Method)
10:59:51,733 ERROR [STDERR] at java.lang.Class.privateGetDeclaredMethods(Class.java:2395)
10:59:51,733 ERROR [STDERR] at java.lang.Class.getMethod0(Class.java:2642)
10:59:51,733 ERROR [STDERR] at java.lang.Class.getMethod0(Class.java:2651)
10:59:51,733 ERROR [STDERR] at java.lang.Class.getMethod(Class.java:1579)
10:59:51,733 ERROR [STDERR] at com.mchange.v2.c3p0.impl.C3P0ImplUtils.supportsMethod(C3P0ImplUtils.java:309)
10:59:51,733 ERROR [STDERR] at com.mchange.v2.c3p0.impl.NewPooledConnection.<init>(NewPooledConnection.java:104)
10:59:51,733 ERROR [STDERR] at com.mchange.v2.c3p0.WrapperConnectionPoolDataSource.getPooledConnection(WrapperConnectionPoolDataSource.java:198)
10:59:51,733 ERROR [STDERR] at com.mchange.v2.c3p0.WrapperConnectionPoolDataSource.getPooledConnection(WrapperConnectionPoolDataSource.java:171)
10:59:51,733 ERROR [STDERR] at com.mchange.v2.c3p0.impl.C3P0PooledConnectionPool$1PooledConnectionResourcePoolManager.acquireResource(C3P0PooledConnectionPool.java:137)
10:59:51,733 ERROR [STDERR] at com.mchange.v2.resourcepool.BasicResourcePool.doAcquire(BasicResourcePool.java:1014)
10:59:51,733 ERROR [STDERR] at com.mchange.v2.resourcepool.BasicResourcePool.access$800(BasicResourcePool.java:32)
10:59:51,733 ERROR [STDERR] at com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask.run(BasicResourcePool.java:1810)
10:59:51,733 ERROR [STDERR] at com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread.run(ThreadPoolAsynchronousRunner.java:547)
10:59:51,951 ERROR [STDERR] Exception in thread "com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread-#2"
10:59:51,951 ERROR [STDERR] java.lang.NoClassDefFoundError: java/sql/NClob
10:59:51,951 ERROR [STDERR] at java.lang.Class.getDeclaredMethods0(Native Method)
10:59:51,951 ERROR [STDERR] at java.lang.Class.privateGetDeclaredMethods(Class.java:2395)
10:59:51,951 ERROR [STDERR] at java.lang.Class.getMethod0(Class.java:2642)
10:59:51,951 ERROR [STDERR] at java.lang.Class.getMethod0(Class.java:2651)
10:59:51,951 ERROR [STDERR] at java.lang.Class.getMethod(Class.java:1579)
10:59:51,951 ERROR [STDERR] at com.mchange.v2.c3p0.impl.C3P0ImplUtils.supportsMethod(C3P0ImplUtils.java:309)
10:59:51,951 ERROR [STDERR] at com.mchange.v2.c3p0.impl.NewPooledConnection.<init>(NewPooledConnection.java:104)
10:59:51,951 ERROR [STDERR] at com.mchange.v2.c3p0.WrapperConnectionPoolDataSource.getPooledConnection(WrapperConnectionPoolDataSource.java:198)
10:59:51,951 ERROR [STDERR] at com.mchange.v2.c3p0.WrapperConnectionPoolDataSource.getPooledConnection(WrapperConnectionPoolDataSource.java:171)
10:59:51,951 ERROR [STDERR] at com.mchange.v2.c3p0.impl.C3P0PooledConnectionPool$1PooledConnectionResourcePoolManager.acquireResource(C3P0PooledConnectionPool.java:137)
10:59:51,951 ERROR [STDERR] at com.mchange.v2.resourcepool.BasicResourcePool.doAcquire(BasicResourcePool.java:1014)
10:59:51,951 ERROR [STDERR] at com.mchange.v2.resourcepool.BasicResourcePool.access$800(BasicResourcePool.java:32)
10:59:51,951 ERROR [STDERR] at com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask.run(BasicResourcePool.java:1810)
10:59:51,951 ERROR [STDERR] at com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread.run(ThreadPoolAsynchronousRunner.java:547)
10:59:52,155 ERROR [STDERR] Exception in thread "com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread-#1"
10:59:52,155 ERROR [STDERR] java.lang.NoClassDefFoundError: java/sql/NClob
10:59:52,155 ERROR [STDERR] at java.lang.Class.getDeclaredMethods0(Native Method)
10:59:52,155 ERROR [STDERR] at java.lang.Class.privateGetDeclaredMethods(Class.java:2395)
10:59:52,155 ERROR [STDERR] at java.lang.Class.getMethod0(Class.java:2642)
10:59:52,155 ERROR [STDERR] at java.lang.Class.getMethod0(Class.java:2651)
10:59:52,155 ERROR [STDERR] at java.lang.Class.getMethod(Class.java:1579)
10:59:52,155 ERROR [STDERR] at com.mchange.v2.c3p0.impl.C3P0ImplUtils.supportsMethod(C3P0ImplUtils.java:309)
10:59:52,155 ERROR [STDERR] at com.mchange.v2.c3p0.impl.NewPooledConnection.<init>(NewPooledConnection.java:104)
10:59:52,155 ERROR [STDERR] at com.mchange.v2.c3p0.WrapperConnectionPoolDataSource.getPooledConnection(WrapperConnectionPoolDataSource.java:198)
10:59:52,155 ERROR [STDERR] at com.mchange.v2.c3p0.WrapperConnectionPoolDataSource.getPooledConnection(WrapperConnectionPoolDataSource.java:171)
10:59:52,155 ERROR [STDERR] at com.mchange.v2.c3p0.impl.C3P0PooledConnectionPool$1PooledConnectionResourcePoolManager.acquireResource(C3P0PooledConnectionPool.java:137)
10:59:52,155 ERROR [STDERR] at com.mchange.v2.resourcepool.BasicResourcePool.doAcquire(BasicResourcePool.java:1014)
10:59:52,155 ERROR [STDERR] at com.mchange.v2.resourcepool.BasicResourcePool.access$800(BasicResourcePool.java:32)
10:59:52,155 ERROR [STDERR] at com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask.run(BasicResourcePool.java:1810)
10:59:52,155 ERROR [STDERR] at com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread.run(ThreadPoolAsynchronousRunner.java:547)
11:00:06,982 WARN [ThreadPoolAsynchronousRunner] com.mchange.v2.async.ThreadPoolAsynchronousRunner$DeadlockDetector@12bc418 -- APPARENT DEADLOCK!!! Creating emergency threads for unassigned pending tasks!
11:00:06,982 WARN [ThreadPoolAsynchronousRunner] com.mchange.v2.async.ThreadPoolAsynchronousRunner$DeadlockDetector@12bc418 -- APPARENT DEADLOCK!!! Complete Status:
Managed Threads: 3
Active Threads: 0
Active Tasks:
Pending Tasks:
com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@bcd14a
com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@507aaf
com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@1a685ae
com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@19297ab
com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@1238fa5
com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@1abd8cb
com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@1262671
Pool thread stack traces:
Thread[com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread-#2,5,]
Thread[com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread-#1,5,]
Thread[com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread-#0,5,]
11:01:37,057 WARN [ThreadPoolAsynchronousRunner] com.mchange.v2.async.ThreadPoolAsynchronousRunner$DeadlockDetector@12bc418 -- APPARENT DEADLOCK!!! Creating emergency threads for unassigned pending tasks!
11:01:37,057 WARN [ThreadPoolAsynchronousRunner] com.mchange.v2.async.ThreadPoolAsynchronousRunner$DeadlockDetector@12bc418 -- APPARENT DEADLOCK!!! Complete Status:
Managed Threads: 3
Active Threads: 0
Active Tasks:
Pending Tasks:
com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@11c227e
com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@1ca1a4
com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@1b833ca
com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@502a39
com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@10410a7
com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@1e16028
com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@170196d
Pool thread stack traces:
Thread[com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread-#2,5,jboss]
com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread.run(ThreadPoolAsynchronousRunner.java:569)
Thread[com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread-#0,5,jboss]
com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread.run(ThreadPoolAsynchronousRunner.java:569)
Thread[com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread-#1,5,jboss]
com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread.run(ThreadPoolAsynchronousRunner.java:569)
G
Pessoal,
descobri. Para quem interessar, estava usando o driver jtds-1.2.4.jar do sql server e quando coloquei o jtds-1.2.jar, o erro se foi.
http://sourceforge.net/projects/jtds/files/jtds/1.2/jtds-1.2-dist.zip/download
[]s
Criado 9 de agosto de 2011
Ultima resposta 9 de ago. de 2011
Respostas 4
Participantes 2