Boa Noite Pessoal,
tenho um Coluna long em uma consulta.
Ao realizar a consulta, algumas vezes, estou tendo o seguinte erro.
javax.persistence.PersistenceException: org.hibernate.exception.GenericJDBCException: could not execute query
at org.hibernate.ejb.AbstractEntityManagerImpl.throwPersistenceException(AbstractEntityManagerImpl.java:637)
at org.hibernate.ejb.QueryImpl.getResultList(QueryImpl.java:74)
at com.br.dao.Query_SpoolDao.consultar(Query_SpoolDao.java:101)
at com.br.dao.Query_SpoolDao.select(Query_SpoolDao.java:119)
at com.br.manager.ManagerPadrao.criarEstrutura(ManagerPadrao.java:81)
at com.br.manager.ManagerPadrao.getEstrutura(ManagerPadrao.java:913)
at com.br.control.ControlAAComissao.controllerPadrao(ControlAAComissao.java:38)
at com.br.control.ControlAAComissao.controlador(ControlAAComissao.java:433)
at com.br.control.ControlAAComissao.ControllerConsulta(ControlAAComissao.java:446)
at com.br.servlet.ServletUploadIccid.doPost(ServletUploadIccid.java:237)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:641)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:222)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:123)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:168)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:99)
at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:929)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:407)
at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1002)
at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:585)
at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:312)
at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
Caused by: org.hibernate.exception.GenericJDBCException: could not execute query
at org.hibernate.exception.SQLStateConverter.handledNonSpecificException(SQLStateConverter.java:103)
at org.hibernate.exception.SQLStateConverter.convert(SQLStateConverter.java:91)
at org.hibernate.exception.JDBCExceptionHelper.convert(JDBCExceptionHelper.java:43)
at org.hibernate.loader.Loader.doList(Loader.java:2223)
at org.hibernate.loader.Loader.listIgnoreQueryCache(Loader.java:2104)
at org.hibernate.loader.Loader.list(Loader.java:2099)
at org.hibernate.loader.hql.QueryLoader.list(QueryLoader.java:378)
at org.hibernate.hql.ast.QueryTranslatorImpl.list(QueryTranslatorImpl.java:338)
at org.hibernate.engine.query.HQLQueryPlan.performList(HQLQueryPlan.java:172)
at org.hibernate.impl.SessionImpl.list(SessionImpl.java:1121)
at org.hibernate.impl.QueryImpl.list(QueryImpl.java:79)
at org.hibernate.ejb.QueryImpl.getResultList(QueryImpl.java:65)
... 26 more
Caused by: java.sql.SQLException: Stream já foi fechado
at oracle.jdbc.driver.LongAccessor.getBytesInternal(LongAccessor.java:156)
at oracle.jdbc.driver.LongAccessor.getBytes(LongAccessor.java:126)
at oracle.jdbc.driver.LongAccessor.getString(LongAccessor.java:201)
at oracle.jdbc.driver.T4CLongAccessor.getString(T4CLongAccessor.java:450)
at oracle.jdbc.driver.OracleResultSetImpl.getString(OracleResultSetImpl.java:1297)
at oracle.jdbc.driver.OracleResultSet.getString(OracleResultSet.java:494)
at com.mchange.v2.c3p0.impl.NewProxyResultSet.getString(NewProxyResultSet.java:3472)
at org.hibernate.type.StringType.get(StringType.java:18)
at org.hibernate.type.NullableType.nullSafeGet(NullableType.java:163)
at org.hibernate.type.NullableType.nullSafeGet(NullableType.java:154)
at org.hibernate.type.AbstractType.hydrate(AbstractType.java:81)
at org.hibernate.persister.entity.AbstractEntityPersister.hydrate(AbstractEntityPersister.java:2096)
at org.hibernate.loader.Loader.loadFromResultSet(Loader.java:1380)
at org.hibernate.loader.Loader.instanceNotYetLoaded(Loader.java:1308)
at org.hibernate.loader.Loader.getRow(Loader.java:1206)
at org.hibernate.loader.Loader.getRowFromResultSet(Loader.java:580)
at org.hibernate.loader.Loader.doQuery(Loader.java:701)
at org.hibernate.loader.Loader.doQueryAndInitializeNonLazyCollections(Loader.java:236)
at org.hibernate.loader.Loader.doList(Loader.java:2220)
... 34 more
Ao analisar, e pesquisar o erro, encontrei alguns lugares informando, que isto se deve ao realizar uma consulta com uma coluna Long.
Tenho a minha classe de model
package com.br.model;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Id;
import javax.persistence.Table;
@Entity
@Table(name="Query_Spool")
public class Query_Spool {
@Id
int COD_QUERY_SPOOL;
@Column
String COD_QUERY;
@Column
String DSC_SPOOL;
public int getCOD_QUERY_SPOOL() {
return COD_QUERY_SPOOL;
}
public void setCOD_QUERY_SPOOL(int cOD_QUERY_SPOOL) {
COD_QUERY_SPOOL = cOD_QUERY_SPOOL;
}
public String getCOD_QUERY() {
return COD_QUERY;
}
public void setCOD_QUERY(String cOD_QUERY) {
COD_QUERY = cOD_QUERY;
}
public String getDSC_SPOOL() {
return DSC_SPOOL;
}
public void setDSC_SPOOL(String dSC_SPOOL) {
DSC_SPOOL = dSC_SPOOL;
}
}
Estive pensando em tentar converter o long e mudar da classe de Modelo, de String para Long.
Podem não consegui converter, este tipo de Campo.
Alguem poderia me ajudar, ou me indicar uma saida ?
grato,