cancel
Showing results for 
Search instead for 
Did you mean: 

Problem connecting to H2 database

koteswarrao
Champ in-the-making
Champ in-the-making
hi all

i am trying to connect to h2 database from my acitiviti application program without using apache or any other(simply to say, as a standalone system). i implemented one sample application which deployes "start——>user task——->end". when i tried to deploy this workflow i am getting following error. can anybody please clarify on this. persistence is my main concern(for my project).

org.activiti.engine.ActivitiException: no activiti tables in db.  set <property name="databaseSchemaUpdate" to value="true" or value="create-drop" (use create-drop for testing only!) in bean processEngineConfiguration in activiti.cfg.xml for automatic schema creation
   at org.activiti.engine.impl.db.DbSqlSession.dbSchemaCheckVersion(DbSqlSession.java:487)
   at org.activiti.engine.impl.db.DbSqlSession.performSchemaOperationsProcessEngineBuild(DbSqlSession.java:851)
   at org.activiti.engine.impl.SchemaOperationsProcessEngineBuild.execute(SchemaOperationsProcessEngineBuild.java:25)
   at org.activiti.engine.impl.interceptor.CommandExecutorImpl.execute(CommandExecutorImpl.java:24)
   at org.activiti.engine.impl.interceptor.CommandContextInterceptor.execute(CommandContextInterceptor.java:42)
   at org.activiti.engine.impl.interceptor.LogInterceptor.execute(LogInterceptor.java:33)
   at org.activiti.engine.impl.ProcessEngineImpl.<init>(ProcessEngineImpl.java:77)
   at org.activiti.engine.impl.cfg.ProcessEngineConfigurationImpl.buildProcessEngine(ProcessEngineConfigurationImpl.java:233)
   at com.sample.activiti.MainClass.main(MainClass.java:52)
Caused by: org.apache.ibatis.exceptions.PersistenceException:
### Error querying database.  Cause: org.h2.jdbc.JdbcSQLException: Table "ACT_GE_PROPERTY" not found; SQL statement:
select VALUE_ from ACT_GE_PROPERTY where NAME_ = 'schema.version' [42102-132]
   at org.h2.message.DbException.getJdbcSQLException(DbException.java:316)
   at org.h2.message.DbException.get(DbException.java:167)
   at org.h2.message.DbException.get(DbException.java:144)
   at org.h2.command.Parser.readTableOrView(Parser.java:4347)
   at org.h2.command.Parser.readTableFilter(Parser.java:1001)
   at org.h2.command.Parser.parseSelectSimpleFromPart(Parser.java:1529)
   at org.h2.command.Parser.parseSelectSimple(Parser.java:1626)
   at org.h2.command.Parser.parseSelectSub(Parser.java:1523)
   at org.h2.command.Parser.parseSelectUnion(Parser.java:1368)
   at org.h2.command.Parser.parseSelect(Parser.java:1356)
   at org.h2.command.Parser.parsePrepared(Parser.java:395)
   at org.h2.command.Parser.parse(Parser.java:278)
   at org.h2.command.Parser.parse(Parser.java:250)
   at org.h2.command.Parser.prepareCommand(Parser.java:222)
   at org.h2.engine.Session.prepareLocal(Session.java:420)
   at org.h2.server.TcpServerThread.process(TcpServerThread.java:224)
   at org.h2.server.TcpServerThread.run(TcpServerThread.java:135)
   at java.lang.Thread.run(Unknown Source)

### The error may exist in org/activiti/db/ibatis/engine.mapping.xml
### The error may involve org.activiti.persistence.selectDbSchemaVersion
### The error occurred while executing a query
### SQL: select VALUE_ from ACT_GE_PROPERTY where NAME_ = 'schema.version'
### Cause: org.h2.jdbc.JdbcSQLException: Table "ACT_GE_PROPERTY" not found; SQL statement:
select VALUE_ from ACT_GE_PROPERTY where NAME_ = 'schema.version' [42102-132]
   at org.h2.message.DbException.getJdbcSQLException(DbException.java:316)
   at org.h2.message.DbException.get(DbException.java:167)
   at org.h2.message.DbException.get(DbException.java:144)
   at org.h2.command.Parser.readTableOrView(Parser.java:4347)
   at org.h2.command.Parser.readTableFilter(Parser.java:1001)
   at org.h2.command.Parser.parseSelectSimpleFromPart(Parser.java:1529)
   at org.h2.command.Parser.parseSelectSimple(Parser.java:1626)
   at org.h2.command.Parser.parseSelectSub(Parser.java:1523)
   at org.h2.command.Parser.parseSelectUnion(Parser.java:1368)
   at org.h2.command.Parser.parseSelect(Parser.java:1356)
   at org.h2.command.Parser.parsePrepared(Parser.java:395)
   at org.h2.command.Parser.parse(Parser.java:278)
   at org.h2.command.Parser.parse(Parser.java:250)
   at org.h2.command.Parser.prepareCommand(Parser.java:222)
   at org.h2.engine.Session.prepareLocal(Session.java:420)
   at org.h2.server.TcpServerThread.process(TcpServerThread.java:224)
   at org.h2.server.TcpServerThread.run(TcpServerThread.java:135)
   at java.lang.Thread.run(Unknown Source)

   at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:8)
   at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:61)
   at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:53)
   at org.apache.ibatis.session.defaults.DefaultSqlSession.selectOne(DefaultSqlSession.java:38)
   at org.apache.ibatis.session.defaults.DefaultSqlSession.selectOne(DefaultSqlSession.java:33)
   at org.activiti.engine.impl.db.DbSqlSession.getDbVersion(DbSqlSession.java:509)
   at org.activiti.engine.impl.db.DbSqlSession.dbSchemaCheckVersion(DbSqlSession.java:445)
   … 8 more
Caused by: org.h2.jdbc.JdbcSQLException: Table "ACT_GE_PROPERTY" not found; SQL statement:
select VALUE_ from ACT_GE_PROPERTY where NAME_ = 'schema.version' [42102-132]
   at org.h2.message.DbException.getJdbcSQLException(DbException.java:316)
   at org.h2.message.DbException.get(DbException.java:167)
   at org.h2.message.DbException.get(DbException.java:144)
   at org.h2.command.Parser.readTableOrView(Parser.java:4347)
   at org.h2.command.Parser.readTableFilter(Parser.java:1001)
   at org.h2.command.Parser.parseSelectSimpleFromPart(Parser.java:1529)
   at org.h2.command.Parser.parseSelectSimple(Parser.java:1626)
   at org.h2.command.Parser.parseSelectSub(Parser.java:1523)
   at org.h2.command.Parser.parseSelectUnion(Parser.java:1368)
   at org.h2.command.Parser.parseSelect(Parser.java:1356)
   at org.h2.command.Parser.parsePrepared(Parser.java:395)
   at org.h2.command.Parser.parse(Parser.java:278)
   at org.h2.command.Parser.parse(Parser.java:250)
   at org.h2.command.Parser.prepareCommand(Parser.java:222)
   at org.h2.engine.Session.prepareLocal(Session.java:420)
   at org.h2.server.TcpServerThread.process(TcpServerThread.java:224)
   at org.h2.server.TcpServerThread.run(TcpServerThread.java:135)
   at java.lang.Thread.run(Unknown Source)

   at org.h2.engine.SessionRemote.done(SessionRemote.java:505)
   at org.h2.command.CommandRemote.prepare(CommandRemote.java:70)
   at org.h2.command.CommandRemote.<init>(CommandRemote.java:48)
   at org.h2.engine.SessionRemote.prepareCommand(SessionRemote.java:401)
   at org.h2.jdbc.JdbcConnection.prepareCommand(JdbcConnection.java:1070)
   at org.h2.jdbc.JdbcPreparedStatement.<init>(JdbcPreparedStatement.java:71)
   at org.h2.jdbc.JdbcConnection.prepareStatement(JdbcConnection.java:233)
   at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
   at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
   at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
   at java.lang.reflect.Method.invoke(Unknown Source)
   at org.apache.ibatis.datasource.pooled.PooledConnection.invoke(PooledConnection.java:225)
   at $Proxy0.prepareStatement(Unknown Source)
   at org.apache.ibatis.executor.statement.PreparedStatementHandler.instantiateStatement(PreparedStatementHandler.java:50)
   at org.apache.ibatis.executor.statement.BaseStatementHandler.prepare(BaseStatementHandler.java:64)
   at org.apache.ibatis.executor.statement.RoutingStatementHandler.prepare(RoutingStatementHandler.java:39)
   at org.apache.ibatis.executor.SimpleExecutor.prepareStatement(SimpleExecutor.java:55)
   at org.apache.ibatis.executor.SimpleExecutor.doQuery(SimpleExecutor.java:40)
   at org.apache.ibatis.executor.BaseExecutor.query(BaseExecutor.java:94)
   at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:72)
   at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:59)
   … 13 more
org.activiti.engine.ActivitiException: no activiti tables in db.  set <property name="databaseSchemaUpdate" to value="true" or value="create-drop" (use create-drop for testing only!) in bean processEngineConfiguration in activiti.cfg.xml for automatic schema creation
   at org.activiti.engine.impl.db.DbSqlSession.dbSchemaCheckVersion(DbSqlSession.java:487)
   at org.activiti.engine.impl.db.DbSqlSession.performSchemaOperationsProcessEngineBuild(DbSqlSession.java:851)
   at org.activiti.engine.impl.SchemaOperationsProcessEngineBuild.execute(SchemaOperationsProcessEngineBuild.java:25)
   at org.activiti.engine.impl.interceptor.CommandExecutorImpl.execute(CommandExecutorImpl.java:24)
   at org.activiti.engine.impl.interceptor.CommandContextInterceptor.execute(CommandContextInterceptor.java:42)
   at org.activiti.engine.impl.interceptor.LogInterceptor.execute(LogInterceptor.java:33)
   at org.activiti.engine.impl.ProcessEngineImpl.<init>(ProcessEngineImpl.java:77)
   at org.activiti.engine.impl.cfg.ProcessEngineConfigurationImpl.buildProcessEngine(ProcessEngineConfigurationImpl.java:233)
   at com.sample.activiti.MainClass.main(MainClass.java:52)
Caused by: org.apache.ibatis.exceptions.PersistenceException:
### Error querying database.  Cause: org.h2.jdbc.JdbcSQLException: Table "ACT_GE_PROPERTY" not found; SQL statement:
select VALUE_ from ACT_GE_PROPERTY where NAME_ = 'schema.version' [42102-132]
   at org.h2.message.DbException.getJdbcSQLException(DbException.java:316)
   at org.h2.message.DbException.get(DbException.java:167)
   at org.h2.message.DbException.get(DbException.java:144)
   at org.h2.command.Parser.readTableOrView(Parser.java:4347)
   at org.h2.command.Parser.readTableFilter(Parser.java:1001)
   at org.h2.command.Parser.parseSelectSimpleFromPart(Parser.java:1529)
   at org.h2.command.Parser.parseSelectSimple(Parser.java:1626)
   at org.h2.command.Parser.parseSelectSub(Parser.java:1523)
   at org.h2.command.Parser.parseSelectUnion(Parser.java:1368)
   at org.h2.command.Parser.parseSelect(Parser.java:1356)
   at org.h2.command.Parser.parsePrepared(Parser.java:395)
   at org.h2.command.Parser.parse(Parser.java:278)
   at org.h2.command.Parser.parse(Parser.java:250)
   at org.h2.command.Parser.prepareCommand(Parser.java:222)
   at org.h2.engine.Session.prepareLocal(Session.java:420)
   at org.h2.server.TcpServerThread.process(TcpServerThread.java:224)
   at org.h2.server.TcpServerThread.run(TcpServerThread.java:135)
   at java.lang.Thread.run(Unknown Source)

### The error may exist in org/activiti/db/ibatis/engine.mapping.xml
### The error may involve org.activiti.persistence.selectDbSchemaVersion
### The error occurred while executing a query
### SQL: select VALUE_ from ACT_GE_PROPERTY where NAME_ = 'schema.version'
### Cause: org.h2.jdbc.JdbcSQLException: Table "ACT_GE_PROPERTY" not found; SQL statement:
select VALUE_ from ACT_GE_PROPERTY where NAME_ = 'schema.version' [42102-132]
   at org.h2.message.DbException.getJdbcSQLException(DbException.java:316)
   at org.h2.message.DbException.get(DbException.java:167)
   at org.h2.message.DbException.get(DbException.java:144)
   at org.h2.command.Parser.readTableOrView(Parser.java:4347)
   at org.h2.command.Parser.readTableFilter(Parser.java:1001)
   at org.h2.command.Parser.parseSelectSimpleFromPart(Parser.java:1529)
   at org.h2.command.Parser.parseSelectSimple(Parser.java:1626)
   at org.h2.command.Parser.parseSelectSub(Parser.java:1523)
   at org.h2.command.Parser.parseSelectUnion(Parser.java:1368)
   at org.h2.command.Parser.parseSelect(Parser.java:1356)
   at org.h2.command.Parser.parsePrepared(Parser.java:395)
   at org.h2.command.Parser.parse(Parser.java:278)
   at org.h2.command.Parser.parse(Parser.java:250)
   at org.h2.command.Parser.prepareCommand(Parser.java:222)
   at org.h2.engine.Session.prepareLocal(Session.java:420)
   at org.h2.server.TcpServerThread.process(TcpServerThread.java:224)
   at org.h2.server.TcpServerThread.run(TcpServerThread.java:135)
   at java.lang.Thread.run(Unknown Source)

   at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:8)
   at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:61)
   at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:53)
   at org.apache.ibatis.session.defaults.DefaultSqlSession.selectOne(DefaultSqlSession.java:38)
   at org.apache.ibatis.session.defaults.DefaultSqlSession.selectOne(DefaultSqlSession.java:33)
   at org.activiti.engine.impl.db.DbSqlSession.getDbVersion(DbSqlSession.java:509)
   at org.activiti.engine.impl.db.DbSqlSession.dbSchemaCheckVersion(DbSqlSession.java:445)
   … 8 more
Caused by: org.h2.jdbc.JdbcSQLException: Table "ACT_GE_PROPERTY" not found; SQL statement:
select VALUE_ from ACT_GE_PROPERTY where NAME_ = 'schema.version' [42102-132]
   at org.h2.message.DbException.getJdbcSQLException(DbException.java:316)
   at org.h2.message.DbException.get(DbException.java:167)
   at org.h2.message.DbException.get(DbException.java:144)
   at org.h2.command.Parser.readTableOrView(Parser.java:4347)
   at org.h2.command.Parser.readTableFilter(Parser.java:1001)
   at org.h2.command.Parser.parseSelectSimpleFromPart(Parser.java:1529)
   at org.h2.command.Parser.parseSelectSimple(Parser.java:1626)
   at org.h2.command.Parser.parseSelectSub(Parser.java:1523)
   at org.h2.command.Parser.parseSelectUnion(Parser.java:1368)
   at org.h2.command.Parser.parseSelect(Parser.java:1356)
   at org.h2.command.Parser.parsePrepared(Parser.java:395)
   at org.h2.command.Parser.parse(Parser.java:278)
   at org.h2.command.Parser.parse(Parser.java:250)
   at org.h2.command.Parser.prepareCommand(Parser.java:222)
   at org.h2.engine.Session.prepareLocal(Session.java:420)
   at org.h2.server.TcpServerThread.process(TcpServerThread.java:224)
   at org.h2.server.TcpServerThread.run(TcpServerThread.java:135)
   at java.lang.Thread.run(Unknown Source)

   at org.h2.engine.SessionRemote.done(SessionRemote.java:505)
   at org.h2.command.CommandRemote.prepare(CommandRemote.java:70)
   at org.h2.command.CommandRemote.<init>(CommandRemote.java:48)
   at org.h2.engine.SessionRemote.prepareCommand(SessionRemote.java:401)
   at org.h2.jdbc.JdbcConnection.prepareCommand(JdbcConnection.java:1070)
   at org.h2.jdbc.JdbcPreparedStatement.<init>(JdbcPreparedStatement.java:71)
   at org.h2.jdbc.JdbcConnection.prepareStatement(JdbcConnection.java:233)
   at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
   at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
   at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
   at java.lang.reflect.Method.invoke(Unknown Source)
   at org.apache.ibatis.datasource.pooled.PooledConnection.invoke(PooledConnection.java:225)
   at $Proxy0.prepareStatement(Unknown Source)
   at org.apache.ibatis.executor.statement.PreparedStatementHandler.instantiateStatement(PreparedStatementHandler.java:50)
   at org.apache.ibatis.executor.statement.BaseStatementHandler.prepare(BaseStatementHandler.java:64)
   at org.apache.ibatis.executor.statement.RoutingStatementHandler.prepare(RoutingStatementHandler.java:39)
   at org.apache.ibatis.executor.SimpleExecutor.prepareStatement(SimpleExecutor.java:55)
   at org.apache.ibatis.executor.SimpleExecutor.doQuery(SimpleExecutor.java:40)
   at org.apache.ibatis.executor.BaseExecutor.query(BaseExecutor.java:94)
   at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:72)
   at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:59)
   … 13 more
7 REPLIES 7

frederikherema1
Star Contributor
Star Contributor
What's the value of the property in your activiti config?

<property name="databaseSchemaUpdate"

koteswarrao
Champ in-the-making
Champ in-the-making
thankyou for the prompt reply.

the value of <property name="databaseSchemaUpdate" is set to "true"
why i am getting that error i dont know and moreover, when i create a new activiti project in my eclipse its not creating activiti.cfg.xml file..dont know why?

frederikherema1
Star Contributor
Star Contributor
How do you build your process-engine (code in at com.sample.activiti.MainClass.main(MainClass.java:52)) ?

koteswarrao
Champ in-the-making
Champ in-the-making
while creating "activiti" project, i didnt get "activiti.cfg.xml" file in my "src/test/resources". so i manually created one xml file and copied the required properties to it. some times i am getting abover error and if i point out to the "activiti.cfg.xml" file while building processengine its giving error like "there is no "activiti.cfg.xml file found in the classpath".


now i am trying to build processEngine using API as follows

ProcessEngine cachedprocessEngine = ProcessEngineConfiguration.createStandaloneProcessEngineConfiguration()
    .setDatabaseSchemaUpdate(ProcessEngineConfiguration.DB_SCHEMA_UPDATE_TRUE)
    .setJdbcUrl("jdbc:h2:mem:my-own-db;DB_CLOSE_DELAY=1000")
    .setJobExecutorActivate(true)
    .buildProcessEngine();

frederikherema1
Star Contributor
Star Contributor
What version of activiti are you running? Setting the databaseSchemaUpdate should do the trick…

koteswarrao
Champ in-the-making
Champ in-the-making
activiti version : 5.3

i dont have "H2" database installed in my system but i am trying to access it
i just started the "h2.start.bat" file which was provided in "activiti installation folder"

koteswarrao
Champ in-the-making
Champ in-the-making
Hi frederikheremans
this is the total summary of my approach

first i downloaded activiti designer plugins using "eclipse s/w updates" then i  created Activiti project and included all the actviti jars through "eclipse build path". after creation of project these are the folders which i found in my package explorer
i attached the file with name "package_explorer". there is nothing inside "src/test/resources".

then i tried programing for the workflow using following snippet

package org.activiti;

import org.activiti.engine.ProcessEngine;
import org.activiti.engine.ProcessEngineConfiguration;

public class SampleTask
{
        private static ProcessEngine processEngine;
public static void main(String[] args)
{

  if(processEngine==null)
  {
  ProcessEngine processEngine=ProcessEngineConfiguration.createStandaloneProcessEngineConfigurationFromResource("activiti.cfg.xml").buildProcessEngine();
                }

  System.out.println("processengine"+processEngine.getName());
}

}


then i am getting following error "actviti.cfg.xml" file not found
if i dont specify the file name and tried building with "createdefaultprocessengine" then i am getting above first said error, which is "database tables are not found"

note: i am not using anything other than these. namely no server, no database installation and all.