Hi,
I am using Hibernate 3.5 and have code that queries a table using session.createSQLQuery. When I run the code I get a lockacquisition exception. The stacktrace is as follows:
Code:
e:\OracleMW\Middleware\jdk160_18\bin\javaw.exe -client -classpath C:\JDeveloper\mywork\SRF\.adf;C:\JDeveloper\mywork\SRF\srfproj\classes;E:\OracleMW\Middleware\modules\javax.servlet_1.0.0.0_2-5.jar;E:\OracleMW\Middleware\modules\javax.jsp_1.1.0.0_2-1.jar;E:\OracleMW\Middleware\modules\glassfish.el_2.2.0.jar;E:\OracleMW\Middleware\oracle_common\modules\oracle.jsf_1.2.9\glassfish.jsf_1.2.9.0.jar;E:\OracleMW\Middleware\oracle_common\modules\oracle.jsf_1.2.9\glassfish.jstl_1.2.0.1.jar;E:\OracleMW\Middleware\oracle_common\modules\oracle.jsf_1.2.9\javax.jsf_1.0.0.0_1-2.jar;E:\OracleMW\Middleware\oracle_common\modules\oracle.jsf_1.2.9\wls.jsf.di.jar;C:\JDeveloper\mywork\SRF\srfproj\public_html\lib\antlr-2.7.6.jar;C:\JDeveloper\mywork\SRF\srfproj\public_html\lib\cglib-2.2.jar;C:\JDeveloper\mywork\SRF\srfproj\public_html\lib\commons-collections-3.1.jar;C:\JDeveloper\mywork\SRF\srfproj\public_html\lib\dom4j-1.6.1.jar;C:\JDeveloper\mywork\SRF\srfproj\public_html\lib\ehcache-1.5.0.jar;C:\JDeveloper\mywork\SRF\srfproj\public_html\lib\hibernate-jpa-2.0-api-1.0.0.Final.jar;C:\JDeveloper\mywork\SRF\srfproj\public_html\lib\javassist-3.9.0.GA.jar;C:\JDeveloper\mywork\SRF\srfproj\public_html\lib\jta-1.1.jar;C:\JDeveloper\mywork\SRF\srfproj\public_html\lib\org.springframework.aop-3.0.3.RELEASE.jar;C:\JDeveloper\mywork\SRF\srfproj\public_html\lib\org.springframework.asm-3.0.3.RELEASE.jar;C:\JDeveloper\mywork\SRF\srfproj\public_html\lib\org.springframework.aspects-3.0.3.RELEASE.jar;C:\JDeveloper\mywork\SRF\srfproj\public_html\lib\org.springframework.beans-3.0.3.RELEASE.jar;C:\JDeveloper\mywork\SRF\srfproj\public_html\lib\org.springframework.context-3.0.3.RELEASE.jar;C:\JDeveloper\mywork\SRF\srfproj\public_html\lib\org.springframework.context.support-3.0.3.RELEASE.jar;C:\JDeveloper\mywork\SRF\srfproj\public_html\lib\org.springframework.core-3.0.3.RELEASE.jar;C:\JDeveloper\mywork\SRF\srfproj\public_html\lib\org.springframework.expression-3.0.3.RELEASE.jar;C:\JDeveloper\mywork\SRF\srfproj\public_html\lib\org.springframework.instrument-3.0.3.RELEASE.jar;C:\JDeveloper\mywork\SRF\srfproj\public_html\lib\org.springframework.instrument.tomcat-3.0.3.RELEASE.jar;C:\JDeveloper\mywork\SRF\srfproj\public_html\lib\org.springframework.jdbc-3.0.3.RELEASE.jar;C:\JDeveloper\mywork\SRF\srfproj\public_html\lib\org.springframework.jms-3.0.3.RELEASE.jar;C:\JDeveloper\mywork\SRF\srfproj\public_html\lib\org.springframework.orm-3.0.3.RELEASE.jar;C:\JDeveloper\mywork\SRF\srfproj\public_html\lib\org.springframework.oxm-3.0.3.RELEASE.jar;C:\JDeveloper\mywork\SRF\srfproj\public_html\lib\org.springframework.test-3.0.3.RELEASE.jar;C:\JDeveloper\mywork\SRF\srfproj\public_html\lib\org.springframework.transaction-3.0.3.RELEASE.jar;C:\JDeveloper\mywork\SRF\srfproj\public_html\lib\org.springframework.web-3.0.3.RELEASE.jar;C:\JDeveloper\mywork\SRF\srfproj\public_html\lib\org.springframework.web.portlet-3.0.3.RELEASE.jar;C:\JDeveloper\mywork\SRF\srfproj\public_html\lib\org.springframework.web.servlet-3.0.3.RELEASE.jar;C:\JDeveloper\mywork\SRF\srfproj\public_html\lib\org.springframework.web.struts-3.0.3.RELEASE.jar;C:\JDeveloper\mywork\SRF\srfproj\public_html\lib\slf4j-api-1.5.8.jar;C:\JDeveloper\mywork\SRF\srfproj\public_html\lib\standard.jar;C:\JDeveloper\mywork\SRF\srfproj\public_html\lib\jstl.jar;E:\OracleMW\Middleware\oracle_common\modules\oracle.jps_11.1.1\jps-ee.jar;C:\JDeveloper\mywork\SRF\srfproj\public_html\lib\hibernate3.jar;C:\JDeveloper\mywork\SRF\srfproj\public_html\lib\c3p0-0.9.1.jar;C:\JDeveloper\mywork\SRF\srfproj\public_html\lib\slf4j-nop-1.5.2.jar;C:\JDeveloper\mywork\SRF\srfproj\public_html\lib\ojdbc6.jar;C:\JDeveloper\mywork\SRF\srfproj\public_html\lib\ehcache-core-2.2.0.jar "-Djavax.net.ssl.trustStore=E:\Program Files\jdev11.3\wlserver_10.3\server\lib\DemoTrust.jks" com.pp.srf.dao.SerialNumberDAO
Exception in thread "main" org.hibernate.exception.LockAcquisitionException: Cannot open connection
at org.hibernate.exception.SQLStateConverter.convert(SQLStateConverter.java:112)
at org.hibernate.exception.JDBCExceptionHelper.convert(JDBCExceptionHelper.java:66)
at org.hibernate.exception.JDBCExceptionHelper.convert(JDBCExceptionHelper.java:52)
at org.hibernate.jdbc.ConnectionManager.openConnection(ConnectionManager.java:449)
at org.hibernate.jdbc.ConnectionManager.getConnection(ConnectionManager.java:167)
at org.hibernate.jdbc.AbstractBatcher.prepareQueryStatement(AbstractBatcher.java:161)
at org.hibernate.loader.Loader.prepareQueryStatement(Loader.java:1596)
at org.hibernate.loader.Loader.doQuery(Loader.java:717)
at org.hibernate.loader.Loader.doQueryAndInitializeNonLazyCollections(Loader.java:270)
at org.hibernate.loader.Loader.doList(Loader.java:2294)
at org.hibernate.loader.Loader.listIgnoreQueryCache(Loader.java:2172)
at org.hibernate.loader.Loader.list(Loader.java:2167)
at org.hibernate.loader.custom.CustomLoader.list(CustomLoader.java:316)
at org.hibernate.impl.SessionImpl.listCustomQuery(SessionImpl.java:1832)
at org.hibernate.impl.AbstractSessionImpl.list(AbstractSessionImpl.java:165)
at org.hibernate.impl.SQLQueryImpl.list(SQLQueryImpl.java:179)
at com.pp.srf.dao.SerialNumberDAO.getSNList(SerialNumberDAO.java:14)
at com.pp.srf.dao.SerialNumberDAO.main(SerialNumberDAO.java:22)
Caused by: java.sql.SQLException: The Network Adapter could not establish the connection
at oracle.jdbc.driver.SQLStateMapping.newSQLException(SQLStateMapping.java:70)
at oracle.jdbc.driver.DatabaseError.newSQLException(DatabaseError.java:133)
at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:199)
at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:480)
at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:413)
at oracle.jdbc.driver.PhysicalConnection.<init>(PhysicalConnection.java:508)
at oracle.jdbc.driver.T4CConnection.<init>(T4CConnection.java:203)
at oracle.jdbc.driver.T4CDriverExtension.getConnection(T4CDriverExtension.java:33)
at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:510)
at java.sql.DriverManager.getConnection(DriverManager.java:582)
at java.sql.DriverManager.getConnection(DriverManager.java:154)
at org.hibernate.connection.DriverManagerConnectionProvider.getConnection(DriverManagerConnectionProvider.java:133)
at org.hibernate.jdbc.ConnectionManager.openConnection(ConnectionManager.java:446)
... 14 more
Caused by: oracle.net.ns.NetException: The Network Adapter could not establish the connection
at oracle.net.nt.ConnStrategy.execute(ConnStrategy.java:328)
at oracle.net.resolver.AddrResolution.resolveAndExecute(AddrResolution.java:421)
at oracle.net.ns.NSProtocol.establishConnection(NSProtocol.java:634)
at oracle.net.ns.NSProtocol.connect(NSProtocol.java:208)
at oracle.jdbc.driver.T4CConnection.connect(T4CConnection.java:966)
at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:292)
... 22 more
Caused by: java.net.ConnectException: Connection refused: connect
at java.net.PlainSocketImpl.socketConnect(Native Method)
at java.net.PlainSocketImpl.doConnect(PlainSocketImpl.java:333)
at java.net.PlainSocketImpl.connectToAddress(PlainSocketImpl.java:195)
at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:182)
at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:366)
at java.net.Socket.connect(Socket.java:525)
at java.net.Socket.connect(Socket.java:475)
at java.net.Socket.<init>(Socket.java:372)
at java.net.Socket.<init>(Socket.java:186)
at oracle.net.nt.TcpNTAdapter.connect(TcpNTAdapter.java:127)
at oracle.net.nt.ConnOption.connect(ConnOption.java:126)
at oracle.net.nt.ConnStrategy.execute(ConnStrategy.java:306)
... 27 more
Process exited with exit code 1.
My hibenrate config:
Code:
<?xml version="1.0" encoding="windows-1252" ?>
<!DOCTYPE hibernate-configuration PUBLIC
"-//Hibernate/Hibernate Configuration DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">
<hibernate-configuration>
<session-factory>
<property name="connection.driver_class">oracle.jdbc.driver.OracleDriver</property>
<property name="connection.url">jdbc:oracle:thin:@localhost:1521/dbget</property>
<property name="connection.username">ejb</property>
<property name="connection.password">EJB</property>
<property name="hibernate.dialect">org.hibernate.dialect.OracleDialect</property>
<property name="hibernate.show_sql">true</property>
<property name="hibernate.cache.region.factory_class">net.sf.ehcache.hibernate.SingletonEhCacheRegionFactory
</property>
<property name="hibernate.cache.use_query_cache">true</property>
<property name="hibernate.cache.use_second_level_cache">true</property>
<property name="hibernate.c3p0.min_size">5</property>
<property name="hibernate.c3p0.max_size">20</property>
<property name="hibernate.c3p0.timeout">300</property>
<property name="hibernate.c3p0.max_statements">50</property>
<property name="hibernate.c3p0.idle_test_period">3000</property>
<property name="hibernate.current_session_context_class">thread</property>
</session-factory>
</hibernate-configuration>
and the class:
Code:
public class SerialNumberDAO {
private List SNList;
public List getSNList(){
Session sess = HibSessFac.getSessionFactory().openSession();
SNList=sess.createSQLQuery("SELECT distinct serialnumber FROM systeminfo").list();
sess.close();
return SNList;
}
public static void main (String [] args){
SerialNumberDAO sndao = new SerialNumberDAO();
Iterator itr = sndao.getSNList().iterator();
while(itr.hasNext()) {
String element = (String)itr.next();
System.out.print(element + " ");
}
}
}
What am I doing wrong? Thx.