cancel
Showing results for 
Search instead for 
Did you mean: 

exception when using 'enableDuplicateFiltering'

asuka
Champ in-the-making
Champ in-the-making
I got an exception when enable duplicate check by setting "enableDuplicateFiltering" of DeploymentBuilder:

2014-08-20 14:35:18,731 [localhost-startStop-1] DEBUG org.activiti.engine.impl.interceptor.LogInterceptor - — starting DeployCmd ——————————————————–
2014-08-20 14:35:18,731 [localhost-startStop-1] DEBUG org.activiti.engine.impl.persistence.entity.DeploymentEntity.selectDeploymentsByName - ==>  Preparing: select * from ACT_RE_DEPLOYMENT D where NAME_=? order by D.DEPLOY_TIME_ desc
2014-08-20 14:35:18,735 [localhost-startStop-1] DEBUG org.activiti.engine.impl.interceptor.CommandContext - Error while closing command context
org.apache.ibatis.exceptions.PersistenceException:
### Error querying database.  Cause: org.apache.ibatis.type.TypeException: Error setting null for parameter #1 with JdbcType OTHER . Try setting a different JdbcType for this parameter or a different jdbcTypeForNull configuration property.
### The error may exist in org/activiti/db/mapping/entity/Deployment.xml
### The error may involve org.activiti.engine.impl.persistence.entity.DeploymentEntity.selectDeploymentsByName-Inline
### The error occurred while setting parameters
### SQL: select * from ACT_RE_DEPLOYMENT D where NAME_=? order by D.DEPLOY_TIME_ desc
### Cause: org.apache.ibatis.type.TypeException: Error setting null for parameter #1 with JdbcType OTHER . Try setting a different JdbcType for this parameter or a different jdbcTypeForNull configuration property.
   at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:26)
   at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:111)
   at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:102)
   at org.activiti.engine.impl.db.DbSqlSession.selectListWithRawParameter(DbSqlSession.java:415)
   at org.activiti.engine.impl.db.DbSqlSession.selectList(DbSqlSession.java:406)
   at org.activiti.engine.impl.db.DbSqlSession.selectList(DbSqlSession.java:401)
   at org.activiti.engine.impl.persistence.entity.DeploymentEntityManager.findLatestDeploymentByName(DeploymentEntityManager.java:142)
   at org.activiti.engine.impl.cmd.DeployCmd.execute(DeployCmd.java:55)
   at org.activiti.engine.impl.cmd.DeployCmd.execute(DeployCmd.java:37)
   at org.activiti.engine.impl.interceptor.CommandInvoker.execute(CommandInvoker.java:24)
   at org.activiti.engine.impl.interceptor.CommandContextInterceptor.execute(CommandContextInterceptor.java:57)
   at org.activiti.engine.impl.interceptor.LogInterceptor.execute(LogInterceptor.java:37)
   at org.activiti.engine.impl.cfg.CommandExecutorImpl.execute(CommandExecutorImpl.java:40)
   at org.activiti.engine.impl.cfg.CommandExecutorImpl.execute(CommandExecutorImpl.java:35)
   at org.activiti.engine.impl.RepositoryServiceImpl.deploy(RepositoryServiceImpl.java:78)
   at org.activiti.engine.impl.repository.DeploymentBuilderImpl.deploy(DeploymentBuilderImpl.java:156)
   at com.venustech.tsoc.cupid.workflow.service.WorkFlowSetupListener.init(WorkFlowSetupListener.java:134)
   at com.venustech.tsoc.MainModuleSetup.a(SourceFile:266)
   at com.venustech.tsoc.MainModuleSetup.init(SourceFile:155)
   at org.nutz.mvc.impl.NutLoading.evalSetup(NutLoading.java:240)
   at org.nutz.mvc.impl.NutLoading.load(NutLoading.java:104)
   at com.venustech.tsoc.CupidNutLoading.load(SourceFile:22)
   at org.nutz.mvc.ActionHandler.<init>(ActionHandler.java:19)
   at org.nutz.mvc.NutFilter.init(NutFilter.java:54)
   at com.venustech.tsoc.CupidNutFilter.init(SourceFile:36)
   at org.apache.catalina.core.ApplicationFilterConfig.initFilter(ApplicationFilterConfig.java:279)
   at org.apache.catalina.core.ApplicationFilterConfig.getFilter(ApplicationFilterConfig.java:260)
   at org.apache.catalina.core.ApplicationFilterConfig.<init>(ApplicationFilterConfig.java:105)
   at org.apache.catalina.core.StandardContext.filterStart(StandardContext.java:4809)
   at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5485)
   at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
   at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:901)
   at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:877)
   at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:632)
   at org.apache.catalina.startup.HostConfig.deployDescriptor(HostConfig.java:672)
   at org.apache.catalina.startup.HostConfig$DeployDescriptor.run(HostConfig.java:1862)
   at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
   at java.util.concurrent.FutureTask.run(FutureTask.java:262)
   at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
   at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
   at java.lang.Thread.run(Thread.java:745)


Mybatis version is mybatis-3.3.0-SNAPSHOT

Thanks for any help!
2 REPLIES 2

jbarrez
Star Contributor
Star Contributor
The sql query in question is

<code>
select * from ${prefix}ACT_RE_DEPLOYMENT D where NAME_=#{parameter} order by D.DEPLOY_TIME_ desc
</code>

Are you passing somehow null in it? Is this default activiti or did you change the mapping files?

asuka
Champ in-the-making
Champ in-the-making
Thanks for your reply.I use the activiti downloaded from this website and did not change any file.
Finally I found where the problem is:
When using "enableDuplicateFiltering", the name must be set, otherwise the sql would throw a null exception.

DeploymentBuilder builder = repositoryService.createDeployment();
builder.name(file);