Opa galera,
Depois de muito bater cabeça, decidir aparecer por aqui pra tirar 1 duvida intrigante...
Estou com um problema na execução de stored procedures em java... segue meu codigo:
try {
Connection conn = HibernateUtil.getDataSource().getConnection();
CallableStatement c = conn.prepareCall("begin ? := f_relatoriotrocas(?, ?, ?, null, null); end;");
c.registerOutParameter(1, OracleTypes.CURSOR);
c.setDate(2, new java.sql.Date(dataInicio));
c.setDate(3, new java.sql.Date(dataFinal));
c.setInt(4, codigoEstabelecimento);
c.execute();
} catch (Exception e) {
e.printStackTrace();
}
Onde dataInicio e dataFinal são tipo long e codigo estabelecimento é 1 int.
O cabeçalho da SP
CREATE OR REPLACE FUNCTION f_relatoriotrocas (
P_DTINICIAL IN T_TROCA.DATA%TYPE,
P_DTFINAL IN T_TROCA.DATA%TYPE,
P_IDESTABELECIMENTO IN T_ESTABELECIMENTO.IDESTABELECIMENTO%TYPE,
P_IDCLIENTE IN T_TROCA.CODIGOCLIENTE%TYPE,
P_IDORCAMENTO IN T_ORCAMENTO.IDORCAMENTO%TYPE
)
Onde os campos DATA nas tabelas são do tipo Date e os campos ID* são do tipo Number.
Essa stored procedure retorna 1 cursor. Até ai tudo bem... mas quando eu executo o codigo la dá o seguinte erro:
[exec] [#|2008-12-16T09:30:17.902-0200|WARNING|sun-appserver9.1|javax.enterprise.system.stream.err|_ThreadID=17;_ThreadName=httpSSLWorkerThread-8080-1;_RequestID=72aef0a5-df3a-4de3-b290-b629328ef90c;|
[exec] java.sql.SQLException: Tamanho de tipo maior que o Máximo
[exec] at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:125)
[exec] at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:162)
[exec] at oracle.jdbc.driver.DatabaseError.check_error(DatabaseError.java:885)
[exec] at oracle.jdbc.driver.T4CMAREngine.buffer2Value(T4CMAREngine.java:2202)
[exec] at oracle.jdbc.driver.T4CMAREngine.unmarshalUB2(T4CMAREngine.java:1051)
[exec] at oracle.jdbc.driver.T4CTTIdcb.receiveCommon(T4CTTIdcb.java:112)
[exec] at oracle.jdbc.driver.T4CTTIdcb.receiveFromRefCursor(T4CTTIdcb.java:104)
[exec] at oracle.jdbc.driver.T4CResultSetAccessor.unmarshalOneRow(T4CResultSetAccessor.java:167)
[exec] at oracle.jdbc.driver.T4CTTIrxd.unmarshal(T4CTTIrxd.java:792)
[exec] at oracle.jdbc.driver.T4CTTIrxd.unmarshal(T4CTTIrxd.java:708)
[exec] at oracle.jdbc.driver.T4C8Oall.receive(T4C8Oall.java:530)
[exec] at oracle.jdbc.driver.T4CCallableStatement.doOall8(T4CCallableStatement.java:181)
[exec] at oracle.jdbc.driver.T4CCallableStatement.execute_for_rows(T4CCallableStatement.java:784)
[exec] at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:1027)
[exec] at oracle.jdbc.driver.OraclePreparedStatement.executeInternal(OraclePreparedStatement.java:2885)
[exec] at oracle.jdbc.driver.OraclePreparedStatement.execute(OraclePreparedStatement.java:2976)
[exec] at oracle.jdbc.driver.OracleCallableStatement.execute(OracleCallableStatement.java:4112)
[exec] at com.neus.erp.business.relatorio.troca.ColecaoTrocas.getColecaoEstabelecimento1(ColecaoTrocas.java:391)
[exec] at com.neus.erp.business.fachada.ComplementoErpFachadaComColecao.getColecaoEstabelecimento(ComplementoErpFachadaComColecao.java:3617)
[exec] at com.neus.erp.business.fachada.Generated_ErpFachadaComposta.getColecaoEstabelecimento(Generated_ErpFachadaComposta.java:5187)
[exec] at com.neus.erp.gui.relatorio.trocas.TrocasAction.geraRelatorioPost(TrocasAction.java:232)
[exec] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
[exec] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
[exec] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
[exec] at java.lang.reflect.Method.invoke(Method.java:585)
[exec] at org.apache.struts.actions.DispatchAction.dispatchMethod(DispatchAction.java:276)
[exec] at org.apache.struts.actions.DispatchAction.execute(DispatchAction.java:196)
[exec] at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:421)
[exec] at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:226)
[exec] at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1164)
[exec] at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:415)
[exec] at javax.servlet.http.HttpServlet.service(HttpServlet.java:738)
[exec] at javax.servlet.http.HttpServlet.service(HttpServlet.java:831)
[exec] at org.apache.catalina.core.ApplicationFilterChain.servletService(ApplicationFilterChain.java:411)
[exec] at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:317)
[exec] at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:198)
[exec] at com.neus.gui.servlet.HibernateFiltroServlet.doFilter(HibernateFiltroServlet.java:41)
[exec] at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:230)
[exec] at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:198)
[exec] at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:288)
[exec] at org.apache.catalina.core.StandardContextValve.invokeInternal(StandardContextValve.java:271)
[exec] at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:202)
[exec] at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:632)
[exec] at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:577)
[exec] at com.sun.enterprise.web.WebPipeline.invoke(WebPipeline.java:94)
[exec] at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:206)
[exec] at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:632)
[exec] at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:577)
[exec] at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:571)
[exec] at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:1080)
[exec] at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:150)
[exec] at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:632)
[exec] at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:577)
[exec] at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:571)
[exec] at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:1080)
[exec] at org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:272)
[exec] at com.sun.enterprise.web.connector.grizzly.DefaultProcessorTask.invokeAdapter(DefaultProcessorTask.java:637)
[exec] at com.sun.enterprise.web.connector.grizzly.DefaultProcessorTask.doProcess(DefaultProcessorTask.java:568)
[exec] at com.sun.enterprise.web.connector.grizzly.DefaultProcessorTask.process(DefaultProcessorTask.java:813)
[exec] at com.sun.enterprise.web.connector.grizzly.DefaultReadTask.executeProcessorTask(DefaultReadTask.java:341)
[exec] at com.sun.enterprise.web.connector.grizzly.DefaultReadTask.doTask(DefaultReadTask.java:263)
[exec] at com.sun.enterprise.web.connector.grizzly.DefaultReadTask.doTask(DefaultReadTask.java:214)
[exec] at com.sun.enterprise.web.connector.grizzly.TaskBase.run(TaskBase.java:265)
[exec] at com.sun.enterprise.web.connector.grizzly.ssl.SSLWorkerThread.run(SSLWorkerThread.java:106)
[exec] |#]
[exec] [#|2008-12-16T09:31:01.084-0200|WARNING|sun-appserver9.1|javax.enterprise.system.core.transaction|_ThreadID=17;_ThreadName=httpSSLWorkerThread-8080-1;_RequestID=72aef0a5-df3a-4de3-b290-b629328ef90c;|JTS5064: Unexpected exception occurred while delisting the resource
[exec] oracle.jdbc.xa.OracleXAException
[exec] at oracle.jdbc.xa.OracleXAResource.checkError(OracleXAResource.java:1018)
[exec] at oracle.jdbc.xa.client.OracleXAResource.end(OracleXAResource.java:353)
[exec] at com.sun.gjc.spi.XAResourceImpl.end(XAResourceImpl.java:100)
[exec] at com.sun.jts.jta.TransactionState.beforeCompletion(TransactionState.java:161)
[exec] at com.sun.jts.jta.SynchronizationImpl.before_completion(SynchronizationImpl.java:133)
[exec] at com.sun.jts.CosTransactions.RegisteredSyncs.distributeBefore(RegisteredSyncs.java:158)
[exec] at com.sun.jts.CosTransactions.TopCoordinator.beforeCompletion(TopCoordinator.java:2548)
[exec] at com.sun.jts.CosTransactions.CoordinatorTerm.commit(CoordinatorTerm.java:278)
[exec] at com.sun.jts.CosTransactions.TerminatorImpl.commit(TerminatorImpl.java:249)
[exec] at com.sun.jts.CosTransactions.CurrentImpl.commit(CurrentImpl.java:623)
[exec] at com.sun.jts.jta.TransactionManagerImpl.commit(TransactionManagerImpl.java:309)
[exec] at com.sun.enterprise.distributedtx.J2EETransactionManagerImpl.commit(J2EETransactionManagerImpl.java:1030)
[exec] at com.sun.enterprise.distributedtx.J2EETransactionManagerOpt.commit(J2EETransactionManagerOpt.java:397)
[exec] at com.sun.enterprise.distributedtx.UserTransactionImpl.commit(UserTransactionImpl.java:197)
[exec] at com.neus.gui.servlet.HibernateFiltroServlet.doFilter(HibernateFiltroServlet.java:47)
[exec] at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:230)
[exec] at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:198)
[exec] at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:288)
[exec] at org.apache.catalina.core.StandardContextValve.invokeInternal(StandardContextValve.java:271)
[exec] at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:202)
[exec] at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:632)
[exec] at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:577)
[exec] at com.sun.enterprise.web.WebPipeline.invoke(WebPipeline.java:94)
[exec] at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:206)
[exec] at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:632)
[exec] at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:577)
[exec] at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:571)
[exec] at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:1080)
[exec] at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:150)
[exec] at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:632)
[exec] at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:577)
[exec] at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:571)
[exec] at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:1080)
[exec] at org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:272)
[exec] at com.sun.enterprise.web.connector.grizzly.DefaultProcessorTask.invokeAdapter(DefaultProcessorTask.java:637)
[exec] at com.sun.enterprise.web.connector.grizzly.DefaultProcessorTask.doProcess(DefaultProcessorTask.java:568)
[exec] at com.sun.enterprise.web.connector.grizzly.DefaultProcessorTask.process(DefaultProcessorTask.java:813)
[exec] at com.sun.enterprise.web.connector.grizzly.DefaultReadTask.executeProcessorTask(DefaultReadTask.java:341)
[exec] at com.sun.enterprise.web.connector.grizzly.DefaultReadTask.doTask(DefaultReadTask.java:263)
[exec] at com.sun.enterprise.web.connector.grizzly.DefaultReadTask.doTask(DefaultReadTask.java:214)
[exec] at com.sun.enterprise.web.connector.grizzly.TaskBase.run(TaskBase.java:265)
[exec] at com.sun.enterprise.web.connector.grizzly.ssl.SSLWorkerThread.run(SSLWorkerThread.java:106)
[exec] |#]
[exec] [#|2008-12-16T09:31:01.086-0200|SEVERE|sun-appserver9.1|javax.enterprise.system.core.transaction|_ThreadID=17;_ThreadName=httpSSLWorkerThread-8080-1;org.omg.CORBA.INTERNAL: vmcid: 0x0 minor code: 0 completed: Maybe;rollback;_RequestID=72aef0a5-df3a-4de3-b290-b629328ef90c;|JTS5031: Exception [org.omg.CORBA.INTERNAL: vmcid: 0x0 minor code: 0 completed: Maybe] on Resource [rollback] operation.|#]
[exec] [#|2008-12-16T09:31:01.091-0200|SEVERE|sun-appserver9.1|javax.enterprise.system.container.web|_ThreadID=17;_ThreadName=httpSSLWorkerThread-8080-1;_RequestID=72aef0a5-df3a-4de3-b290-b629328ef90c;|StandardWrapperValve[controle]: PWC1406: Servlet.service() for servlet controle threw exception
[exec] javax.transaction.SystemException: org.omg.CORBA.INTERNAL: JTS5031: Exception [org.omg.CORBA.INTERNAL: vmcid: 0x0 minor code: 0 completed: Maybe] on Resource [rollback] operation. vmcid: 0x0 minor code: 0 completed: No
[exec] at com.sun.jts.jta.TransactionManagerImpl.commit(TransactionManagerImpl.java:321)
[exec] at com.sun.enterprise.distributedtx.J2EETransactionManagerImpl.commit(J2EETransactionManagerImpl.java:1030)
[exec] at com.sun.enterprise.distributedtx.J2EETransactionManagerOpt.commit(J2EETransactionManagerOpt.java:397)
[exec] at com.sun.enterprise.distributedtx.UserTransactionImpl.commit(UserTransactionImpl.java:197)
[exec] at com.neus.gui.servlet.HibernateFiltroServlet.doFilter(HibernateFiltroServlet.java:47)
[exec] at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:230)
[exec] at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:198)
[exec] at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:288)
[exec] at org.apache.catalina.core.StandardContextValve.invokeInternal(StandardContextValve.java:271)
[exec] at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:202)
[exec] at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:632)
[exec] at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:577)
[exec] at com.sun.enterprise.web.WebPipeline.invoke(WebPipeline.java:94)
[exec] at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:206)
[exec] at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:632)
[exec] at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:577)
[exec] at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:571)
[exec] at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:1080)
[exec] at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:150)
[exec] at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:632)
[exec] at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:577)
[exec] at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:571)
[exec] at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:1080)
[exec] at org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:272)
[exec] at com.sun.enterprise.web.connector.grizzly.DefaultProcessorTask.invokeAdapter(DefaultProcessorTask.java:637)
[exec] at com.sun.enterprise.web.connector.grizzly.DefaultProcessorTask.doProcess(DefaultProcessorTask.java:568)
[exec] at com.sun.enterprise.web.connector.grizzly.DefaultProcessorTask.process(DefaultProcessorTask.java:813)
[exec] at com.sun.enterprise.web.connector.grizzly.DefaultReadTask.executeProcessorTask(DefaultReadTask.java:341)
[exec] at com.sun.enterprise.web.connector.grizzly.DefaultReadTask.doTask(DefaultReadTask.java:263)
[exec] at com.sun.enterprise.web.connector.grizzly.DefaultReadTask.doTask(DefaultReadTask.java:214)
[exec] at com.sun.enterprise.web.connector.grizzly.TaskBase.run(TaskBase.java:265)
[exec] at com.sun.enterprise.web.connector.grizzly.ssl.SSLWorkerThread.run(SSLWorkerThread.java:106)
Gostaria de saber se alguém poderia me ajudar com esse erro e como poder resolve-lo...
Aguardo respostas...
E antecipadamente agradeço a ajuda...
[]'s