Java.sql.SQLException: Statement cancelled, probably by transaction timing
Hi all,
I have a problem with transaction handling over 2 applications. I have 2 EAR files (*A.ear* and B.ear) which are deployed on a WLS 12.1. The WLS contains a XA datasource which is connected to a Oracle XE database. Both applications are using the same datasource. The datasource is configured to use the driver oracle.jdbc.xa.client.OracleXADataSource.
EAR A contains a Remote EJB which is is calling a local EJB. The local EJB calls a Remote EJB from EAR B.
Here is an example how the code looks like:
@Remote
@Stateless(mappedName = "AnyRemote", name = "AnyRemote")
public class AnyRemoteBean implements AnyRemote {
@EJB
private AnyLocal anyLocal;
@Override
public void doIt() {
anyLocal.doSomething();
@Local
@Stateless(mappedName = "AnyLocal", name = "AnyLocal")
public class AnyLocalBean implements AnyLocal {
@PersistenceContext(unitName = "A")
private EntityManager entityManager;
@EJB(mappedName = "AnyCompositeService")
private AnyCompositeService anyCompositeService;
@Override
@TransactionAttribute(TransactionAttributeType.REQUIRES_NEW)
public boolean doSomething() {
try {
// do some stuff and save to database within another local EJB
anyCompositeService.doSomethingOnEAR_B();
return true;
} catch (final AnyException e) {
LOGGER.error("doSomething failed", e);
return false;
@Override
@TransactionAttribute(TransactionAttributeType.REQUIRES_NEW)
public boolean stayOnEar_A() {
// do some stuff and save to database within another local EJB
return true;
}AnyCompositeService located in EAR B looks like this:
@Remote
@Stateless(mappedName = "AnyCompositeService ", name = "AnyCompositeService ")
public class AnyCompositeServiceBean implements AnyCompositeService {
@Override
public boolean doSomethingOnEAR_B() throws AnyException {
// do some calls to some local EJBs and some other remote EJBs and save something to database
return true;
}In this process of EAR B I'm using the entitiy manager:
@PersistenceContext(unitName = "B")
private EntityManager entityManager;persistence.xml for EAR A looks like this
<persistence-unit name="A" transaction-type="JTA">
<provider>org.hibernate.ejb.HibernatePersistence</provider>
<jta-data-source>MyDatasource</jta-data-source>
<!-- some entities -->
<properties>
<property name="hibernate.transaction.jta.platform"
value="org.hibernate.service.jta.platform.internal.WeblogicJtaPlatform" />
<property name="hibernate.max_fetch_depth" value="3" />
<property name="hibernate.connection.characterEncoding" value="UTF-8" />
<property name="hibernate.connection.charSet" value="UTF-8" />
<property name="hibernate.connection.useUnicode" value="true" />
<property name="hibernate.default_batch_fetch_size" value="20" />
</properties>
</persistence-unit>
</persistence>persistence.xml for EAR B looks like this
<persistence-unit name="B" transaction-type="JTA">
<provider>org.hibernate.ejb.HibernatePersistence</provider>
<jta-data-source>MyDatasource</jta-data-source>
<!-- some entities -->
<properties>
<property name="hibernate.transaction.jta.platform"
value="org.hibernate.service.jta.platform.internal.WeblogicJtaPlatform" />
<property name="hibernate.max_fetch_depth" value="3" />
<property name="hibernate.connection.characterEncoding" value="UTF-8" />
<property name="hibernate.connection.charSet" value="UTF-8" />
<property name="hibernate.connection.useUnicode" value="true" />
<property name="hibernate.default_batch_fetch_size" value="20" />
</properties>
</persistence-unit>
</persistence>As you can see the method doSomething() defines the transaction attribute TransactionAttributeType.REQUIRES_NEW.
When I execute AnyRemote.doIt() I get the following exception:
Caused By: java.sql.SQLException: Statement cancelled, probably by transaction timing out
at weblogic.jdbc.wrapper.Statement.postInvocationHandler(Statement.java:69)
at weblogic.jdbc.wrapper.PreparedStatement_oracle_jdbc_driver_OraclePreparedStatementWrapper.clearBatch(Unknown Source)
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:597)
at org.hibernate.engine.jdbc.internal.proxy.AbstractStatementProxyHandler.continueInvocation(AbstractStatementProxyHandler.java:122)
at org.hibernate.engine.jdbc.internal.proxy.AbstractProxyHandler.invoke(AbstractProxyHandler.java:81)
at $Proxy452.clearBatch(Unknown Source)
at org.hibernate.engine.jdbc.batch.internal.AbstractBatchImpl.releaseStatements(AbstractBatchImpl.java:163)
at org.hibernate.engine.jdbc.batch.internal.AbstractBatchImpl.release(AbstractBatchImpl.java:197)
at org.hibernate.engine.jdbc.internal.JdbcCoordinatorImpl.close(JdbcCoordinatorImpl.java:139)
at org.hibernate.engine.transaction.internal.TransactionCoordinatorImpl.close(TransactionCoordinatorImpl.java:276)
at org.hibernate.internal.SessionImpl.close(SessionImpl.java:349)
at org.hibernate.ejb.EntityManagerImpl.close(EntityManagerImpl.java:137)
at weblogic.persistence.TransactionalEntityManagerProxyImpl.close(TransactionalEntityManagerProxyImpl.java:117)
at weblogic.persistence.BasePersistenceContextProxyImpl$PersistenceContextCloser.afterCompletion(BasePersistenceContextProxyImpl.java:213)
at weblogic.transaction.internal.ServerSCInfo.doAfterCompletion(ServerSCInfo.java:1068)
at weblogic.transaction.internal.ServerSCInfo.callAfterCompletions(ServerSCInfo.java:1012)
at weblogic.transaction.internal.ServerTransactionImpl.callAfterCompletions(ServerTransactionImpl.java:3074)
at weblogic.transaction.internal.ServerTransactionImpl.afterRolledBackStateHousekeeping(ServerTransactionImpl.java:2954)
at weblogic.transaction.internal.ServerTransactionImpl.setRolledBack(ServerTransactionImpl.java:2930)
at weblogic.transaction.internal.ServerTransactionImpl.globalRetryRollback(ServerTransactionImpl.java:3172)
at weblogic.transaction.internal.ServerTransactionImpl.globalRollback(ServerTransactionImpl.java:2920)
at weblogic.transaction.internal.ServerTransactionImpl.internalCommit(ServerTransactionImpl.java:374)
at weblogic.transaction.internal.ServerTransactionImpl.commit(ServerTransactionImpl.java:268)
at weblogic.ejb.container.internal.BaseLocalObject.postInvoke1(BaseLocalObject.java:332)
at weblogic.ejb.container.internal.BaseLocalObject.__WL_postInvokeTxRetry(BaseLocalObject.java:202)
at weblogic.ejb.container.internal.SessionLocalMethodInvoker.invoke(SessionLocalMethodInvoker.java:44)As long as the process only calls EJBs from EAR A only there is no issue. But if the process calls the method doSomethingOnEAR_B() on EAR B the call fails with above exception. If the process throws AnyException the rollback takes place as expected for transaction in EAR B and EAR A.
Does anybody know what is the issue here? Is there any configuration I have overseen?
That is a WLS internal message. The statement did get cancelled,
probably as a part of the process of rolling back the transaction it
was involved in. If you don't find your core problem, open an
Oracle support SR, and we could help debug this further.
Similar Messages
-
Java.sql.SQLException: statement handle not executed
hello,
i am calling a stored procedure and its returns a REF CURSOR and i am getting intermittent exceptions below,
org.springframework.jdbc.UncategorizedSQLException: Hibernate operation: could not execute query; uncategorized SQLException for SQL [{call
xxxx_pkg(?,?)}]; SQL state [99999]; error code [17144]; statement handle not executed; nested exception is java.sql.SQLException: statement handle not executed
and
org.springframework.jdbc.UncategorizedSQLException: Hibernate operation: could not execute query; uncategorized SQLException for SQL [{call
xxxx_pkg(?,?,?)}]; SQL state [99999]; error code [17009]; Closed Statement; nested exception is java.sql.SQLException: Closed Statement
any clue what could be the issue,
Regards
GGits pretty simple have a java class calling hibernateTemplate's findByNamedQueryAndNamedParam method by passing the procedure name and binding parameters/values, and here is the stack
org.springframework.jdbc.UncategorizedSQLException: Hibernate operation: could not execute query; uncategorized SQLException for SQL [{call
xxx_pkg(?,?)}]; SQL state [99999]; error code [17144]; statement handle not executed; nested exception is java.sql.SQLException: statement handle not executed
at org.springframework.jdbc.support.AbstractFallbackSQLExceptionTranslator.translate(AbstractFallbackSQLExceptionTranslator.java:83)
at org.springframework.jdbc.support.AbstractFallbackSQLExceptionTranslator.translate(AbstractFallbackSQLExceptionTranslator.java:80)
at org.springframework.jdbc.support.AbstractFallbackSQLExceptionTranslator.translate(AbstractFallbackSQLExceptionTranslator.java:80)
at org.springframework.orm.hibernate3.HibernateAccessor.convertJdbcAccessException(HibernateAccessor.java:424)
at org.springframework.orm.hibernate3.HibernateAccessor.convertHibernateAccessException(HibernateAccessor.java:410)
at org.springframework.orm.hibernate3.HibernateTemplate.doExecute(HibernateTemplate.java:411)
at org.springframework.orm.hibernate3.HibernateTemplate.executeWithNativeSession(HibernateTemplate.java:374)
at org.springframework.orm.hibernate3.HibernateTemplate.findByNamedQueryAndNamedParam(HibernateTemplate.java:1006)
Caused by: java.sql.SQLException: statement handle not executed
at oracle.jdbc.driver.SQLStateMapping.newSQLException(SQLStateMapping.java:70)
at oracle.jdbc.driver.DatabaseError.newSQLException(DatabaseError.java:112)
at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:173)
at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:229)
at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:403)
at oracle.jdbc.driver.T4CStatement.doDescribe(T4CStatement.java:701)
at oracle.jdbc.driver.OracleStatement.getColumnIndex(OracleStatement.java:3355)
at oracle.jdbc.driver.OracleResultSetImpl.findColumn(OracleResultSetImpl.java:2009)
at oracle.jdbc.driver.OracleResultSet.getString(OracleResultSet.java:494)
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:2091)
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:2217)
at org.hibernate.loader.Loader.listIgnoreQueryCache(Loader.java:2108)
at org.hibernate.loader.Loader.list(Loader.java:2103)
at org.hibernate.loader.custom.CustomLoader.list(CustomLoader.java:289)
at org.hibernate.impl.SessionImpl.listCustomQuery(SessionImpl.java:1696)
at org.hibernate.impl.AbstractSessionImpl.list(AbstractSessionImpl.java:142)
at org.hibernate.impl.SQLQueryImpl.list(SQLQueryImpl.java:152)
at org.springframework.orm.hibernate3.HibernateTemplate$34.doInHibernate(HibernateTemplate.java:1015)
at org.springframework.orm.hibernate3.HibernateTemplate$34.doInHibernate(HibernateTemplate.java:1)
at org.springframework.orm.hibernate3.HibernateTemplate.doExecute(HibernateTemplate.java:406) -
Java.sql.SQLException: Statement cache size has not been set
All,
I am trying to create a light weight SQL Layer.It uses JDBC to connect to the database via weblogic. When my application tries to connect to the database using JDBC alone (outside of weblogic) everything works fine. But when the application tries to go via weblogic I am able to run the Statement objects successfully but when I try to run PreparedStatements I get the following error:
java.sql.SQLException: Statement cache size has not been set
at weblogic.rjvm.BasicOutboundRequest.sendReceive(BasicOutboundRequest.java:108)
at weblogic.rmi.internal.BasicRemoteRef.invoke(BasicRemoteRef.java:138)
at weblogic.jdbc.rmi.internal.ConnectionImpl_weblogic_jdbc_wrapper_PoolConnection_oracle_jdbc_driver_OracleConnection_812_WLStub.prepareStatement(Unknown Source)
i have checked the StatementCacheSize and it is 10. Is there any other setting that needs to be implemented for this to work? Has anybody seen this error before? Any help will be greatly appreciated.
Thanks.Pooja Bamba wrote:
I just noticed that I did not copy the jdbc log fully earlier. Here is the log:
JDBC log stream started at Thu Jun 02 14:57:56 EDT 2005
DriverManager.initialize: jdbc.drivers = null
JDBC DriverManager initialized
registerDriver: driver[className=oracle.jdbc.driver.OracleDriver,oracle.jdbc.driver.OracleDriver@12e0e2f]
DriverManager.getDriver("jdbc:oracle:oci:@devatl")
trying driver[className=oracle.jdbc.driver.OracleDriver,oracle.jdbc.driver.OracleDriver@12e0e2f]
getDriver returning driver[className=oracle.jdbc.driver.OracleDriver,oracle.jdbc.driver.OracleDriver@12e0e2f]
Oracle Jdbc tracing is not avaliable in a non-debug zip/jar file
DriverManager.getDriver("jdbc:oracle:oci:@devatl")
trying driver[className=oracle.jdbc.driver.OracleDriver,oracle.jdbc.driver.OracleDriver@12e0e2f]
getDriver returning driver[className=oracle.jdbc.driver.OracleDriver,oracle.jdbc.driver.OracleDriver@12e0e2f]
DriverManager.getDriver("jdbc:oracle:oci:@devatl")
trying driver[className=oracle.jdbc.driver.OracleDriver,oracle.jdbc.driver.OracleDriver@12e0e2f]
getDriver returning driver[className=oracle.jdbc.driver.OracleDriver,oracle.jdbc.driver.OracleDriver@12e0e2f]
DriverManager.getDriver("jdbc:oracle:oci:@devatl")
trying driver[className=oracle.jdbc.driver.OracleDriver,oracle.jdbc.driver.OracleDriver@12e0e2f]
getDriver returning driver[className=oracle.jdbc.driver.OracleDriver,oracle.jdbc.driver.OracleDriver@12e0e2f]
DriverManager.getDriver("jdbc:oracle:oci:@devatl")
trying driver[className=oracle.jdbc.driver.OracleDriver,oracle.jdbc.driver.OracleDriver@12e0e2f]
getDriver returning driver[className=oracle.jdbc.driver.OracleDriver,oracle.jdbc.driver.OracleDriver@12e0e2f]
registerDriver: driver[className=weblogic.jdbc.jts.Driver,weblogic.jdbc.jts.Driver@c0a150]
registerDriver: driver[className=weblogic.jdbc.pool.Driver,weblogic.jdbc.pool.Driver@17dff15]
SQLException: SQLState(null) vendor code(17095)
java.sql.SQLException: Statement cache size has not been set
at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:134)
at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:179)
at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:269)Hi. Ok. This is an Oracle driver bug/problem. Please show me the pool's definition
in the config.xml file. I'll bet you're defining the pool in an unusual way. Typically
we don't want any driver-level pooling to be involved. It is superfluous to the functionality
we provide, and can also conflict.
Joe
at oracle.jdbc.driver.OracleConnection.prepareCallWithKey(OracleConnection.java:1037)
at weblogic.jdbc.wrapper.PoolConnection_oracle_jdbc_driver_OracleConnection.prepareCallWithKey(Unknown Source)
at weblogic.jdbc.rmi.internal.ConnectionImpl_weblogic_jdbc_wrapper_PoolConnection_oracle_jdbc_driver_OracleConnection.prepareCallWithKey(Unknown Source)
at weblogic.jdbc.rmi.internal.ConnectionImpl_weblogic_jdbc_wrapper_PoolConnection_oracle_jdbc_driver_OracleConnection_WLSkel.invoke(Unknown Source)
at weblogic.rmi.internal.BasicServerRef.invoke(BasicServerRef.java:477)
at weblogic.rmi.internal.BasicServerRef$1.run(BasicServerRef.java:420)
at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:353)
at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:144)
at weblogic.rmi.internal.BasicServerRef.handleRequest(BasicServerRef.java:415)
at weblogic.rmi.internal.BasicExecuteRequest.execute(BasicExecuteRequest.java:30)
at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:197)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:170)
SQLException: SQLState(null) vendor code(17095) -
ODI Error: java.sql.SQLException: statement is not in batch mode
Greetings Gurus!
Would anybody know why changing a SQL view from
AND hapf.attribute1 LIKE '%Active%'
To
AND (hapf.attribute1 LIKE '%Active%' or hapf.attribute1 = ‘Frozen’)
cause ODI to fail?
This is the error message from ODI:
ODI-1228: Task SrcSet0 (Loading) fails on the target SUNOPSIS_ENGINE connection SUNOPSIS_MEMORY_ENGINE.
Caused By: java.sql.SQLException: statement is not in batch mode
at org.hsqldb.jdbc.Util.sqlException(Unknown Source)
at org.hsqldb.jdbc.Util.sqlException(Unknown Source)
at org.hsqldb.jdbc.Util.sqlExceptionSQL(Unknown Source)
at org.hsqldb.jdbc.JDBCPreparedStatement.executeBatch(Unknown Source)
at oracle.odi.runtime.agent.execution.sql.SQLCommand.end(SQLCommand.java:267)
at oracle.odi.runtime.agent.execution.sql.SQLExecutor.endExecution(SQLExecutor.java:156)
at oracle.odi.runtime.agent.execution.sql.SQLExecutor.endExecution(SQLExecutor.java:1)
at oracle.odi.runtime.agent.execution.DataMovementTaskExecutionHandler.handleTask(DataMovementTaskExecutionHandler.java:113)
at com.sunopsis.dwg.dbobj.SnpSessTaskSql.processTask(SnpSessTaskSql.java:2913)
at com.sunopsis.dwg.dbobj.SnpSessTaskSql.treatTask(SnpSessTaskSql.java:2625)
at com.sunopsis.dwg.dbobj.SnpSessStep.treatAttachedTasks(SnpSessStep.java:558)
at com.sunopsis.dwg.dbobj.SnpSessStep.treatSessStep(SnpSessStep.java:464)
at com.sunopsis.dwg.dbobj.SnpSession.treatSession(SnpSession.java:2093)
at oracle.odi.runtime.agent.processor.impl.StartSessRequestProcessor$2.doAction(StartSessRequestProcessor.java:366)
at oracle.odi.core.persistence.dwgobject.DwgObjectTemplate.execute(DwgObjectTemplate.java:216)
at oracle.odi.runtime.agent.processor.impl.StartSessRequestProcessor.doProcessStartSessTask(StartSessRequestProcessor.java:300)
at oracle.odi.runtime.agent.processor.impl.StartSessRequestProcessor.access$0(StartSessRequestProcessor.java:292)
at oracle.odi.runtime.agent.processor.impl.StartSessRequestProcessor$StartSessTask.doExecute(StartSessRequestProcessor.java:855)
at oracle.odi.runtime.agent.processor.task.AgentTask.execute(AgentTask.java:126)
at oracle.odi.runtime.agent.support.DefaultAgentTaskExecutor$2.run(DefaultAgentTaskExecutor.java:82)
at java.lang.Thread.run(Thread.java:662)
Caused by: org.hsqldb.HsqlException: statement is not in batch mode
at org.hsqldb.error.Error.error(Unknown Source)
at org.hsqldb.error.Error.error(Unknown Source)
... 19 more
Thank you!
RayLooks like the single quotes around Frozen are not ascii single quotes. They seem to be a copy paste job from MSWord.
It should be 'Frozen' and then you shouldnt have that issue
>
AND hapf.attribute1 LIKE '%Active%'
To
AND (hapf.attribute1 LIKE '%Active%' or hapf.attribute1 = ‘Frozen’)
>
Devil is in the details ;) -
Hi Friends,
I have have extended CO where i have added dynamic where condition to VO,it's throwing error.
Code added in controller :
public class Custom_HomePageCO extends HomePageCO
public Custom_HomePageCO()
public void processRequest(OAPageContext pageContext,OAWebBean webBean)
super.processRequest(pageContext,webBean);
System.out.println("NewClase");
OAApplicationModule am=pageContext.getApplicationModule(webBean);
System.out.println(am);
OAApplicationModule am1=(OAApplicationModule)am.findApplicationModule("TrackExpenseReportsAM");
System.out.println(am1);
OAViewObject vo=(OAViewObject)am1.findViewObject("TrackExpenseReportsVO");
System.out.println(vo);
vo.setWhereClause("REPORT_SUBMITTED_DATE is not null");
vo.executeQuery();
public void processFormRequest(OAPageContext pageContext,OAWebBean webBean)
super.processFormRequest(pageContext,webBean);
Error message:
Exception Details.
Error Details
Logout
Error Page
Exception Details.
oracle.apps.fnd.framework.OAException: oracle.jbo.SQLStmtException: JBO-27122: SQL error during statement preparation. Statement: SELECT * FROM (SELECT
AI.DESCRIPTION PURPOSE,
AI.INVOICE_CURRENCY_CODE CURRENCY_CODE,
AI.INVOICE_DATE REPORT_DATE,
AERH.REPORT_SUBMITTED_DATE REPORT_SUBMITTED_DATE,
AI.INVOICE_NUM REPORT_NUMBER,
TO_CHAR(decode(nvl(AI.AMT_DUE_CCARD_COMPANY, AERH.AMT_DUE_CCARD_COMPANY) + nvl(AI.AMT_DUE_EMPLOYEE, AERH.AMT_DUE_EMPLOYEE) + nvl(AERH.MAXIMUM_AMOUNT_TO_APPLY,0),
0, decode(AI.CANCELLED_DATE,
null, APS.GROSS_AMOUNT,
AERH.TOTAL),
nvl(AI.AMT_DUE_CCARD_COMPANY, AERH.AMT_DUE_CCARD_COMPANY) + nvl(AI.AMT_DUE_EMPLOYEE, AERH.AMT_DUE_EMPLOYEE) + nvl(AERH.MAXIMUM_AMOUNT_TO_APPLY,0)) ,
FND_CURRENCY_CACHE.GET_FORMAT_MASK
(AI.INVOICE_CURRENCY_CODE, 30)) ||' '|| AI.INVOICE_CURRENCY_CODE REPORT_TOTAL_CURRENCY,
TO_CHAR(decode(nvl(AI.AMT_DUE_CCARD_COMPANY, AERH.AMT_DUE_CCARD_COMPANY) + nvl(AI.AMT_DUE_EMPLOYEE, AERH.AMT_DUE_EMPLOYEE) + nvl(AERH.MAXIMUM_AMOUNT_TO_APPLY,0),
0, decode(AI.CANCELLED_DATE,
null, APS.GROSS_AMOUNT,
AERH.TOTAL),
nvl(AI.AMT_DUE_CCARD_COMPANY, AERH.AMT_DUE_CCARD_COMPANY) + nvl(AI.AMT_DUE_EMPLOYEE, AERH.AMT_DUE_EMPLOYEE) + nvl(AERH.MAXIMUM_AMOUNT_TO_APPLY,0)) ,
FND_CURRENCY_CACHE.GET_FORMAT_MASK
(AI.INVOICE_CURRENCY_CODE, 30))
REPORT_TOTAL,
P.PERSON_ID EMPLOYEE_ID,
AERH.REPORT_HEADER_ID REPORT_HEADER_ID,
P.FULL_NAME FULL_NAME ,
DECODE(AI.CANCELLED_DATE,null,
nvl(aerh.expense_status_code, DECODE(APS.GROSS_AMOUNT ,0,'PAID',
decode(AI.Payment_status_flag,'Y','PAID',
'N','INVOICED',
'P','PARPAID',NULL))),
'CANCELLED') STATUS_CODE,
AERH.source SOURCE,
NULL CURRENT_APPROVER,
ROUND(sysdate - AI.LAST_UPDATE_DATE) DAYS_SINCE_ACTIVITY,
AERH.RECEIPTS_STATUS RECEIPTS_STATUS_CODE,
AERH.HOLDING_REPORT_HEADER_ID,
AI.VENDOR_ID VENDOR_ID,
AERH.AMT_DUE_CCARD_COMPANY AMT_DUE_CCARD_COMPANY,
AERH.AMT_DUE_EMPLOYEE AMT_DUE_EMPLOYEE,
'CurrentApproverName' CURRENT_APPROVER_SWITCHER,
to_char(AERH.LAST_UPDATE_DATE, 'DD-MON-RRRR HH:MI:SS'),
AI.INVOICE_ID INVOICE_ID
FROM
AK_WEB_USER_SEC_ATTR_VALUES A,
PO_VENDORS PV,
AP_INVOICES AI,
AP_EXPENSE_REPORT_HEADERS AERH,
PER_PEOPLE_X P,
AP_PAYMENT_SCHEDULES APS
WHERE AI.INVOICE_ID= APS.INVOICE_ID
AND AI.INVOICE_ID = AERH.VOUCHNO(+)
AND AI.INVOICE_TYPE_LOOKUP_CODE||'' = 'EXPENSE REPORT'
AND A.ATTRIBUTE_CODE = 'ICX_HR_PERSON_ID'
AND PV.EMPLOYEE_ID = A.NUMBER_VALUE
AND A.WEB_USER_ID = :1
AND P.PERSON_ID = PV.EMPLOYEE_ID
AND PV.VENDOR_ID = AI.VENDOR_ID
AND DECODE (AI.PAYMENT_STATUS_FLAG,
'Y', sysdate - AI.LAST_UPDATE_DATE,
decode(APS.GROSS_AMOUNT , 0 ,sysdate - AI.LAST_UPDATE_DATE,0)
) <= 30
AND (AERH.SOURCE <> 'Both Pay' OR AERH.REPORT_HEADER_ID IS NULL)
UNION
SELECT
AI.DESCRIPTION PURPOSE,
AI.INVOICE_CURRENCY_CODE CURRENCY_CODE,
AI.INVOICE_DATE REPORT_DATE,
AERH.REPORT_SUBMITTED_DATE REPORT_SUBMITTED_DATE,
AI.INVOICE_NUM REPORT_NUMBER,
TO_CHAR(decode(nvl(AI.AMT_DUE_CCARD_COMPANY, AERH.AMT_DUE_CCARD_COMPANY) + nvl(AI.AMT_DUE_EMPLOYEE, AERH.AMT_DUE_EMPLOYEE) + nvl(AERH.MAXIMUM_AMOUNT_TO_APPLY,0),
0, decode(AI.CANCELLED_DATE,
null, APS.GROSS_AMOUNT,
AERH.TOTAL),
nvl(AI.AMT_DUE_CCARD_COMPANY, AERH.AMT_DUE_CCARD_COMPANY) + nvl(AI.AMT_DUE_EMPLOYEE, AERH.AMT_DUE_EMPLOYEE) + nvl(AERH.MAXIMUM_AMOUNT_TO_APPLY,0)) ,
FND_CURRENCY_CACHE.GET_FORMAT_MASK
(AI.INVOICE_CURRENCY_CODE, 30)) ||' '|| AI.INVOICE_CURRENCY_CODE REPORT_TOTAL_CURRENCY,
TO_CHAR(decode(nvl(AI.AMT_DUE_CCARD_COMPANY, AERH.AMT_DUE_CCARD_COMPANY) + nvl(AI.AMT_DUE_EMPLOYEE, AERH.AMT_DUE_EMPLOYEE) + nvl(AERH.MAXIMUM_AMOUNT_TO_APPLY,0),
0, decode(AI.CANCELLED_DATE,
null, APS.GROSS_AMOUNT,
AERH.TOTAL),
nvl(AI.AMT_DUE_CCARD_COMPANY, AERH.AMT_DUE_CCARD_COMPANY) + nvl(AI.AMT_DUE_EMPLOYEE, AERH.AMT_DUE_EMPLOYEE) + nvl(AERH.MAXIMUM_AMOUNT_TO_APPLY,0)),
FND_CURRENCY_CACHE.GET_FORMAT_MASK
(AI.INVOICE_CURRENCY_CODE, 30))
REPORT_TOTAL,
P.PERSON_ID EMPLOYEE_ID,
AERH.REPORT_HEADER_ID REPORT_HEADER_ID,
P.FULL_NAME FULL_NAME ,
DECODE(AI.CANCELLED_DATE,null,
nvl(aerh.expense_status_code, DECODE(APS.GROSS_AMOUNT ,0,'PAID',
decode(AI.Payment_status_flag,'Y','PAID',
'N','INVOICED',
'P','PARPAID',NULL))),
'CANCELLED') STATUS_CODE,
AERH.source SOURCE,
NULL CURRENT_APPROVER,
ROUND(sysdate - AI.LAST_UPDATE_DATE) DAYS_SINCE_ACTIVITY,
AERH.RECEIPTS_STATUS RECEIPTS_STATUS_CODE,
AERH.HOLDING_REPORT_HEADER_ID,
AI.VENDOR_ID VENDOR_ID,
AERH.AMT_DUE_CCARD_COMPANY AMT_DUE_CCARD_COMPANY,
AERH.AMT_DUE_EMPLOYEE AMT_DUE_EMPLOYEE,
'CurrentApproverName' CURRENT_APPROVER_SWITCHER,
to_char(AERH.LAST_UPDATE_DATE, 'DD-MON-RRRR HH:MI:SS'),
AI.INVOICE_ID INVOICE_ID
FROM
AK_WEB_USER_SEC_ATTR_VALUES A,
PO_VENDORS PV,
AP_INVOICES AI,
AP_EXPENSE_REPORT_HEADERS AERH,
PER_PEOPLE_X P,
AP_PAYMENT_SCHEDULES APS
WHERE AI.INVOICE_ID= APS.INVOICE_ID
AND AI.INVOICE_ID = AERH.VOUCHNO(+)
AND AI.INVOICE_TYPE_LOOKUP_CODE||'' in ('STANDARD','MIXED')
AND A.ATTRIBUTE_CODE = 'ICX_HR_PERSON_ID'
AND AI.PAID_ON_BEHALF_EMPLOYEE_ID = A.NUMBER_VALUE
AND A.WEB_USER_ID = :2
AND P.PERSON_ID = AI.PAID_ON_BEHALF_EMPLOYEE_ID
AND PV.VENDOR_ID = AI.VENDOR_ID
AND DECODE (AI.PAYMENT_STATUS_FLAG,
'Y', sysdate - AI.LAST_UPDATE_DATE,
decode(APS.GROSS_AMOUNT , 0 ,sysdate - AI.LAST_UPDATE_DATE,0)
) <= 30
AND (AERH.SOURCE <> 'Both Pay' OR AERH.REPORT_HEADER_ID IS NULL)
UNION ALL
SELECT
AERH.DESCRIPTION PURPOSE,
AERH.DEFAULT_CURRENCY_CODE CURRENCY_CODE,
AERH.WEEK_END_DATE REPORT_DATE,
AERH.REPORT_SUBMITTED_DATE REPORT_SUBMITTED_DATE,
AERH.INVOICE_NUM REPORT_NUMBER,
TO_CHAR(nvl(AERH.AMT_DUE_CCARD_COMPANY+AERH.AMT_DUE_EMPLOYEE+nvl(AERH.MAXIMUM_AMOUNT_TO_APPLY,0),AERH.TOTAL),FND_CURRENCY_CACHE.GET_FORMAT_MASK
(AERH.DEFAULT_CURRENCY_CODE,30)) ||' '|| AERH.DEFAULT_CURRENCY_CODE REPORT_TOTAL_CURRENCY,
TO_CHAR(nvl(AERH.AMT_DUE_CCARD_COMPANY+AERH.AMT_DUE_EMPLOYEE+nvl(AERH.MAXIMUM_AMOUNT_TO_APPLY,0),AERH.TOTAL),FND_CURRENCY_CACHE.GET_FORMAT_MASK
(AERH.DEFAULT_CURRENCY_CODE,30)) REPORT_TOTAL,
PER_EMPLOYEE.PERSON_ID EMPLOYEE_ID,
AERH.REPORT_HEADER_ID REPORT_HEADER_ID,
PER_EMPLOYEE.FULL_NAME FULL_NAME,
NVL(AERH.expense_status_code,
AP_WEB_OA_ACTIVE_PKG.GetReportStatusCode(AERH.Source, AERH.Workflow_approved_flag,
AERH.report_header_id, 'Y', 'N')) STATUS_CODE,
AERH.source SOURCE,
NVL (PER_APPROVER.full_name, AP_WEB_OA_ACTIVE_PKG.GetCurrentApprover(AERH.Source,
AERH.Workflow_approved_flag, AERH.report_header_id, AERH.expense_status_code)) CURRENT_APPROVER,
ROUND(NVL(sysdate - AERH.EXPENSE_LAST_STATUS_DATE,
sysdate - AERH.LAST_UPDATE_DATE)) DAYS_SINCE_ACTIVITY,
AERH.RECEIPTS_STATUS RECEIPTS_STATUS_CODE,
AERH.HOLDING_REPORT_HEADER_ID,
0 VENDOR_ID,
AERH.AMT_DUE_CCARD_COMPANY AMT_DUE_CCARD_COMPANY,
AERH.AMT_DUE_EMPLOYEE AMT_DUE_EMPLOYEE,
DECODE(AERH.expense_current_approver_id,
-99999, 'AMEMultipleApprovers',
decode(PER_APPROVER.full_name,
null,'CurrentApproverName','AMESingleApprover')) CURRENT_APPROVER_SWITCHER,
to_char(AERH.LAST_UPDATE_DATE, 'DD-MON-RRRR HH:MI:SS'),
-1 INVOICE_ID
FROM
AK_WEB_USER_SEC_ATTR_VALUES A,
AP_EXPENSE_REPORT_HEADERS AERH,
PER_PEOPLE_X PER_EMPLOYEE,
PER_PEOPLE_X PER_APPROVER
WHERE AERH.VOUCHNO +0 =0
AND A.ATTRIBUTE_CODE = 'ICX_HR_PERSON_ID'
AND AERH.EMPLOYEE_ID = A.NUMBER_VALUE
AND A.WEB_USER_ID = :3
AND PER_EMPLOYEE.PERSON_ID = AERH.EMPLOYEE_ID
AND (AERH.Source <> 'NonValidatedWebExpense'
OR AERH.Workflow_approved_flag IS NULL)
AND AERH.expense_current_approver_id = PER_APPROVER.person_id
AND decode(AERH.total,0,ROUND(NVL(sysdate - AERH.EXPENSE_LAST_STATUS_DATE,sysdate - AERH.LAST_UPDATE_DATE)),30) <= 30
AND AERH.SOURCE <> 'Both Pay'
UNION
SELECT
AERH.DESCRIPTION PURPOSE,
AERH.DEFAULT_CURRENCY_CODE CURRENCY_CODE,
AERH.WEEK_END_DATE REPORT_DATE,
AERH.REPORT_SUBMITTED_DATE REPORT_SUBMITTED_DATE,
AERH.INVOICE_NUM REPORT_NUMBER,
TO_CHAR(nvl(AERH.AMT_DUE_CCARD_COMPANY+AERH.AMT_DUE_EMPLOYEE+nvl(AERH.MAXIMUM_AMOUNT_TO_APPLY,0),AERH.TOTAL),FND_CURRENCY_CACHE.GET_FORMAT_MASK
(AERH.DEFAULT_CURRENCY_CODE,30)) ||' '|| AERH.DEFAULT_CURRENCY_CODE REPORT_TOTAL_CURRENCY,
TO_CHAR(nvl(AERH.AMT_DUE_CCARD_COMPANY+AERH.AMT_DUE_EMPLOYEE+nvl(AERH.MAXIMUM_AMOUNT_TO_APPLY,0),AERH.TOTAL),FND_CURRENCY_CACHE.GET_FORMAT_MASK
(AERH.DEFAULT_CURRENCY_CODE,30)) REPORT_TOTAL,
PER_EMPLOYEE.PERSON_ID EMPLOYEE_ID,
AERH.REPORT_HEADER_ID REPORT_HEADER_ID,
PER_EMPLOYEE.FULL_NAME FULL_NAME,
NVL(AERH.expense_status_code,
AP_WEB_OA_ACTIVE_PKG.GetReportStatusCode(AERH.Source, AERH.Workflow_approved_flag,
AERH.report_header_id,'Y','N')) STATUS_CODE,
AERH.source SOURCE,
NVL (PER_APPROVER.full_name, AP_WEB_OA_ACTIVE_PKG.GetCurrentApprover(AERH.Source,
AERH.Workflow_approved_flag, AERH.report_header_id, AERH.expense_status_code)) CURRENT_APPROVER,
ROUND(NVL(sysdate - AERH.EXPENSE_LAST_STATUS_DATE,
sysdate - AERH.LAST_UPDATE_DATE)) DAYS_SINCE_ACTIVITY,
AERH.RECEIPTS_STATUS RECEIPTS_STATUS_CODE,
AERH.HOLDING_REPORT_HEADER_ID,
0 VENDOR_ID,
AERH.AMT_DUE_CCARD_COMPANY AMT_DUE_CCARD_COMPANY,
AERH.AMT_DUE_EMPLOYEE AMT_DUE_EMPLOYEE,
DECODE(AERH.expense_current_approver_id,
-99999, 'AMEMultipleApprovers',
decode(PER_APPROVER.full_name,
null,'CurrentApproverName','AMESingleApprover')) CURRENT_APPROVER_SWITCHER,
to_char(AERH.LAST_UPDATE_DATE, 'DD-MON-RRRR HH:MI:SS'),
-1 INVOICE_ID
FROM
AK_WEB_USER_SEC_ATTR_VALUES A,
AP_EXPENSE_REPORT_HEADERS AERH,
PER_PEOPLE_X PER_EMPLOYEE,
PER_PEOPLE_X PER_APPROVER
WHERE AERH.VOUCHNO +0=0
AND A.ATTRIBUTE_CODE = 'ICX_HR_PERSON_ID'
AND AERH.PAID_ON_BEHALF_EMPLOYEE_ID = A.NUMBER_VALUE
AND A.WEB_USER_ID = :4
AND PER_EMPLOYEE.PERSON_ID = PAID_ON_BEHALF_EMPLOYEE_ID
AND AERH.EMPLOYEE_ID IS NULL
AND (AERH.Source <> 'NonValidatedWebExpense'
OR AERH.Workflow_approved_flag IS NULL)
AND AERH.expense_current_approver_id = PER_APPROVER.person_id
AND decode(AERH.total,0,ROUND(NVL(sysdate - AERH.EXPENSE_LAST_STATUS_DATE,sysdate - AERH.LAST_UPDATE_DATE)),30) <= 30
AND AERH.SOURCE <> 'Both Pay'
UNION ALL
/* This select is for invoice imported reports by contingent workers */
SELECT
AI.DESCRIPTION PURPOSE,
AI.INVOICE_CURRENCY_CODE CURRENCY_CODE,
AI.INVOICE_DATE REPORT_DATE,
AERH.REPORT_SUBMITTED_DATE REPORT_SUBMITTED_DATE,
AI.INVOICE_NUM REPORT_NUMBER,
TO_CHAR(decode(nvl(AI.AMT_DUE_CCARD_COMPANY, AERH.AMT_DUE_CCARD_COMPANY) + nvl(AI.AMT_DUE_EMPLOYEE, AERH.AMT_DUE_EMPLOYEE) + nvl(AERH.MAXIMUM_AMOUNT_TO_APPLY,0),
0, decode(AI.CANCELLED_DATE,
null, APS.GROSS_AMOUNT,
AERH.TOTAL),
nvl(AI.AMT_DUE_CCARD_COMPANY, AERH.AMT_DUE_CCARD_COMPANY) + nvl(AI.AMT_DUE_EMPLOYEE, AERH.AMT_DUE_EMPLOYEE) + nvl(AERH.MAXIMUM_AMOUNT_TO_APPLY,0)) ,
FND_CURRENCY_CACHE.GET_FORMAT_MASK
(AI.INVOICE_CURRENCY_CODE, 30)) ||' '|| AI.INVOICE_CURRENCY_CODE REPORT_TOTAL_CURRENCY,
TO_CHAR(decode(nvl(AI.AMT_DUE_CCARD_COMPANY, AERH.AMT_DUE_CCARD_COMPANY) + nvl(AI.AMT_DUE_EMPLOYEE, AERH.AMT_DUE_EMPLOYEE) + nvl(AERH.MAXIMUM_AMOUNT_TO_APPLY,0),
0, decode(AI.CANCELLED_DATE,
null, APS.GROSS_AMOUNT,
AERH.TOTAL),
nvl(AI.AMT_DUE_CCARD_COMPANY, AERH.AMT_DUE_CCARD_COMPANY) + nvl(AI.AMT_DUE_EMPLOYEE, AERH.AMT_DUE_EMPLOYEE) + nvl(AERH.MAXIMUM_AMOUNT_TO_APPLY,0)) ,
FND_CURRENCY_CACHE.GET_FORMAT_MASK
(AI.INVOICE_CURRENCY_CODE, 30))
REPORT_TOTAL,
P.PERSON_ID EMPLOYEE_ID,
AERH.REPORT_HEADER_ID REPORT_HEADER_ID,
P.FULL_NAME FULL_NAME ,
DECODE(AI.CANCELLED_DATE,null,
nvl(aerh.expense_status_code, DECODE(APS.GROSS_AMOUNT ,0,'PAID',
decode(AI.Payment_status_flag,'Y','PAID',
'N','INVOICED',
'P','PARPAID',NULL))),
'CANCELLED') STATUS_CODE,
AERH.source SOURCE,
NULL CURRENT_APPROVER,
ROUND(sysdate - AI.LAST_UPDATE_DATE) DAYS_SINCE_ACTIVITY,
AERH.RECEIPTS_STATUS RECEIPTS_STATUS_CODE,
AERH.HOLDING_REPORT_HEADER_ID,
AI.VENDOR_ID VENDOR_ID,
AERH.AMT_DUE_CCARD_COMPANY AMT_DUE_CCARD_COMPANY,
AERH.AMT_DUE_EMPLOYEE AMT_DUE_EMPLOYEE,
'CurrentApproverName' CURRENT_APPROVER_SWITCHER,
to_char(AERH.LAST_UPDATE_DATE, 'DD-MON-RRRR HH:MI:SS'),
AI.INVOICE_ID INVOICE_ID
FROM
AK_WEB_USER_SEC_ATTR_VALUES A,
AP_INVOICES AI,
AP_EXPENSE_REPORT_HEADERS AERH,
PER_PEOPLE_X P,
AP_PAYMENT_SCHEDULES APS
WHERE AI.INVOICE_ID= APS.INVOICE_ID
AND AI.INVOICE_ID = AERH.VOUCHNO(+)
AND AI.INVOICE_TYPE_LOOKUP_CODE||'' = 'EXPENSE REPORT'
AND A.ATTRIBUTE_CODE = 'ICX_HR_PERSON_ID'
AND AI.PAID_ON_BEHALF_EMPLOYEE_ID = A.NUMBER_VALUE
AND A.WEB_USER_ID = :5
AND P.PERSON_ID = AI.PAID_ON_BEHALF_EMPLOYEE_ID
AND AP_WEB_DB_HR_INT_PKG.IsPersonCwk(AI.PAID_ON_BEHALF_EMPLOYEE_ID)='Y'
AND DECODE (AI.PAYMENT_STATUS_FLAG,
'Y', sysdate - AI.LAST_UPDATE_DATE,
decode(APS.GROSS_AMOUNT , 0 ,sysdate - AI.LAST_UPDATE_DATE,0)
) <= 30
AND (AERH.SOURCE <> 'Both Pay' OR AERH.REPORT_HEADER_ID IS NULL)) QRSLT WHERE (REPORT_SUBMITTED_DATE is not null)
at oracle.apps.fnd.framework.OAException.wrapperException(OAException.java:891)
at oracle.apps.fnd.framework.webui.OAWebBeanHelper.processRequest(OAWebBeanHelper.java:603)
at oracle.apps.fnd.framework.webui.OAWebBeanContainerHelper.processRequest(OAWebBeanContainerHelper.java:247)
at oracle.apps.fnd.framework.webui.OAPageLayoutHelper.processRequest(OAPageLayoutHelper.java:1136)
at oracle.apps.fnd.framework.webui.beans.layout.OAPageLayoutBean.processRequest(OAPageLayoutBean.java:1569)
at oracle.apps.fnd.framework.webui.OAWebBeanHelper.processRequestChildren(OAWebBeanHelper.java:959)
at oracle.apps.fnd.framework.webui.OAWebBeanHelper.processRequestChildren(OAWebBeanHelper.java:926)
at oracle.apps.fnd.framework.webui.OAWebBeanHelper.processRequest(OAWebBeanHelper.java:646)
at oracle.apps.fnd.framework.webui.OAWebBeanContainerHelper.processRequest(OAWebBeanContainerHelper.java:247)
at oracle.apps.fnd.framework.webui.beans.form.OAFormBean.processRequest(OAFormBean.java:385)
at oracle.apps.fnd.framework.webui.OAWebBeanHelper.processRequestChildren(OAWebBeanHelper.java:959)
at oracle.apps.fnd.framework.webui.OAWebBeanHelper.processRequestChildren(OAWebBeanHelper.java:926)
at oracle.apps.fnd.framework.webui.OAWebBeanHelper.processRequest(OAWebBeanHelper.java:646)
at oracle.apps.fnd.framework.webui.OAWebBeanContainerHelper.processRequest(OAWebBeanContainerHelper.java:247)
at oracle.apps.fnd.framework.webui.beans.OABodyBean.processRequest(OABodyBean.java:353)
at oracle.apps.fnd.framework.webui.OAPageBean.processRequest(OAPageBean.java:2360)
at oracle.apps.fnd.framework.webui.OAPageBean.preparePage(OAPageBean.java:1759)
at oracle.apps.fnd.framework.webui.OAPageBean.preparePage(OAPageBean.java:511)
at oracle.apps.fnd.framework.webui.OAPageBean.preparePage(OAPageBean.java:432)
at _OA._jspService(OA.jsp:33)
at com.orionserver.http.OrionHttpJspPage.service(OrionHttpJspPage.java:56)
at oracle.jsp.runtimev2.JspPageTable.service(JspPageTable.java:317)
at oracle.jsp.runtimev2.JspServlet.internalService(JspServlet.java:465)
at oracle.jsp.runtimev2.JspServlet.service(JspServlet.java:379)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at com.evermind.server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:727)
at com.evermind.server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:306)
at com.evermind.server.http.HttpRequestHandler.processRequest(HttpRequestHandler.java:767)
at com.evermind.server.http.HttpRequestHandler.run(HttpRequestHandler.java:259)
at com.evermind.server.http.HttpRequestHandler.run(HttpRequestHandler.java:106)
at EDU.oswego.cs.dl.util.concurrent.PooledExecutor$Worker.run(PooledExecutor.java:803)
at java.lang.Thread.run(Thread.java:534)
## Detail 0 ##
java.sql.SQLException: ORA-01008: not all variables bound
at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:134)
at oracle.jdbc.ttc7.TTIoer.processError(TTIoer.java:289)
at oracle.jdbc.ttc7.Oall7.receive(Oall7.java:583)
at oracle.jdbc.ttc7.TTC7Protocol.doOall7(TTC7Protocol.java:1986)
at oracle.jdbc.ttc7.TTC7Protocol.parseExecuteFetch(TTC7Protocol.java:1144)
at oracle.jdbc.driver.OracleStatement.doExecuteQuery(OracleStatement.java:2548)
at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:2933)
at oracle.jdbc.driver.OraclePreparedStatement.executeUpdate(OraclePreparedStatement.java:650)
at oracle.jdbc.driver.OraclePreparedStatement.executeQuery(OraclePreparedStatement.java:578)
at oracle.jbo.server.QueryCollection.buildResultSet(QueryCollection.java:631)
at oracle.jbo.server.QueryCollection.executeQuery(QueryCollection.java:518)
at oracle.jbo.server.ViewObjectImpl.executeQueryForCollection(ViewObjectImpl.java:3375)
at oracle.jbo.server.OAJboViewObjectImpl.executeQueryForCollection(OAJboViewObjectImpl.java:828)
at oracle.apps.fnd.framework.server.OAViewObjectImpl.executeQueryForCollection(OAViewObjectImpl.java:4525)
at oracle.jbo.server.ViewRowSetImpl.execute(ViewRowSetImpl.java:574)
at oracle.jbo.server.ViewRowSetImpl.execute(ViewRowSetImpl.java:544)
at oracle.jbo.server.ViewRowSetImpl.executeDetailQuery(ViewRowSetImpl.java:619)
at oracle.jbo.server.ViewObjectImpl.executeDetailQuery(ViewObjectImpl.java:3339)
at oracle.jbo.server.ViewObjectImpl.executeQuery(ViewObjectImpl.java:3326)
at oracle.apps.fnd.framework.server.OAViewObjectImpl.executeQuery(OAViewObjectImpl.java:441)
at oracle.apps.ap.oie.webui.Custom_HomePageCO.processRequest(Custom_HomePageCO.java:26)
at oracle.apps.fnd.framework.webui.OAWebBeanHelper.processRequest(OAWebBeanHelper.java:587)
at oracle.apps.fnd.framework.webui.OAWebBeanContainerHelper.processRequest(OAWebBeanContainerHelper.java:247)
at oracle.apps.fnd.framework.webui.OAPageLayoutHelper.processRequest(OAPageLayoutHelper.java:1136)
at oracle.apps.fnd.framework.webui.beans.layout.OAPageLayoutBean.processRequest(OAPageLayoutBean.java:1569)
at oracle.apps.fnd.framework.webui.OAWebBeanHelper.processRequestChildren(OAWebBeanHelper.java:959)
at oracle.apps.fnd.framework.webui.OAWebBeanHelper.processRequestChildren(OAWebBeanHelper.java:926)
at oracle.apps.fnd.framework.webui.OAWebBeanHelper.processRequest(OAWebBeanHelper.java:646)
at oracle.apps.fnd.framework.webui.OAWebBeanContainerHelper.processRequest(OAWebBeanContainerHelper.java:247)
at oracle.apps.fnd.framework.webui.beans.form.OAFormBean.processRequest(OAFormBean.java:385)
at oracle.apps.fnd.framework.webui.OAWebBeanHelper.processRequestChildren(OAWebBeanHelper.java:959)
at oracle.apps.fnd.framework.webui.OAWebBeanHelper.processRequestChildren(OAWebBeanHelper.java:926)
at oracle.apps.fnd.framework.webui.OAWebBeanHelper.processRequest(OAWebBeanHelper.java:646)
at oracle.apps.fnd.framework.webui.OAWebBeanContainerHelper.processRequest(OAWebBeanContainerHelper.java:247)
at oracle.apps.fnd.framework.webui.beans.OABodyBean.processRequest(OABodyBean.java:353)
at oracle.apps.fnd.framework.webui.OAPageBean.processRequest(OAPageBean.java:2360)
at oracle.apps.fnd.framework.webui.OAPageBean.preparePage(OAPageBean.java:1759)
at oracle.apps.fnd.framework.webui.OAPageBean.preparePage(OAPageBean.java:511)
at oracle.apps.fnd.framework.webui.OAPageBean.preparePage(OAPageBean.java:432)
at _OA._jspService(OA.jsp:33)
at com.orionserver.http.OrionHttpJspPage.service(OrionHttpJspPage.java:56)
at oracle.jsp.runtimev2.JspPageTable.service(JspPageTable.java:317)
at oracle.jsp.runtimev2.JspServlet.internalService(JspServlet.java:465)
at oracle.jsp.runtimev2.JspServlet.service(JspServlet.java:379)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at com.evermind.server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:727)
at com.evermind.server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:306)
at com.evermind.server.http.HttpRequestHandler.processRequest(HttpRequestHandler.java:767)
at com.evermind.server.http.HttpRequestHandler.run(HttpRequestHandler.java:259)
at com.evermind.server.http.HttpRequestHandler.run(HttpRequestHandler.java:106)
at EDU.oswego.cs.dl.util.concurrent.PooledExecutor$Worker.run(PooledExecutor.java:803)
at java.lang.Thread.run(Thread.java:534)
java.sql.SQLException: ORA-01008: not all variables bound
at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:134)
at oracle.jdbc.ttc7.TTIoer.processError(TTIoer.java:289)
at oracle.jdbc.ttc7.Oall7.receive(Oall7.java:583)
at oracle.jdbc.ttc7.TTC7Protocol.doOall7(TTC7Protocol.java:1986)
at oracle.jdbc.ttc7.TTC7Protocol.parseExecuteFetch(TTC7Protocol.java:1144)
at oracle.jdbc.driver.OracleStatement.doExecuteQuery(OracleStatement.java:2548)
at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:2933)
at oracle.jdbc.driver.OraclePreparedStatement.executeUpdate(OraclePreparedStatement.java:650)
at oracle.jdbc.driver.OraclePreparedStatement.executeQuery(OraclePreparedStatement.java:578)
at oracle.jbo.server.QueryCollection.buildResultSet(QueryCollection.java:631)
at oracle.jbo.server.QueryCollection.executeQuery(QueryCollection.java:518)
at oracle.jbo.server.ViewObjectImpl.executeQueryForCollection(ViewObjectImpl.java:3375)
at oracle.jbo.server.OAJboViewObjectImpl.executeQueryForCollection(OAJboViewObjectImpl.java:828)
at oracle.apps.fnd.framework.server.OAViewObjectImpl.executeQueryForCollection(OAViewObjectImpl.java:4525)
at oracle.jbo.server.ViewRowSetImpl.execute(ViewRowSetImpl.java:574)
at oracle.jbo.server.ViewRowSetImpl.execute(ViewRowSetImpl.java:544)
at oracle.jbo.server.ViewRowSetImpl.executeDetailQuery(ViewRowSetImpl.java:619)
at oracle.jbo.server.ViewObjectImpl.executeDetailQuery(ViewObjectImpl.java:3339)
at oracle.jbo.server.ViewObjectImpl.executeQuery(ViewObjectImpl.java:3326)
at oracle.apps.fnd.framework.server.OAViewObjectImpl.executeQuery(OAViewObjectImpl.java:441)
at oracle.apps.ap.oie.webui.Custom_HomePageCO.processRequest(Custom_HomePageCO.java:26)
at oracle.apps.fnd.framework.webui.OAWebBeanHelper.processRequest(OAWebBeanHelper.java:587)
at oracle.apps.fnd.framework.webui.OAWebBeanContainerHelper.processRequest(OAWebBeanContainerHelper.java:247)
at oracle.apps.fnd.framework.webui.OAPageLayoutHelper.processRequest(OAPageLayoutHelper.java:1136)
at oracle.apps.fnd.framework.webui.beans.layout.OAPageLayoutBean.processRequest(OAPageLayoutBean.java:1569)
at oracle.apps.fnd.framework.webui.OAWebBeanHelper.processRequestChildren(OAWebBeanHelper.java:959)
at oracle.apps.fnd.framework.webui.OAWebBeanHelper.processRequestChildren(OAWebBeanHelper.java:926)
at oracle.apps.fnd.framework.webui.OAWebBeanHelper.processRequest(OAWebBeanHelper.java:646)
at oracle.apps.fnd.framework.webui.OAWebBeanContainerHelper.processRequest(OAWebBeanContainerHelper.java:247)
at oracle.apps.fnd.framework.webui.beans.form.OAFormBean.processRequest(OAFormBean.java:385)
at oracle.apps.fnd.framework.webui.OAWebBeanHelper.processRequestChildren(OAWebBeanHelper.java:959)
at oracle.apps.fnd.framework.webui.OAWebBeanHelper.processRequestChildren(OAWebBeanHelper.java:926)
at oracle.apps.fnd.framework.webui.OAWebBeanHelper.processRequest(OAWebBeanHelper.java:646)
at oracle.apps.fnd.framework.webui.OAWebBeanContainerHelper.processRequest(OAWebBeanContainerHelper.java:247)
at oracle.apps.fnd.framework.webui.beans.OABodyBean.processRequest(OABodyBean.java:353)
at oracle.apps.fnd.framework.webui.OAPageBean.processRequest(OAPageBean.java:2360)
at oracle.apps.fnd.framework.webui.OAPageBean.preparePage(OAPageBean.java:1759)
at oracle.apps.fnd.framework.webui.OAPageBean.preparePage(OAPageBean.java:511)
at oracle.apps.fnd.framework.webui.OAPageBean.preparePage(OAPageBean.java:432)
at _OA._jspService(OA.jsp:33)
at com.orionserver.http.OrionHttpJspPage.service(OrionHttpJspPage.java:56)
at oracle.jsp.runtimev2.JspPageTable.service(JspPageTable.java:317)
at oracle.jsp.runtimev2.JspServlet.internalService(JspServlet.java:465)
at oracle.jsp.runtimev2.JspServlet.service(JspServlet.java:379)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at com.evermind.server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:727)
at com.evermind.server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:306)
at com.evermind.server.http.HttpRequestHandler.processRequest(HttpRequestHandler.java:767)
at com.evermind.server.http.HttpRequestHandler.run(HttpRequestHandler.java:259)
at com.evermind.server.http.HttpRequestHandler.run(HttpRequestHandler.java:106)
at EDU.oswego.cs.dl.util.concurrent.PooledExecutor$Worker.run(PooledExecutor.java:803)
at java.lang.Thread.run(Thread.java:534)
I have took the sql from error message and i tried executing the same in toad... i was able execute it smoothly... i dot know why its working while running the page
Please help me guys...
Thanks,
PavanHi Shobhi,
Actually this relates to the Iexpenese Module. The VO is "oracle.apps.ap.oie.server.TrackExpenseReportsVO"(Seeded)
The user Expense home screen is based on the above VO and this view returning multiple line for the same expense number which should be eliminated.
so for this i need to filter data by adding where clause dynamically on top of the existing where conditions so that i can eliminate the duplicate row.
Please suggest me !! how to move on
Thanks,
Pavan V
91-9640871542 -
Hello all,
We have configured JDBC Sender Adapter which fetches around 10K records with poll interval 1hr from DB2 System .
It was working fine,suddenly it started throwing an exception in Adapter Monitoring :
Error during conversion of query result to XML: java.sql.SQLException: Cursor state not valid.
It is not fetching any records.
Without changing any configurations when we tried to fetch to around 1000 records it's working fine.
For 10K records same exception persists
What could be the reason ?How to resolve this issue?
regards
GangaPrasadHello Christophe ,
Trace in VA :::
Date : 05/09/2008
Time : 11:45:57:750
Message : Unexpected error converting database resultset to XML, reason: java.sql.SQLException: Cursor state not valid.
at java.lang.Throwable.<init>(Throwable.java:194)
at java.lang.Exception.<init>(Exception.java:41)
at java.sql.SQLException.<init>(SQLException.java:40)
at com.ibm.as400.access.JDError.throwSQLException(JDError.java:389)
at com.ibm.as400.access.JDError.throwSQLException(JDError.java:366)
at com.ibm.as400.access.AS400JDBCResultSet.getValue(AS400JDBCResultSet.java:3580)
at com.ibm.as400.access.AS400JDBCResultSet.getString(AS400JDBCResultSet.java:3223)
at sun.reflect.GeneratedMethodAccessor459222074.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:309)
at com.sap.aii.adapter.jdbc.sql.jdbctrace.TraceInvocationHandler.invoke(TraceInvocationHandler.java:45)
at com.sap.aii.adapter.jdbc.sql.jdbctrace.$Proxy254.getString(Unknown Source)
at com.sap.aii.adapter.jdbc.JDBC2XI.convert2XML(JDBC2XI.java:954)
at com.sap.aii.adapter.jdbc.JDBC2XI.invoke(JDBC2XI.java:492)
at com.sap.aii.af.service.scheduler.JobBroker$Worker.run(JobBroker.java:475)
at com.sap.engine.core.thread.impl3.ActionObject.run(ActionObject.java:37)
at com.sap.engine.core.thread.impl3.SingleThread.execute(SingleThread.java:99)
at com.sap.engine.core.thread.impl3.SingleThread.run(SingleThread.java:119)
Severity : Error
Category : /Applications/ExchangeInfrastructure/AdapterFramework/Services/ADAPTER/ADMIN/JDBC
Location : com.sap.aii.adapter.jdbc.JDBC2XI.convert2XML(ResultSet, ResultSetMetaData)
Application :
Thread : XI JDBC2XI[JDBC_SND_DB2_VehicleReceiving/DB2PRD00/]_170
Datasource : 12428950:/usr/sap/PXI/DVEBMGS01/j2ee/cluster/server0/log/applications/com.sap.xi/xi.log
Message ID : 00145E742794005E0014980B000000BE00044CC763766C4F
Source Name : /Applications/ExchangeInfrastructure/AdapterFramework/Services/ADAPTER/ADMIN/JDBC
Argument Objs : java.sql.SQLException: Cursor state not valid.
at java.lang.Throwable.<init>(Throwable.java:194)
at java.lang.Exception.<init>(Exception.java:41)
at java.sql.SQLException.<init>(SQLException.java:40)
at com.ibm.as400.access.JDError.throwSQLException(JDError.java:389)
at com.ibm.as400.access.JDError.throwSQLException(JDError.java:366)
at com.ibm.as400.access.AS400JDBCResultSet.getValue(AS400JDBCResultSet.java:3580)
at com.ibm.as400.access.AS400JDBCResultSet.getString(AS400JDBCResultSet.java:3223)
at sun.reflect.GeneratedMethodAccessor459222074.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:309)
at com.sap.aii.adapter.jdbc.sql.jdbctrace.TraceInvocationHandler.invoke(TraceInvocationHandler.java:45)
at com.sap.aii.adapter.jdbc.sql.jdbctrace.$Proxy254.getString(Unknown Source)
at com.sap.aii.adapter.jdbc.JDBC2XI.convert2XML(JDBC2XI.java:954)
at com.sap.aii.adapter.jdbc.JDBC2XI.invoke(JDBC2XI.java:492)
at com.sap.aii.af.service.scheduler.JobBroker$Worker.run(JobBroker.java:475)
at com.sap.engine.core.thread.impl3.ActionObject.run(ActionObject.java:37)
at com.sap.engine.core.thread.impl3.SingleThread.execute(SingleThread.java:99)
at com.sap.engine.core.thread.impl3.SingleThread.run(SingleThread.java:119)
Arguments : java.sql.SQLException: Cursor state not valid.
at java.lang.Throwable.<init>(Throwable.java:194)
at java.lang.Exception.<init>(Exception.java:41)
at java.sql.SQLException.<init>(SQLException.java:40)
at com.ibm.as400.access.JDError.throwSQLException(JDError.java:389)
at com.ibm.as400.access.JDError.throwSQLException(JDError.java:366)
at com.ibm.as400.access.AS400JDBCResultSet.getValue(AS400JDBCResultSet.java:3580)
at com.ibm.as400.access.AS400JDBCResultSet.getString(AS400JDBCResultSet.java:3223)
at sun.reflect.GeneratedMethodAccessor459222074.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:309)
at com.sap.aii.adapter.jdbc.sql.jdbctrace.TraceInvocationHandler.invoke(TraceInvocationHandler.java:45)
at com.sap.aii.adapter.jdbc.sql.jdbctrace.$Proxy254.getString(Unknown Source)
at com.sap.aii.adapter.jdbc.JDBC2XI.convert2XML(JDBC2XI.java:954)
at com.sap.aii.adapter.jdbc.JDBC2XI.invoke(JDBC2XI.java:492)
at com.sap.aii.af.service.scheduler.JobBroker$Worker.run(JobBroker.java:475)
at com.sap.engine.core.thread.impl3.ActionObject.run(ActionObject.java:37)
at com.sap.engine.core.thread.impl3.SingleThread.execute(SingleThread.java:99)
at com.sap.engine.core.thread.impl3.SingleThread.run(SingleThread.java:119)
Dsr Component :
Dsr Transaction : d1f629d01d9b11dd984200145e742794
Dsr User :
Indent : 0
Level : 0
Message Code :
Message Type : 1
Relatives : com.sap.aii.adapter.jdbc.JDBC2XI
Resource Bundlename :
Session : 0
Source : /Applications/ExchangeInfrastructure/AdapterFramework/Services/ADAPTER/ADMIN/JDBC
ThreadObject : XI JDBC2XI[JDBC_SND_DB2_VehicleReceiving/DB2PRD00/]_170
Transaction : SAP J2EE Engine JTA Transaction : [0ffffffbdffffffa6ffffff960086]
User : J2EE_GUEST
Regards
Ganga Prasad -
Java.sql.SQLException: You cannot commit during a managed transaction!
Hi all,
I'm just trying to get the tutorial Car EJP app to work with Jboss 3.2.1
When creating a new car record by calling the car.edit() method it reaches
the line
pm.makePersistent (car);
and then throws the exception
com.solarmetric.kodo.runtime.FatalDataStoreException:
com.solarmetric.kodo.runtime.FatalDataStoreException:
java.sql.SQLException: You cannot commit during a managed transaction!
[code=0;state=null]
When checking the jboss log, it is clear that kodo is trying to commit the
sequence update :
at
org.jboss.resource.adapter.jdbc.WrappedConnection.commit(WrappedConnection.java:477)
at
com.solarmetric.kodo.impl.jdbc.SQLExecutionManagerImpl.commit(SQLExecutionManagerImpl.java:783)
at
com.solarmetric.kodo.impl.jdbc.schema.DBSequenceFactory.updateSequence(DBSequenceFactory.java:267)
at
com.solarmetric.kodo.impl.jdbc.schema.DBSequenceFactory.getNext(DBSequenceFactory.java:111)
at
com.solarmetric.kodo.impl.jdbc.runtime.JDBCStoreManager.newDataStoreId(JDBCStoreManager.java:598)
at
com.solarmetric.kodo.runtime.PersistenceManagerImpl.makePersistentFilter(PersistenceManagerImpl.java:1418)
at
com.solarmetric.kodo.runtime.PersistenceManagerImpl.makePersistent(PersistenceManagerImpl.java:1348)
at com.titan.kodojdotest.ejb.CarBean.edit(CarBean.java:51)
How should i get this to work ????
tx for your help,
Roger.It appears that you are using ConnectionFactoryName. First be sure to
set a ConnectionFactory2Name which will be a non-transactional (in terms
of global transaction) DataSource for sequence generation for which you
are seeing here. There are also some issues with JBoss's connection
pooling on certain dbs if you are still seeing the problem after this.
If so, try setting ConnectionURL, ConnectionPassword, etc explicitly
Roger Laenen wrote:
Hi all,
I'm just trying to get the tutorial Car EJP app to work with Jboss 3.2.1
When creating a new car record by calling the car.edit() method it reaches
the line
pm.makePersistent (car);
and then throws the exception
com.solarmetric.kodo.runtime.FatalDataStoreException:
com.solarmetric.kodo.runtime.FatalDataStoreException:
java.sql.SQLException: You cannot commit during a managed transaction!
[code=0;state=null]
When checking the jboss log, it is clear that kodo is trying to commit the
sequence update :
at
org.jboss.resource.adapter.jdbc.WrappedConnection.commit(WrappedConnection.java:477)
at
com.solarmetric.kodo.impl.jdbc.SQLExecutionManagerImpl.commit(SQLExecutionManagerImpl.java:783)
at
com.solarmetric.kodo.impl.jdbc.schema.DBSequenceFactory.updateSequence(DBSequenceFactory.java:267)
at
com.solarmetric.kodo.impl.jdbc.schema.DBSequenceFactory.getNext(DBSequenceFactory.java:111)
at
com.solarmetric.kodo.impl.jdbc.runtime.JDBCStoreManager.newDataStoreId(JDBCStoreManager.java:598)
at
com.solarmetric.kodo.runtime.PersistenceManagerImpl.makePersistentFilter(PersistenceManagerImpl.java:1418)
at
com.solarmetric.kodo.runtime.PersistenceManagerImpl.makePersistent(PersistenceManagerImpl.java:1348)
at com.titan.kodojdotest.ejb.CarBean.edit(CarBean.java:51)
How should i get this to work ????
tx for your help,
Roger.
Steve Kim
[email protected]
SolarMetric Inc.
http://www.solarmetric.com -
Java.sql.SQLException: can't create statement from closed connection
java.sql.SQLException: can't create statement from closed connection.
at com.caucho.sql.QPooledConnectionImpl.prepareStatement(QPooledConnecti onImpl.java:411)
I am getting this error with my JSP's, i am running on Resin on Win2k, and MySql as backend.
Has anyone else also faced this issue ?
Looking for someone to help me to solve this issue.
rcLooking for someone to help me to solve this issue.Maybe you are closing the connections. You might want to verify that you are not doing that. Or if you are that that is the correct way to return the connection to the pool.
Or you could have stale connections. Some databases will time out connections if the connection is no used in a while. (This is a good thing.) But this means connection pools must do something with connections that are not used for a while. The pools usually have a configuration option(s) which allows you to set up a keep alive message which keeps the database from closing the connection. -
Hi,
The possibilities can be of various reasons, with the sql statements,
xml descriptors, data sources, improper drivers anything. To crack down
the solution, kindly let me know the error messages and what exactly are
you trying to accomplish.
Thanks & Regards
Raj
manimaran t wrote:
what may be the cause of this error java.sql.SQLException: invalid sql
type passed to callable statement in iplanet ussing JNDI
Try our New Web Based Forum at http://softwareforum.sun.com
Includes Access to our Product Knowledge Base! -
How to resolve the java.sql.SQLException: OALL8 is in an inconsistent state
Hi All,
I am getting the SQLException "java.sql.SQLException: OALL8 is in an inconsistent state." and in finally block while I am trying to execute another operation on the same database getting another exception "java.sql.SQLException: Io exception: Broken pipe".
I am using a connection from the connection pool configured in Oracle Application server. I am using the Oracle App server 10.1.3.4 and my database is Oracle Database 11g Enterprise Edition Release 11.1.0.7.0.
Any help in resolving this issue would really be appreciated.
Thank you.Hi,
What version of the driver are you using? The "OALL8 is in an inconsistent state" exception usually indicates a problem in the protocol. When this exception occurs the protocol is broken and the connection can't be used anymore. I would suggest that you try using the 11.2.0.1 JDBC driver that you can download from:
http://www.oracle.com/technology/software/tech/java/sqlj_jdbc/index.html
Regards,
Jean -
Java.sql.SQLException: Unexpected token: IN in statement
I use Toplink 2.0-b41-beta2 (03/30/2007) and have a problem with the following JPQL query:
“SELECT DISTINCT OBJECT(e) FROM Entry e WHERE e.location IN (SELECT loc From View v JOIN v.viewLocs vl JOIN vl.location loc where v.code = :code)”
“Entry” is a subclass of “TrainElement”, location points to Entity Location. Entity View has a one-to-many relationship to ViewLoc whereas each ViewLoc has a relationship to a Location object.
Toplink creates the following incorrect sql statement – I inserted some CRLF for better readability::
Local Exception Stack:
Exception [TOPLINK-4002] (Oracle TopLink Essentials - 2.0 (Build b41-beta2 (03/30/2007))): oracle.toplink.essentials.exceptions.DatabaseException
Internal Exception: java.sql.SQLException: Unexpected token: IN in statement
[SELECT DISTINCT t0.TELEM_TRAINELEM_ID, t0.TRAINELEMENT_TYPE, t0.TELEM_INDEX, t0.TTELEM_TRAIN_ID, t0.ENTRY_TYPE, t0.ENTRY_ARRIVAL, t0.DISPLAY, t0.ENTRY_ORDERED_STOP, t0.ENTRY_DEPARTURE, t0.ENTRY_ORDER_CODE, t0.ENTRY_PREV_SEC_ID, t0.ENTRY_NEXT_SEC_ID, t0.ENT_LOC_ID FROM TRAINELEMENT t0, LOCATION t1
WHERE (( IN ((SELECT DISTINCT t2.LOC_ID, t2.LOC_GPSY, t2.LOC_GRX, t2.LOC_CODE, t2.LOC_GRY, t2.LOC_GPSX, t2.LOC_LOCAL_RADIO, t2.LOC_NAME, t2.DELETED, t2.LOC_CLASS_ID FROM VIEW t4, VIEWLOC t3, LOCATION t2 WHERE ((t4.VIEW_CODE = ?) AND ((t3.VIEWLOC_VIEW_ID = t4.VIEW_ID) AND (t2.LOC_ID = t3.VIEWLOC_LOCACTION_ID))))) AND (t0.TRAINELEMENT_TYPE = ?)) AND (t1.LOC_ID = t0.ENT_LOC_ID))]
Error Code: -11
Call: SELECT DISTINCT t0.TELEM_TRAINELEM_ID, t0.TRAINELEMENT_TYPE, t0.TELEM_INDEX, t0.TTELEM_TRAIN_ID, t0.ENTRY_TYPE, t0.ENTRY_ARRIVAL, t0.DISPLAY, t0.ENTRY_ORDERED_STOP, t0.ENTRY_DEPARTURE, t0.ENTRY_ORDER_CODE, t0.ENTRY_PREV_SEC_ID, t0.ENTRY_NEXT_SEC_ID, t0.ENT_LOC_ID FROM TRAINELEMENT t0, LOCATION t1 WHERE (( IN ((SELECT DISTINCT t2.LOC_ID, t2.LOC_GPSY, t2.LOC_GRX, t2.LOC_CODE, t2.LOC_GRY, t2.LOC_GPSX, t2.LOC_LOCAL_RADIO, t2.LOC_NAME, t2.DELETED, t2.LOC_CLASS_ID FROM VIEW t4, VIEWLOC t3, LOCATION t2 WHERE ((t4.VIEW_CODE = ?) AND ((t3.VIEWLOC_VIEW_ID = t4.VIEW_ID) AND (t2.LOC_ID = t3.VIEWLOC_LOCACTION_ID))))) AND (t0.TRAINELEMENT_TYPE = ?)) AND (t1.LOC_ID = t0.ENT_LOC_ID))
bind => [ROMAN W-Pb, ENT]
There sould be a “t0.ENT_LOC_ID” before the IN in the WHERE clause and the implicit join “ID FROM TRAINELEMENT t0, LOCATION t1” seems incorrect to me. At any rate the database (HSQLDB) rejects that incorrect sql statement.
How can I circumvent that problem?
A add the relevant mapping part of the involved classes.
@Entity
@DiscriminatorValue("ENT")
public class Entry extends TrainElement implements IEntry {
@ManyToOne(cascade = CascadeType.ALL)
@JoinColumn(name = "ENT_LOC_ID", nullable = true)
private Location location;
@Entity
@Table(name = "LOCATION")
public class Location implements ILocation {
// persistent part
// primary key field
@Id
@GeneratedValue
@Column(name = "LOC_ID")
private Long id;
@Column(name = "LOC_CODE", nullable = false)
private String code;
@Column(name = "LOC_NAME", nullable = false)
private String name;
@Entity
@EntityListeners(EntityListener.class)
@Table(name = "VIEW")
public class View implements IView {
// persistent
// primary key field
@Id
@GeneratedValue
@Column(name = "VIEW_ID")
private Long id;
@OneToMany(mappedBy = "view", cascade = CascadeType.ALL)
private List<ViewLoc> viewLocs = new ArrayList<ViewLoc>();
@Entity
@Table(name = "VIEWLOC")
@EntityListeners(EntityListener.class)
public class ViewLoc implements IViewLoc {
// persistent fields
// primary key field
@Id
@GeneratedValue
@Column(name = "VIEWLOC_ID")
private Long id;
@ManyToOne(cascade = CascadeType.ALL)
@JoinColumn(name = "VIEWLOC_VIEW_ID", nullable = false)
private View view;
// direct Linking to the infrastrucutre location
@ManyToOne(cascade = CascadeType.ALL)
@JoinColumn(name = "VIEWLOC_LOCACTION_ID")
private Location location;
….IN doesn't support objects, only state_field_path_expression that must have a string, numeric, or enum value.
Try using
“SELECT DISTINCT OBJECT(e) FROM Entry e WHERE e.location.id IN (SELECT loc.id From View v JOIN v.viewLocs vl JOIN vl.location loc where v.code = :code)”
Best Regards,
Chris -
Jclient error: java.sql.SQLException: OALL8 is in an inconsistent state
Dear all,
who can help us about java.sql.SQLException: OALL8 is in an inconsistent state.
Our application system is build for Jdeveloper 10.1.2 with JClient+BC4J
and be deploy on 2-tier application architecture(through Web Start) , and the database is oracle 9.2.0.1
In sometime the application running, our user will got these error response message that is like following , please kindly give us a direction to solve this problem .
oracle.jbo.DMLException: JBO-26044: ¨ú±oµøÆ[ªíª«¥ó ReportPhraseBasicView1, ±Ôz¥y SELECT count(1) FROM (SELECT ReportPhraseBasic.HOSPITALCODE, ReportPhraseBasic.USERCODE, ReportPhraseBasic.PHRASECODE, ReportPhraseBasic.PHRASECONTEXT, ReportPhraseBasic.CREATED_BY, ReportPhraseBasic.CREATION_DATE, ReportPhraseBasic.LAST_UPDATED_BY, ReportPhraseBasic.LAST_UPDATE_DATE, ReportPhraseBasic.MARK FROM REPORT_PHRASE_BASIC ReportPhraseBasic WHERE (USERCODE = '006583') AND ( ( (ReportPhraseBasic.PHRASECODE LIKE '%') ) )) ªº¦ôp¸ê®Æ¦Cp¼Æ®Éµo¥Í¿ù»~.
at oracle.jbo.server.ViewObjectImpl.getQueryHitCount(ViewObjectImpl.java:2101)
at oracle.jbo.server.ViewObjectImpl.getQueryHitCount(ViewObjectImpl.java:2043)
at oracle.jbo.server.QueryCollection.getEstimatedRowCount(QueryCollection.java:2170)
at oracle.jbo.server.ViewRowSetImpl.getEstimatedRowCount(ViewRowSetImpl.java:1824)
at oracle.jbo.server.ViewObjectImpl.getEstimatedRowCount(ViewObjectImpl.java:5624)
at oracle.adf.model.bc4j.DCJboDataControl.getEstimatedRowCount(DCJboDataControl.java:925)
at oracle.adf.model.binding.DCIteratorBinding.getEstimatedRowCount(DCIteratorBinding.java:2526)
at oracle.jbo.uicli.binding.JUCtrlRangeBinding.getEstimatedRowCount(JUCtrlRangeBinding.java:101)
at oracle.jbo.uicli.jui.JUTableBinding$JUTableModel.getRowCount(JUTableBinding.java:1099)
at oracle.jbo.uicli.jui.JUTableBinding.getRowCount(JUTableBinding.java:618)
at oracle.jbo.uicli.jui.JUTableSortModel.getRowCount(JUTableSortModel.java:560)
at javax.swing.JTable.getRowCount(Unknown Source)
at javax.swing.JTable.valueChanged(Unknown Source)
at javax.swing.DefaultListSelectionModel.fireValueChanged(Unknown Source)
at javax.swing.DefaultListSelectionModel.fireValueChanged(Unknown Source)
at javax.swing.DefaultListSelectionModel.fireValueChanged(Unknown Source)
at javax.swing.DefaultListSelectionModel.changeSelection(Unknown Source)
at javax.swing.DefaultListSelectionModel.changeSelection(Unknown Source)
at javax.swing.DefaultListSelectionModel.removeSelectionInterval(Unknown Source)
at javax.swing.DefaultListSelectionModel.clearSelection(Unknown Source)
at oracle.jbo.uicli.jui.SortedListSelectionModel.clearSelection(JUTableSortModel.java:747)
at javax.swing.JTable.clearSelection(Unknown Source)
at javax.swing.JTable.tableChanged(Unknown Source)
at javax.swing.table.AbstractTableModel.fireTableChanged(Unknown Source)
at oracle.jbo.uicli.jui.JUTableSortModel.tableChanged(JUTableSortModel.java:177)
at javax.swing.table.AbstractTableModel.fireTableChanged(Unknown Source)
at javax.swing.table.AbstractTableModel.fireTableDataChanged(Unknown Source)
at oracle.jbo.uicli.jui.JUTableBinding$JUTableModel.fireTableDataChangedRestoreSelection(JUTableBinding.java:763)
at oracle.jbo.uicli.jui.JUTableBinding$JUTableModel._refreshLater(JUTableBinding.java:989)
at oracle.jbo.uicli.jui.JUTableBinding$JUTableModel.access$7000971(JUTableBinding.java:700)
at oracle.jbo.uicli.jui.JUTableBinding$1.run(JUTableBinding.java:940)
at java.awt.event.InvocationEvent.dispatch(Unknown Source)
at java.awt.EventQueue.dispatchEvent(Unknown Source)
at java.awt.EventDispatchThread.pumpOneEventForHierarchy(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.run(Unknown Source)
## Detail 0 ##
java.sql.SQLException: OALL8 is in an inconsistent state.
at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:124)
at oracle.jdbc.driver.T4C8Oall.init(T4C8Oall.java:308)
at oracle.jdbc.driver.T4CPreparedStatement.doOall8(T4CPreparedStatement.java:166)
at oracle.jdbc.driver.T4CPreparedStatement.execute_for_describe(T4CPreparedStatement.java:661)
at oracle.jdbc.driver.OracleStatement.execute_maybe_describe(OracleStatement.java:893)
at oracle.jdbc.driver.T4CPreparedStatement.execute_maybe_describe(T4CPreparedStatement.java:693)
at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:988)
at oracle.jdbc.driver.OraclePreparedStatement.executeInternal(OraclePreparedStatement.java:2884)
at oracle.jdbc.driver.OraclePreparedStatement.executeQuery(OraclePreparedStatement.java:2925)
at oracle.jbo.server.ViewObjectImpl.getQueryHitCount(ViewObjectImpl.java:2083)
at oracle.jbo.server.ViewObjectImpl.getQueryHitCount(ViewObjectImpl.java:2043)
at oracle.jbo.server.QueryCollection.getEstimatedRowCount(QueryCollection.java:2170)
at oracle.jbo.server.ViewRowSetImpl.getEstimatedRowCount(ViewRowSetImpl.java:1824)
at oracle.jbo.server.ViewObjectImpl.getEstimatedRowCount(ViewObjectImpl.java:5624)
at oracle.adf.model.bc4j.DCJboDataControl.getEstimatedRowCount(DCJboDataControl.java:925)
at oracle.adf.model.binding.DCIteratorBinding.getEstimatedRowCount(DCIteratorBinding.java:2526)
at oracle.jbo.uicli.binding.JUCtrlRangeBinding.getEstimatedRowCount(JUCtrlRangeBinding.java:101)
at oracle.jbo.uicli.jui.JUTableBinding$JUTableModel.getRowCount(JUTableBinding.java:1099)
at oracle.jbo.uicli.jui.JUTableBinding.getRowCount(JUTableBinding.java:618)
at oracle.jbo.uicli.jui.JUTableSortModel.getRowCount(JUTableSortModel.java:560)
at javax.swing.JTable.getRowCount(Unknown Source)
at javax.swing.JTable.valueChanged(Unknown Source)
at javax.swing.DefaultListSelectionModel.fireValueChanged(Unknown Source)
at javax.swing.DefaultListSelectionModel.fireValueChanged(Unknown Source)
at javax.swing.DefaultListSelectionModel.fireValueChanged(Unknown Source)
at javax.swing.DefaultListSelectionModel.changeSelection(Unknown Source)
at javax.swing.DefaultListSelectionModel.changeSelection(Unknown Source)
at javax.swing.DefaultListSelectionModel.removeSelectionInterval(Unknown Source)
at javax.swing.DefaultListSelectionModel.clearSelection(Unknown Source)
at oracle.jbo.uicli.jui.SortedListSelectionModel.clearSelection(JUTableSortModel.java:747)
at javax.swing.JTable.clearSelection(Unknown Source)
at javax.swing.JTable.tableChanged(Unknown Source)
at javax.swing.table.AbstractTableModel.fireTableChanged(Unknown Source)
at oracle.jbo.uicli.jui.JUTableSortModel.tableChanged(JUTableSortModel.java:177)
at javax.swing.table.AbstractTableModel.fireTableChanged(Unknown Source)
at javax.swing.table.AbstractTableModel.fireTableDataChanged(Unknown Source)
at oracle.jbo.uicli.jui.JUTableBinding$JUTableModel.fireTableDataChangedRestoreSelection(JUTableBinding.java:763)
at oracle.jbo.uicli.jui.JUTableBinding$JUTableModel._refreshLater(JUTableBinding.java:989)
at oracle.jbo.uicli.jui.JUTableBinding$JUTableModel.access$7000971(JUTableBinding.java:700)
at oracle.jbo.uicli.jui.JUTableBinding$1.run(JUTableBinding.java:940)
at java.awt.event.InvocationEvent.dispatch(Unknown Source)
at java.awt.EventQueue.dispatchEvent(Unknown Source)
at java.awt.EventDispatchThread.pumpOneEventForHierarchy(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.run(Unknown Source)
==============
oracle.jbo.SQLStmtException: JBO-27122: Protocol Violation: SELECT Reportbasic.HOSPITALCODE, Reportbasic.REPORTSEQNO, Reportbasic.VERSION, Reportbasic.EXAM, Reportbasic.IMPRESSION, Reportbasic.DICTATE_SEQ, Reportbasic.DICTATEDATE, Reportbasic.DICTATOR, Reportbasic.DICTATORNAME, Reportbasic.REPORTDATE, Reportbasic.REPORTDR_VS, Reportbasic.REPORTNAME_VS, Reportbasic.REPORTDR_RESIDENT, Reportbasic.REPORTNAME_RESIDENT, Reportbasic.REPORTDR_CONSIDER, Reportbasic.REPORTNAME_CONSIDER, Reportbasic.APPROVEDATE, Reportbasic.APPROVEDR, Reportbasic.APPROVENAME, Reportbasic.FINISH_FLAG, Reportbasic.OFFICIALFLAG, Reportbasic.EXAMTEXT, Reportbasic.IMPRESSIONTEXT, Reportbasic.STATUS, Reportbasic.TRANSMIT_NEEDED, Reportbasic.REMARK, Reportbasic.CREATED_BY, Reportbasic.CREATION_DATE, Reportbasic.LAST_UPDATED_BY, Reportbasic.LAST_UPDATE_DATE, Reportbasic.EDUCATIONTYPE, Reportbasic.EDUCATIONCODE, Reportbasic.CODINGOPER, Reportbasic.CODINGDATE, Reportbasic.ACCESSNO FROM REPORTBASIC Reportbasic WHERE Reportbasic.REPORTSEQNO = :1
at oracle.jbo.server.QueryCollection.buildResultSet(QueryCollection.java:774)
at oracle.jbo.server.QueryCollection.executeQuery(QueryCollection.java:547)
at oracle.jbo.server.ViewObjectImpl.executeQueryForCollection(ViewObjectImpl.java:3422)
at oracle.jbo.server.ViewRowSetImpl.execute(ViewRowSetImpl.java:663)
at oracle.jbo.server.ViewRowSetImpl.execute(ViewRowSetImpl.java:617)
at oracle.jbo.server.ViewRowSetIteratorImpl.ensureRefreshed(ViewRowSetIteratorImpl.java:2593)
at oracle.jbo.server.ViewRowSetIteratorImpl.refresh(ViewRowSetIteratorImpl.java:2850)
at oracle.jbo.server.ViewRowSetImpl.notifyRefresh(ViewRowSetImpl.java:1941)
at oracle.jbo.server.ViewRowSetImpl.refreshRowSet(ViewRowSetImpl.java:4094)
at oracle.jbo.server.ViewRowSetIteratorImpl.notifyDetailRowSets(ViewRowSetIteratorImpl.java:3300)
at oracle.jbo.server.ViewRowSetIteratorImpl.notifyNavigation(ViewRowSetIteratorImpl.java:3418)
at oracle.jbo.server.ViewRowSetIteratorImpl.internalSetCurrentRow(ViewRowSetIteratorImpl.java:3192)
at oracle.jbo.server.ViewRowSetIteratorImpl.setCurrentRowAtRangeIndex(ViewRowSetIteratorImpl.java:998)
at oracle.jbo.server.ViewRowSetImpl.setCurrentRowAtRangeIndex(ViewRowSetImpl.java:2569)
at oracle.jbo.server.ViewObjectImpl.setCurrentRowAtRangeIndex(ViewObjectImpl.java:6186)
at oracle.jbo.uicli.jui.JUTableBinding$JUTableModel.valueChanged(JUTableBinding.java:1274)
at javax.swing.DefaultListSelectionModel.fireValueChanged(Unknown Source)
at javax.swing.DefaultListSelectionModel.fireValueChanged(Unknown Source)
at javax.swing.DefaultListSelectionModel.setValueIsAdjusting(Unknown Source)
at oracle.jbo.uicli.jui.SortedListSelectionModel.setValueIsAdjusting(JUTableSortModel.java:777)
at javax.swing.plaf.basic.BasicTableUI$MouseInputHandler.setValueIsAdjusting(Unknown Source)
at javax.swing.plaf.basic.BasicTableUI$MouseInputHandler.mouseReleased(Unknown Source)
at java.awt.AWTEventMulticaster.mouseReleased(Unknown Source)
at java.awt.AWTEventMulticaster.mouseReleased(Unknown Source)
at java.awt.AWTEventMulticaster.mouseReleased(Unknown Source)
at java.awt.AWTEventMulticaster.mouseReleased(Unknown Source)
at java.awt.Component.processMouseEvent(Unknown Source)
at java.awt.Component.processEvent(Unknown Source)
at java.awt.Container.processEvent(Unknown Source)
at java.awt.Component.dispatchEventImpl(Unknown Source)
at java.awt.Container.dispatchEventImpl(Unknown Source)
at java.awt.Component.dispatchEvent(Unknown Source)
at java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source)
at java.awt.LightweightDispatcher.processMouseEvent(Unknown Source)
at java.awt.LightweightDispatcher.dispatchEvent(Unknown Source)
at java.awt.Container.dispatchEventImpl(Unknown Source)
at java.awt.Window.dispatchEventImpl(Unknown Source)
at java.awt.Component.dispatchEvent(Unknown Source)
at java.awt.EventQueue.dispatchEvent(Unknown Source)
at java.awt.EventDispatchThread.pumpOneEventForHierarchy(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.run(Unknown Source)
## Detail 0 ##
java.sql.SQLException: ¹H¤Ï¨ó©w
at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:124)
at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:161)
at oracle.jdbc.driver.DatabaseError.check_error(DatabaseError.java:884)
at oracle.jdbc.driver.T4C8Oall.receive(T4C8Oall.java:642)
at oracle.jdbc.driver.T4CPreparedStatement.doOall8(T4CPreparedStatement.java:181)
at oracle.jdbc.driver.T4CPreparedStatement.execute_for_rows(T4CPreparedStatement.java:791)
at oracle.jdbc.driver.OracleStatement.execute_maybe_describe(OracleStatement.java:912)
at oracle.jdbc.driver.T4CPreparedStatement.execute_maybe_describe(T4CPreparedStatement.java:693)
at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:988)
at oracle.jdbc.driver.OraclePreparedStatement.executeInternal(OraclePreparedStatement.java:2884)
at oracle.jdbc.driver.OraclePreparedStatement.executeQuery(OraclePreparedStatement.java:2925)
at oracle.jbo.server.QueryCollection.buildResultSet(QueryCollection.java:691)
at oracle.jbo.server.QueryCollection.executeQuery(QueryCollection.java:547)
at oracle.jbo.server.ViewObjectImpl.executeQueryForCollection(ViewObjectImpl.java:3422)
at oracle.jbo.server.ViewRowSetImpl.execute(ViewRowSetImpl.java:663)
at oracle.jbo.server.ViewRowSetImpl.execute(ViewRowSetImpl.java:617)
at oracle.jbo.server.ViewRowSetIteratorImpl.ensureRefreshed(ViewRowSetIteratorImpl.java:2593)
at oracle.jbo.server.ViewRowSetIteratorImpl.refresh(ViewRowSetIteratorImpl.java:2850)
at oracle.jbo.server.ViewRowSetImpl.notifyRefresh(ViewRowSetImpl.java:1941)
at oracle.jbo.server.ViewRowSetImpl.refreshRowSet(ViewRowSetImpl.java:4094)
at oracle.jbo.server.ViewRowSetIteratorImpl.notifyDetailRowSets(ViewRowSetIteratorImpl.java:3300)
at oracle.jbo.server.ViewRowSetIteratorImpl.notifyNavigation(ViewRowSetIteratorImpl.java:3418)
at oracle.jbo.server.ViewRowSetIteratorImpl.internalSetCurrentRow(ViewRowSetIteratorImpl.java:3192)
at oracle.jbo.server.ViewRowSetIteratorImpl.setCurrentRowAtRangeIndex(ViewRowSetIteratorImpl.java:998)
at oracle.jbo.server.ViewRowSetImpl.setCurrentRowAtRangeIndex(ViewRowSetImpl.java:2569)
at oracle.jbo.server.ViewObjectImpl.setCurrentRowAtRangeIndex(ViewObjectImpl.java:6186)
at oracle.jbo.uicli.jui.JUTableBinding$JUTableModel.valueChanged(JUTableBinding.java:1274)
at javax.swing.DefaultListSelectionModel.fireValueChanged(Unknown Source)
at javax.swing.DefaultListSelectionModel.fireValueChanged(Unknown Source)
at javax.swing.DefaultListSelectionModel.setValueIsAdjusting(Unknown Source)
at oracle.jbo.uicli.jui.SortedListSelectionModel.setValueIsAdjusting(JUTableSortModel.java:777)
at javax.swing.plaf.basic.BasicTableUI$MouseInputHandler.setValueIsAdjusting(Unknown Source)
at javax.swing.plaf.basic.BasicTableUI$MouseInputHandler.mouseReleased(Unknown Source)
at java.awt.AWTEventMulticaster.mouseReleased(Unknown Source)
at java.awt.AWTEventMulticaster.mouseReleased(Unknown Source)
at java.awt.AWTEventMulticaster.mouseReleased(Unknown Source)
at java.awt.AWTEventMulticaster.mouseReleased(Unknown Source)
at java.awt.Component.processMouseEvent(Unknown Source)
at java.awt.Component.processEvent(Unknown Source)
at java.awt.Container.processEvent(Unknown Source)
at java.awt.Component.dispatchEventImpl(Unknown Source)
at java.awt.Container.dispatchEventImpl(Unknown Source)
at java.awt.Component.dispatchEvent(Unknown Source)
at java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source)
at java.awt.LightweightDispatcher.processMouseEvent(Unknown Source)
at java.awt.LightweightDispatcher.dispatchEvent(Unknown Source)
at java.awt.Container.dispatchEventImpl(Unknown Source)
at java.awt.Window.dispatchEventImpl(Unknown Source)
at java.awt.Component.dispatchEvent(Unknown Source)
at java.awt.EventQueue.dispatchEvent(Unknown Source)
at java.awt.EventDispatchThread.pumpOneEventForHierarchy(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.run(Unknown Source)Seems its problem with the version of Oracle you are using ..See the following link,it provides you some additional info.
java.sql.SQLException: OALL8 is in an inconsistent state -
Java.sql.SQLException: Closed Statement
I'm having a problem with my Java code trying to access an Oracle 10g database through the JDBC driver using the Oracle XML Publisher.
We generate a number of different reports, but one report consistently fails with the error: java.sql.SQLException: Closed Statement
It only happens in the production environment, which has significantly more data than the test and development environments.
One interesting (!) observation is that the error occurs after 10 minutes to the second (almost). Which leads me to think it is a timeout related problem, but am aware that this could be a red herring.
And finally, the code is being run within a job sheduled using the Quartz Scheduler v1.6.5.
Any help would be appreciated.
Many Thanks
Lawrence
Here is the stack trace:
java.sql.SQLException: Closed Statement: getMetaData
at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:112)
at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:146)
at oracle.jdbc.driver.OracleResultSetImpl.getMetaData(OracleResultSetImpl.java:128)
at com.mchange.v2.c3p0.impl.NewProxyResultSet.getMetaData(NewProxyResultSet.java:47)
at oracle.apps.xdo.dataengine.XMLPGEN.processSQLDataSource(Unknown Source)
at oracle.apps.xdo.dataengine.XMLPGEN.writeData(Unknown Source)
at oracle.apps.xdo.dataengine.XMLPGEN.writeGroup(Unknown Source)
at oracle.apps.xdo.dataengine.XMLPGEN.writeGroup(Unknown Source)
at oracle.apps.xdo.dataengine.XMLPGEN.processSQLDataSource(Unknown Source)
at oracle.apps.xdo.dataengine.XMLPGEN.writeData(Unknown Source)
at oracle.apps.xdo.dataengine.XMLPGEN.writeGroupStructure(Unknown Source)
at oracle.apps.xdo.dataengine.XMLPGEN.processData(Unknown Source)
at oracle.apps.xdo.dataengine.XMLPGEN.processXML(Unknown Source)
at oracle.apps.xdo.dataengine.XMLPGEN.writeXML(Unknown Source)
at oracle.apps.xdo.dataengine.DataProcessor.processDataStructre(Unknown Source)
at oracle.apps.xdo.dataengine.DataProcessor.processData(Unknown Source)
at com.tmobile.sett.file.invoice.InvoiceFileFactory.generateXML(InvoiceFileFactory.java:157)
at com.tmobile.sett.file.invoice.InvoiceFileFactory.generateStatements(InvoiceFileFactory.java:365)
at com.tmobile.sett.file.invoice.InvoiceFileFactory.generateInvoices(InvoiceFileFactory.java:457)
at com.tmobile.sett.file.invoice.StatementGeneratorJob.execute(StatementGeneratorJob.java:34)
at org.quartz.core.JobRunShell.run(JobRunShell.java:202)
at org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:525)
Here is the code:
private void generateXML(String xmlTemplate, String xmlFilename, Hashtable parameters) {
DataProcessor dataProcessor = new DataProcessor();
log.debug("generateXML: xmlTemplate {}, xmlFilename {}", xmlTemplate, xmlFilename);
try {
// Set Data Template to be executed
dataProcessor.setDataTemplate(xmlTemplate);
// Obtain a new Connection from the Pool
Connection conn = HibernateUtil.getConnection();
if (conn == null)
log.debug("conn is null after getCall");
if (conn.isClosed())
log.debug("conn is closed after getCall");
// Set the Connection for the dataProcessor
dataProcessor.setConnection(conn);
if (conn.isClosed())
log.debug("conn is closed after setConnection");
dataProcessor.setParameters(parameters);
if (conn.isClosed())
log.debug("conn is closed after setParameters");
// Specify the output directory and file for the data file
dataProcessor.setOutput(xmlFilename);
if (conn.isClosed())
log.debug("conn is closed after setOutput");
// Process the data template
dataProcessor.processData();
if (conn.isClosed())
log.debug("conn is closed after processData");
// Return the connection to the pool
conn.close();
} catch (Exception e) {
System.err.println("Error generating XML with the following parameters:");
System.err.println("xmlTemplate=" + xmlTemplate);
System.err.println("xmlFilename=" + xmlFilename);
System.err.println("Here's the stack trace");
e.printStackTrace();
System.exit(1);
}I have made some progress in understanding the problem...
Basically, your comment about threads made me look at the code from a threads perspective. There are only three objects used, log4j, oracleXML Publisher and hibernate. Discounting log4j, the Oracle object is created, opened and closed within the procedure, so I concluded that hibernate was the most likely cause of the problem (i know, theres an element of educated guesswork in this).
Anyway, I found the hibernate timeouts (all around 300 seconds) and increased them to 3000 seconds... and lo and behold the reports are generated successfully, although some of them take over 20 minutes each.
So, this is a performance problem with the SQL itself:
SELECT service
, reply
, ROUND(SUM(DECODE(op, 3, 0, count))* :uplift,0) x_events
, ROUND(SUM(DECODE(op, 3, count, 0))* :uplift,0) y_events
FROM aggregate
WHERE ref_time >= :period_start
AND ref_time < :period_end
AND feed = 13
AND agreement = :agreement
AND line = 1
GROUP BY service, reply
ORDER BY 1,2
The SQL in question is querying data for a specific month from a monthly partitioned table that contains about 11 million records a month. We currently have 99 partitions.
Executing the sql in Toad / Sql developer / sqlplus takes around 20 seconds...so why 20 minutes?
Looking in the session browser, I can see that the 20 minute query is looking through all 99 partitions where the 20 second query is only looking at 1 partition for the month in question.
I'm not sure if this is heading off topic for the forum thread, but the question now is...
Why is Oracle using a clearly innefficient execution plan when we are using a query with bound variables and how do we get it to use a more efficient execution plan? -
I am getting Error! java.sql.SQLException:General error
hi every body,
I struck with this error , can any one suggest in solving this.
I had a table in oracledatabase ,i have successfully created a table and inserted clob column with an attachment like xxx.txt.
table format----> id and text columns
Now my question is to retrieve that data and store it in local disk i am getting this error
import java.io.*;
import java.sql.*;
//import java.sql.SQLException;
public class Cread {
public static void main(String[] args) throws ClassNotFoundException,IOException,SQLException {
try {
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
Connection cn=DriverManager.getConnection("jdbc:odbc:sivadsn","scott","tiger");
Statement s = cn.createStatement();
ResultSet rs=s.executeQuery("Select text from ram where id=10");
if(rs.next()){
FileOutputStream file=new FileOutputStream("c:/store.txt");
InputStream fin=rs.getBinaryStream(1);
int c;
while((c=fin.read())!=-1){
file.write(c);
fin.close();
s.close();
rs.close();
catch(IOException e){
e.printStackTrace();
System.out.println("Err:"+e);
I am getting the error as
java.sql.SQLException: General error
at sun.jdbc.odbc.JdbcOdbc.createSQLException(Unknown Source)
at sun.jdbc.odbc.JdbcOdbc.standardError(Unknown Source)
at sun.jdbc.odbc.JdbcOdbc.SQLExecDirect(Unknown Source)
at sun.jdbc.odbc.JdbcOdbcStatement.execute(Unknown Source)
at sun.jdbc.odbc.JdbcOdbcStatement.executeQuery(Unknown Source)Error! java.sql.SQLException: General error
at attach.Clobread.main(Clobread.java:30)That usually means something is wrong with the syntax of your sql.
As a guess 'text' is probably a keyword and shouldn't be used as a field name. It is possible that the same is true for 'id' -
I am getting an error when I am coming out of a method. I am not doing any database operations in the code.
The error I am getting is
The activity execution failed.\nCaused by: Activity '/AddNewSubMaster#Default-1.0/DeleteRequests' task 'Confirmation_Router' could not execute successfully.\nCaused by: Process execution engine execution error.\nCaused by: An error occurred while accesing the database.\nTechnical detail:SQL statement: 'unknown'\n\nCaused by: Unexpected exception while enlisting XAConnection java.sql.SQLException: XA error: XAResource.XAER_PROTO start() failed on resource 'ALBPM Engine Database': XAER_PROTO : Routine was invoked in an inproper context\noracle.jdbc.xa.OracleXAException\n\tat oracle.jdbc.xa.OracleXAResource.checkError(OracleXAResource.java:938)\n\tat oracle.jdbc.xa.client.OracleXAResource.start(OracleXAResource.java:244)\n\tat weblogic.jdbc.wrapper.VendorXAResource.start(VendorXAResource.java:50)\n\tat weblogic.jdbc.jta.DataSource.start(DataSource.java:710)\n\tat weblogic.transaction.internal.XAServerResourceInfo.start(XAServerResourceInfo.java:1182)\n\tat ...........Are you using studio?
I see an Oracle DB-connection. In studio without configuration you only have one or two derby databases.
Maybe you are looking for
-
How do you transfer Adobe Acrobat XI Pro Student version from old computer to new computer?
i just got a new computer and got my Adobe Acrobat XI Pro Student and Teacher Edition installed from my old computer; however on my new computer, it's only showing up as Adobe Reader and not the Acrobat XI Pro version. I've only had it for less than
-
Hai, As Iam using Loop in a Loop iam getting time out dump . in my internal table itab3 has unique objnr values. for each objnr i have different status in itab_jcds. each status column has diff status. now i need to concatenate the status depending
-
Ipod touch 4th generation camera doesn't work after smashed screen replacement
I have an ipod touch 4th generation that i smashed to screen with a torch, i got the screen replaced however my camera shutter will NOT open at all, i can go into camera roll and everything BUT the shutter wont open and the slide to go from camera to
-
Problem with fuzzy text in Captivate 5
Hi, I know this is a question that has been raised before, but I'm yet to find a solution for my projects and live chat can't help me. I'm using Captivate version 5, and regardless of whether I publish in high, medium or low quality, the text on my
-
A brand new query tool is out on beta, we need feedback, so you get a free copy
We at Nob Hill Software are working on a new query tool: http://www.nobhillsoft.com/MarieAlix.aspx?HeardVia=ptut You can read all about it on the above web page, but basically, its a very ambitious project to create what we call 'the query tool to en