Hi,
I am using jBPM 3.2 Alpha 2 and trying to start the a process from an ejb3 
messagedrivenbean by:


  |     private void kickOffProcess(String processname, String [] attrnames, 
java.io.Serializable[] attrvalues) {
  |             org.jbpm.JbpmConfiguration jbpmConfiguration = 
org.jbpm.JbpmConfiguration.parseXmlString(
  |                   "<jbpm-configuration>" +
  |                   
  |                   // A jbpm-context mechanism separates the jbpm core 
  |                   // engine from the services that jbpm uses from 
  |                   // the environment.  
  |                   "<jbpm-context>"+
  |                   "<service name='persistence' 
factory='org.jbpm.persistence.db.DbPersistenceServiceFactory' />"+              
   
  |                   "<service name='tx' 
factory='org.jbpm.tx.TxServiceFactory' />"+                 
  |                   "<service name='message' 
factory='org.jbpm.msg.db.DbMessageServiceFactory' />" +                         
 
  |                   "<service name='scheduler' 
factory='org.jbpm.scheduler.db.DbSchedulerServiceFactory' />"+
  |                   "<service name='logging' 
factory='org.jbpm.logging.db.DbLoggingServiceFactory' />"+
  |                   "<service name='authentication' 
factory='org.jbpm.security.authentication.DefaultAuthenticationServiceFactory' 
/>"+
  |                 "</jbpm-context>"+
  | 
  |                 // configuration property used by persistence service impl 
org.jbpm.persistence.db.DbPersistenceServiceFactory 
  |                 "<string name='resource.hibernate.cfg.xml' 
value='config/hibernate.cfg.xml' />"+
  | 
  |                 // <!-- configuration resource files pointing to default 
configuration files in jbpm-{version}.jar -->
  |                 "<string name='resource.business.calendar' 
value='org/jbpm/calendar/jbpm.business.calendar.properties' />"+             
  |                 "<string name='resource.default.modules' 
value='org/jbpm/graph/def/jbpm.default.modules.properties' />"+
  |                 "<string name='resource.converter' 
value='org/jbpm/db/hibernate/jbpm.converter.properties' />"+
  |                 "<string name='resource.action.types' 
value='org/jbpm/graph/action/action.types.xml' />"+
  |                 "<string name='resource.node.types' 
value='org/jbpm/graph/node/node.types.xml' />"+
  |                 "<string name='resource.parsers' 
value='org/jbpm/jpdl/par/jbpm.parsers.xml' />"+
  |                 "<string name='resource.varmapping' 
value='org/jbpm/context/exe/jbpm.varmapping.xml' />"+
  |                 "<string name='resource.mail.templates' 
value='jbpm.mail.templates.xml' />"+
  | 
  |                 "<int    name='jbpm.byte.block.size' value='1024' 
singleton='true' />"+
  |                 "<string name='jbpm.mail.smtp.host' value='localhost' />"+
  |                 "<bean   name='jbpm.task.instance.factory' 
class='org.jbpm.taskmgmt.impl.DefaultTaskInstanceFactoryImpl' singleton='true' 
/>"+
  |                 "<bean   name='jbpm.variable.resolver' 
class='org.jbpm.jpdl.el.impl.JbpmVariableResolver' singleton='true' />"+        
         
  |                 "<bean   name='jbpm.mail.address.resolver' 
class='org.jbpm.identity.mail.IdentityAddressResolver' singleton='true' />"+
  |                 
  |                 "<bean name='jbpm.job.executor' 
class='org.jbpm.job.executor.JobExecutor'>" +
  |                   "<field name='jbpmConfiguration'><ref 
bean='jbpmConfiguration' /></field>"+
  |                   "<field name='name'><string value='JbpmJobExector' 
/></field>"+
  |                   "<field name='nbrOfThreads'><int value='1' /></field>"+
  |                   "<field name='idleInterval'><int value='5000' /></field>"+
  |                   "<field name='maxIdleInterval'><int value='3600000' 
/></field> <!-- 1 hour -->"+
  |                   "<field name='historyMaxSize'><int value='20' /></field>"+
  |                   "<field name='maxLockTime'><int value='600000' /></field> 
<!-- 10 minutes -->"+
  |                   "<field name='lockMonitorInterval'><int value='60000' 
/></field> <!-- 1 minute -->"+
  |                   "<field name='lockBufferTime'><int value='5000' 
/></field> <!-- 5 seconds -->"+
  |                 "</bean>"+
  |                   "</jbpm-configuration>"
  |                 );          
  |         org.jbpm.JbpmContext jbpmcontext 
=jbpmConfiguration.createJbpmContext();
  |     
  |             try {
  |                     
  |             org.jbpm.graph.exe.ProcessInstance pi = 
jbpmcontext.newProcessInstance(processname); 
  |             
  |             for (int i=0;i<attrnames.length;i++)                    
pi.getContextInstance().setVariable(attrnames,attrvalues);      
  | 
  |             pi.getRootToken().signal();
  | 
  |             jbpmcontext.save(pi);
  |             } catch (Exception ex) { 
  |                     ex.printStackTrace();
  |             } finally {
  |                        // EXCEPTION HERE
  |                     jbpmcontext.close(); 
  |             }
  |     
  |             
  |     }
  | 
  | 

I get an exception when I am calling jbpmcontext.close():


  | 13:09:33,078 DEBUG [Services] executing default save operations
  | 13:09:33,078 DEBUG [HibernateSaveOperation] saving process instance
  | 13:09:33,093 DEBUG [SaveLogsOperation] flushing logs to logging service.
  | 13:09:33,109 DEBUG [CascadeSaveOperation] cascading save of '[EMAIL 
PROTECTED]'
  | 13:09:33,109 DEBUG [JbpmContext] closing JbpmContext
  | 13:09:33,109 DEBUG [Services] closing service 'persistence': [EMAIL 
PROTECTED]
  | 13:09:33,109 DEBUG [DbPersistenceService] committing hibernate transaction
  | 13:09:33,140 ERROR [JDBCTransaction] JDBC commit failed
  | java.sql.SQLException: You cannot commit during a managed transaction!
  |     at 
org.jboss.resource.adapter.jdbc.BaseWrapperManagedConnection.jdbcCommit(BaseWrapperManagedConnection.java:543)
  |     at 
org.jboss.resource.adapter.jdbc.WrappedConnection.commit(WrappedConnection.java:334)
  |     at 
org.hibernate.transaction.JDBCTransaction.commitAndResetAutoCommit(JDBCTransaction.java:139)
  |     at 
org.hibernate.transaction.JDBCTransaction.commit(JDBCTransaction.java:115)
  |     at 
org.jbpm.persistence.db.DbPersistenceService.endTransaction(DbPersistenceService.java:233)
  |     at 
org.jbpm.persistence.db.DbPersistenceService.close(DbPersistenceService.java:170)
  |     at org.jbpm.svc.Services.close(Services.java:222)
  |     at org.jbpm.JbpmContext.close(JbpmContext.java:139)
  | [..]
  | 

The task nodes in the process appears in the webapp, but when I use
a transition button they won't follow the transition. Can anyone help me?

View the original post : 
http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4004227#4004227

Reply to the post : 
http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4004227
_______________________________________________
jboss-user mailing list
[email protected]
https://lists.jboss.org/mailman/listinfo/jboss-user

Reply via email to