Hi,
I am new to Apache Activiti BPM tool.
We are planning to define processes using Activiti BPM tool.
When we integrated Activiti process with our application, we found that the invocation singleResult() method (on ExecutionQuery and TaskQuery) failed every time with below exception,
HTTP Status 500 -
### Error querying database. Cause: java.sql.SQLSyntaxErrorException: ORA-00936: missing expression
### The error may exist in org/activiti/db/mapping/entity/Execution.xml
### The error may involve org.activiti.engine.impl.persistence.entity.ExecutionEntity.selectExecutionsByQueryCriteria-Inline
### The error occurred while setting parameters
### SQL: select * from
(
select a.*, ROWNUM rnum
from
(
select distinct RES.* , P.KEY_ as ProcessDefinitionKey, P.ID_ as ProcessDefinitionId
from ACT_RU_EXECUTION RES
inner join ACT_RE_PROCDEF P on RES.PROC_DEF_ID_ = P.ID_
WHERE RES.PROC_INST_ID_ = ?
order by order by RES.ID_ asc
) a
where ROWNUM < ?
)
where rnum >= ?
### Cause: java.sql.SQLSyntaxErrorException: ORA-00936: missing expression
(The order by clause was getting appended twice)
We understand that the activiti internal calls to database is made only using myBatis framework.
Upon analysis we found that the issue occurred due to the incompatible myBatis jar. Our application uses myBatis-3.3.0 but activiti works fine with myBatis3.2.5.
I need clarification for the below,
1. Is there any option to support latest myBatis version(as we are not supposed to downgrade myBatis)?
2. Is there any method that supports JDBC instead of myBatis, which would not impact if we upgrade to newer versions of myBatis in future?
Please help me here.
Thanks.