Erro de SQL com ADF e DC4J

1 resposta
Andre.flu

Usando ADF 10.1.3 e Banco Oracle10g.

O seguinte erro é lançado no log da aplicação, porém não é lançado em tempo de desenvolvimento.
O texto em negrito no código são de minha aplicação.

Faço a ligação entre o principal e o resultado da consulta abaixo via ViewLink e ambos são do mesmo tipo, Number.
Me parece obvio que o erro é por que o parâmetro não é um número, porém quando mando inclusive imprimir seu tipo antes de setar o valor o tipo é confirmado.

Alguém tem alguma luz do que possa causar este problema e como solucionar.

Isto só acontece com 2 dos meus viewLinks.

oracle.jbo.SQLStmtException: JBO-27122: SQL error during statement preparation.  Statement: SELECT * FROM (

aqui fica o restante do SQL.....

) QRSLT  WHERE ID_FEITO = :Bind_IdFeito
        at oracle.jbo.server.BaseSQLBuilderImpl.processException(BaseSQLBuilderImpl.java:3383)
        at oracle.jbo.server.OracleSQLBuilderImpl.processException(OracleSQLBuilderImpl.java:3972)
        at oracle.jbo.server.QueryCollection.buildResultSet(QueryCollection.java:958)
        at oracle.jbo.server.QueryCollection.executeQuery(QueryCollection.java:666)
        at oracle.jbo.server.ViewObjectImpl.executeQueryForCollection(ViewObjectImpl.java:3655)
        at oracle.jbo.server.ViewRowSetImpl.execute(ViewRowSetImpl.java:742)
        at oracle.jbo.server.ViewRowSetImpl.execute(ViewRowSetImpl.java:687)
        at oracle.jbo.server.ViewRowSetIteratorImpl.ensureRefreshed(ViewRowSetIteratorImpl.java:2657)
        at oracle.jbo.server.ViewRowSetIteratorImpl.refresh(ViewRowSetIteratorImpl.java:2915)
        at oracle.jbo.server.ViewRowSetImpl.notifyRefresh(ViewRowSetImpl.java:2085)
        at oracle.jbo.server.ViewRowSetImpl.refreshRowSet(ViewRowSetImpl.java:4839)
        at oracle.jbo.server.ViewRowSetIteratorImpl.notifyDetailRowSets(ViewRowSetIteratorImpl.java:3408)
        at oracle.jbo.server.ViewRowSetIteratorImpl.fireRowUpdated(ViewRowSetIteratorImpl.java:3593)
        at oracle.jbo.server.ViewRowSetIteratorImpl.notifyRowUpdated(ViewRowSetIteratorImpl.java:3214)
        at oracle.jbo.server.ViewRowSetImpl.notifyRowUpdated(ViewRowSetImpl.java:1495)
        at oracle.jbo.server.ViewObjectImpl.notifyRowUpdated(ViewObjectImpl.java:7439)
        at oracle.jbo.server.ViewObjectImpl.notifyRowUpdated(ViewObjectImpl.java:7416)
        at oracle.jbo.server.ViewRowStorage.setAttributeValue(ViewRowStorage.java:1329)
        at oracle.jbo.server.ViewRowStorage.setAttributeInternal(ViewRowStorage.java:1216)
        at oracle.jbo.server.ViewRowImpl.setAttributeInternal(ViewRowImpl.java:1116)
        [b]at br.es.tj.ucgerenciadorcartorio.attributes.TransferenciaFeitoVOARowImpl.setIdFeito(Unknown Source)
        at br.es.tj.ucgerenciadorcartorio.service.AdminUCGerenciadorCartorioAMImpl.valoresFeito(Unknown Source)
        at br.es.tj.ucgerenciadorcartorio.bean.RegistrarTransferenciaOrgaoBean.handleReturnFeito(Unknown Source)[/b]       
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:585)
        at com.sun.faces.el.MethodBindingImpl.invoke(MethodBindingImpl.java:146)
        at oracle.adf.view.faces.component.UIXComponentBase.__broadcast(UIXComponentBase.java:1087)
        at oracle.adf.view.faces.component.UIXCommand.broadcast(UIXCommand.java:234)
        at javax.faces.component.UIViewRoot.broadcastEvents(UIViewRoot.java:269)
        at javax.faces.component.UIViewRoot.processDecodes(UIViewRoot.java:327)
        at com.sun.faces.lifecycle.ApplyRequestValuesPhase.execute(ApplyRequestValuesPhase.java:99)
        at com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:245)
        at com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:110)
        at javax.faces.webapp.FacesServlet.service(FacesServlet.java:213)
        at com.evermind.server.http.ResourceFilterChain.doFilter(ResourceFilterChain.java:64)
        at oracle.adfinternal.view.faces.webapp.AdfFacesFilterImpl._invokeDoFilter(AdfFacesFilterImpl.java:231)
        at oracle.adfinternal.view.faces.webapp.AdfFacesFilterImpl._doFilterImpl(AdfFacesFilterImpl.java:200)
        at oracle.adfinternal.view.faces.webapp.AdfFacesFilterImpl.doFilter(AdfFacesFilterImpl.java:122)
        at oracle.adf.view.faces.webapp.AdfFacesFilter.doFilter(AdfFacesFilter.java:106)
        at com.evermind.server.http.EvermindFilterChain.doFilter(EvermindFilterChain.java:15)
        at oracle.adf.model.servlet.ADFBindingFilter.doFilter(ADFBindingFilter.java:162)
        at com.evermind.server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:619)
        at com.evermind.server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:368)
        at com.evermind.server.http.HttpRequestHandler.doProcessRequest(HttpRequestHandler.java:866)
        at com.evermind.server.http.HttpRequestHandler.processRequest(HttpRequestHandler.java:448)
        at com.evermind.server.http.AJPRequestHandler.run(AJPRequestHandler.java:302)
        at com.evermind.server.http.AJPRequestHandler.run(AJPRequestHandler.java:190)
        at oracle.oc4j.network.ServerSocketReadHandler$SafeRunnable.run(ServerSocketReadHandler.java:260)
        at com.evermind.util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor.java:303)
        at java.lang.Thread.run(Thread.java:595)
## Detail 0 ##
java.sql.SQLException: ORA-01722: invalid number

        at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:138)
        at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:316)
        at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:282)
        at oracle.jdbc.driver.T4C8Oall.receive(T4C8Oall.java:639)
        at oracle.jdbc.driver.T4CPreparedStatement.doOall8(T4CPreparedStatement.java:185)
        at oracle.jdbc.driver.T4CPreparedStatement.execute_for_rows(T4CPreparedStatement.java:633)
        at oracle.jdbc.driver.OracleStatement.execute_maybe_describe(OracleStatement.java:1048)
        at oracle.jdbc.driver.T4CPreparedStatement.execute_maybe_describe(T4CPreparedStatement.java:535)
        at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:1126)
        at oracle.jdbc.driver.OraclePreparedStatement.executeInternal(OraclePreparedStatement.java:3001)
        at oracle.jdbc.driver.OraclePreparedStatement.executeQuery(OraclePreparedStatement.java:3043)
        at oracle_jdbc_driver_T4CPreparedStatement_Proxy.executeQuery()
        at oracle.jbo.server.QueryCollection.buildResultSet(QueryCollection.java:857)
        at oracle.jbo.server.QueryCollection.executeQuery(QueryCollection.java:666)
        at oracle.jbo.server.ViewObjectImpl.executeQueryForCollection(ViewObjectImpl.java:3655)
        at oracle.jbo.server.ViewRowSetImpl.execute(ViewRowSetImpl.java:742)
        at oracle.jbo.server.ViewRowSetImpl.execute(ViewRowSetImpl.java:687)
        at oracle.jbo.server.ViewRowSetIteratorImpl.ensureRefreshed(ViewRowSetIteratorImpl.java:2657)
        at oracle.jbo.server.ViewRowSetIteratorImpl.refresh(ViewRowSetIteratorImpl.java:2915)
        at oracle.jbo.server.ViewRowSetImpl.notifyRefresh(ViewRowSetImpl.java:2085)
        at oracle.jbo.server.ViewRowSetImpl.refreshRowSet(ViewRowSetImpl.java:4839)
        at oracle.jbo.server.ViewRowSetIteratorImpl.notifyDetailRowSets(ViewRowSetIteratorImpl.java:3408)
        at oracle.jbo.server.ViewRowSetIteratorImpl.fireRowUpdated(ViewRowSetIteratorImpl.java:3593)
        at oracle.jbo.server.ViewRowSetIteratorImpl.notifyRowUpdated(ViewRowSetIteratorImpl.java:3214)
        at oracle.jbo.server.ViewRowSetImpl.notifyRowUpdated(ViewRowSetImpl.java:1495)
        at oracle.jbo.server.ViewObjectImpl.notifyRowUpdated(ViewObjectImpl.java:7439)
        at oracle.jbo.server.ViewObjectImpl.notifyRowUpdated(ViewObjectImpl.java:7416)
        at oracle.jbo.server.ViewRowStorage.setAttributeValue(ViewRowStorage.java:1329)
        at oracle.jbo.server.ViewRowStorage.setAttributeInternal(ViewRowStorage.java:1216)
        at oracle.jbo.server.ViewRowImpl.setAttributeInternal(ViewRowImpl.java:1116)
[b]    at br.es.tj.ucgerenciadorcartorio.attributes.TransferenciaFeitoVOARowImpl.setIdFeito(Unknown Source)
        at br.es.tj.ucgerenciadorcartorio.service.AdminUCGerenciadorCartorioAMImpl.valoresFeito(Unknown Source)
        at br.es.tj.ucgerenciadorcartorio.bean.RegistrarTransferenciaOrgaoBean.handleReturnFeito(Unknown Source)[/b]
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:585)
        at java.lang.reflect.Method.invoke(Method.java:585)
        at com.sun.faces.el.MethodBindingImpl.invoke(MethodBindingImpl.java:146)
        at oracle.adf.view.faces.component.UIXComponentBase.__broadcast(UIXComponentBase.java:1087)
        at oracle.adf.view.faces.component.UIXCommand.broadcast(UIXCommand.java:234)
        at javax.faces.component.UIViewRoot.broadcastEvents(UIViewRoot.java:269)
        at javax.faces.component.UIViewRoot.processDecodes(UIViewRoot.java:327)
        at com.sun.faces.lifecycle.ApplyRequestValuesPhase.execute(ApplyRequestValuesPhase.java:99)
        at com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:245)
        at com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:110)
        at javax.faces.webapp.FacesServlet.service(FacesServlet.java:213)
        at com.evermind.server.http.ResourceFilterChain.doFilter(ResourceFilterChain.java:64)
        at oracle.adfinternal.view.faces.webapp.AdfFacesFilterImpl._invokeDoFilter(AdfFacesFilterImpl.java:231)
        at oracle.adfinternal.view.faces.webapp.AdfFacesFilterImpl._doFilterImpl(AdfFacesFilterImpl.java:200)
        at oracle.adfinternal.view.faces.webapp.AdfFacesFilterImpl.doFilter(AdfFacesFilterImpl.java:122)
        at oracle.adf.view.faces.webapp.AdfFacesFilter.doFilter(AdfFacesFilter.java:106)
        at com.evermind.server.http.EvermindFilterChain.doFilter(EvermindFilterChain.java:15)
        at oracle.adf.model.servlet.ADFBindingFilter.doFilter(ADFBindingFilter.java:162)
        at com.evermind.server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:619)
        at com.evermind.server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:368)
        at com.evermind.server.http.HttpRequestHandler.doProcessRequest(HttpRequestHandler.java:866)
        at com.evermind.server.http.HttpRequestHandler.processRequest(HttpRequestHandler.java:448)
        at com.evermind.server.http.AJPRequestHandler.run(AJPRequestHandler.java:302)
        at com.evermind.server.http.AJPRequestHandler.run(AJPRequestHandler.java:190)
        at oracle.oc4j.network.ServerSocketReadHandler$SafeRunnable.run(ServerSocketReadHandler.java:260)
        at com.evermind.util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor.java:303)
        at java.lang.Thread.run(Thread.java:595)

1 Resposta

M

Sei que já faz tempo mas… você conseguiu resolver este problema?..

Estou tendo este JBO-27122 também… :cry:

Vlw…

Criado 14 de fevereiro de 2008
Ultima resposta 26 de set. de 2008
Respostas 1
Participantes 2