[jBPM] - How to replay event when Human Task Service says task is complete but GWT Console Server fail to process it?
by Thomas Setiabudi
Thomas Setiabudi [https://community.jboss.org/people/thomas.setiabudi] created the discussion
"How to replay event when Human Task Service says task is complete but GWT Console Server fail to process it?"
To view the discussion, visit: https://community.jboss.org/message/799283#799283
--------------------------------------------------------------
Hi,
We are using JBPM5.4 with the JBPM5.4 final full installer.
We have been going through this issue:
1. We created an application to complete some human tasks in one function, so lets say it completes 20 human tasks (20 different process instances) by calling calling Task Client's completeTask(..) 20 times.
(We use HornetQ Human Task Service)
2. All the 20 task will always get completed (double checked the Task status in Database changed to "Completed")
3. The weird thing is, out of those 20 tasks from 20 different process instances that got completed, usually we got 2 or 3 process instance that does not resume
My Question are:
1. Anyone have clue about what may be the cause?
2. In the event where Human Task Service tell the JBPM Console Server that there is a task completed, and JBPM Console Server fails to get that event, how do we replay this? is it possible? When JBPM says HornetQ Human Task Service, does it mean that HornetQ Messaging used to send message between JBPM Console Server and Human Task Service? if so, can we replay failed messages?
Any Help is appreciated.
Thank you
Regards,
Thomas Setiabudi
--------------------------------------------------------------
Reply to this message by going to Community
[https://community.jboss.org/message/799283#799283]
Start a new discussion in jBPM at Community
[https://community.jboss.org/choose-container!input.jspa?contentType=1&con...]
12 years, 10 months
[jBPM] - create a new boundary event
by Rafael Soledade
Rafael Soledade [https://community.jboss.org/people/rafaelsoledadem] created the discussion
"create a new boundary event"
To view the discussion, visit: https://community.jboss.org/message/799704#799704
--------------------------------------------------------------
Hi guys,
I want to implement a timeout event for one of my processes. I saw an example where there's a boundaryEvent -> Script -> End flow integrated in the main flow .bpmn (it's not connected to any other process), and basically it sets a timer cycle attached to some reference, which expires after a while (in my specific case, I want to force abortion of the task if it's not completed after 6 hours). Here's the bit of code of the example I downloaded:
<boundaryEvent id="_4" name="TimerEvent" attachedToRef="_7" >
<timerEventDefinition>
<timeCycle xsi:type="tFormalExpression">500ms</timeCycle>
</timerEventDefinition>
</boundaryEvent>
When trying to implement this in my actual project, I noticed there was no editor in the eclipse .bpmn interface for setting up boundary event, only intermediateCatchEvent. When I changed the .bpmn file code, it doesn't save my custom boundary event, it just overwrites it. So my question is, how can I set a boundary event in jbpm5.4 using Eclipse?
Cheers
--------------------------------------------------------------
Reply to this message by going to Community
[https://community.jboss.org/message/799704#799704]
Start a new discussion in jBPM at Community
[https://community.jboss.org/choose-container!input.jspa?contentType=1&con...]
12 years, 10 months
[jBPM] - Unable to view instance data in jBPM console when using postgresql
by Rahul Agrawal
Rahul Agrawal [https://community.jboss.org/people/rahulamt] created the discussion
"Unable to view instance data in jBPM console when using postgresql"
To view the discussion, visit: https://community.jboss.org/message/799285#799285
--------------------------------------------------------------
Hi All,
I am using the postgresql as process database. When I select any processinstance and click on Instance Data button on jBPM console I get the following exception.
org.hibernate.exception.SQLGrammarException: could not update: [org.jbpm.persistence.processinstance.ProcessInstanceInfo#346]
at org.hibernate.exception.SQLStateConverter.convert(SQLStateConverter.java:90)
at org.hibernate.exception.JDBCExceptionHelper.convert(JDBCExceptionHelper.java:66)
at org.hibernate.persister.entity.AbstractEntityPersister.update(AbstractEntityPersister.java:2453)
at org.hibernate.persister.entity.AbstractEntityPersister.updateOrInsert(AbstractEntityPersister.java:2335)
at org.hibernate.persister.entity.AbstractEntityPersister.update(AbstractEntityPersister.java:2635)
at org.hibernate.action.EntityUpdateAction.execute(EntityUpdateAction.java:115)
at org.hibernate.engine.ActionQueue.execute(ActionQueue.java:279)
at org.hibernate.engine.ActionQueue.executeActions(ActionQueue.java:263)
at org.hibernate.engine.ActionQueue.executeActions(ActionQueue.java:168)
at org.hibernate.event.def.AbstractFlushingEventListener.performExecutions(AbstractFlushingEventListener.java:321)
at org.hibernate.event.def.DefaultFlushEventListener.onFlush(DefaultFlushEventListener.java:50)
at org.hibernate.impl.SessionImpl.flush(SessionImpl.java:1027)
at org.hibernate.impl.SessionImpl.managedFlush(SessionImpl.java:365)
at org.hibernate.ejb.AbstractEntityManagerImpl$1.beforeCompletion(AbstractEntityManagerImpl.java:504)
at com.arjuna.ats.internal.jta.resources.arjunacore.SynchronizationImple.beforeCompletion(SynchronizationImple.java:101)
at com.arjuna.ats.arjuna.coordinator.TwoPhaseCoordinator.beforeCompletion(TwoPhaseCoordinator.java:269)
at com.arjuna.ats.arjuna.coordinator.TwoPhaseCoordinator.end(TwoPhaseCoordinator.java:89)
at com.arjuna.ats.arjuna.AtomicAction.commit(AtomicAction.java:177)
at com.arjuna.ats.internal.jta.transaction.arjunacore.TransactionImple.commitAndDisassociate(TransactionImple.java:1423)
at com.arjuna.ats.internal.jta.transaction.arjunacore.BaseTransaction.commit(BaseTransaction.java:137)
at com.arjuna.ats.jbossatx.BaseTransactionManagerDelegate.commit(BaseTransactionManagerDelegate.java:75)
at org.jboss.tm.usertx.client.ServerVMClientUserTransaction.commit(ServerVMClientUserTransaction.java:162)
at org.drools.persistence.jta.JtaTransactionManager.commit(JtaTransactionManager.java:179)
at org.drools.persistence.SingleSessionCommandService.execute(SingleSessionCommandService.java:348)
at org.drools.command.impl.CommandBasedStatefulKnowledgeSession.getProcessInstance(CommandBasedStatefulKnowledgeSession.java:125)
at org.jbpm.integration.console.CommandDelegate.getProcessInstanceVariables(CommandDelegate.java:318)
at org.jbpm.integration.console.ProcessManagement.getInstanceData(ProcessManagement.java:93)
at org.jboss.bpm.console.server.ProcessMgmtFacade.getInstanceData(ProcessMgmtFacade.java:224)
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.jboss.resteasy.core.MethodInjectorImpl.invoke(MethodInjectorImpl.java:140)
at org.jboss.resteasy.core.ResourceMethod.invokeOnTarget(ResourceMethod.java:255)
at org.jboss.resteasy.core.ResourceMethod.invoke(ResourceMethod.java:220)
at org.jboss.resteasy.core.ResourceMethod.invoke(ResourceMethod.java:209)
at org.jboss.resteasy.core.SynchronousDispatcher.getResponse(SynchronousDispatcher.java:519)
at org.jboss.resteasy.core.SynchronousDispatcher.invoke(SynchronousDispatcher.java:496)
at org.jboss.resteasy.core.SynchronousDispatcher.invoke(SynchronousDispatcher.java:119)
at org.jboss.resteasy.plugins.server.servlet.ServletContainerDispatcher.service(ServletContainerDispatcher.java:208)
at org.jboss.resteasy.plugins.server.servlet.HttpServletDispatcher.service(HttpServletDispatcher.java:55)
at org.jboss.resteasy.plugins.server.servlet.HttpServletDispatcher.service(HttpServletDispatcher.java:50)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.jboss.bpm.console.server.util.GWTJsonFilter.doFilter(GWTJsonFilter.java:59)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:235)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:190)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:525)
at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:92)
at org.jboss.web.tomcat.security.SecurityContextEstablishmentValve.process(SecurityContextEstablishmentValve.java:126)
at org.jboss.web.tomcat.security.SecurityContextEstablishmentValve.invoke(SecurityContextEstablishmentValve.java:70)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
at org.jboss.web.tomcat.service.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:158)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:330)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:829)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:598)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
at java.lang.Thread.run(Thread.java:662)
Caused by: org.postgresql.util.PSQLException: ERROR: column "processinstancebytearray" is of type oid but expression is of type bytea
at org.postgresql.core.v3.QueryExecutorImpl.receiveErrorResponse(QueryExecutorImpl.java:1548)
at org.postgresql.core.v3.QueryExecutorImpl.processResults(QueryExecutorImpl.java:1316)
at org.postgresql.core.v3.QueryExecutorImpl.execute(QueryExecutorImpl.java:191)
at org.postgresql.jdbc2.AbstractJdbc2Statement.execute(AbstractJdbc2Statement.java:452)
at org.postgresql.jdbc2.AbstractJdbc2Statement.executeWithFlags(AbstractJdbc2Statement.java:351)
at org.postgresql.jdbc2.AbstractJdbc2Statement.executeUpdate(AbstractJdbc2Statement.java:305)
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.postgresql.ds.jdbc23.AbstractJdbc23PooledConnection$StatementHandler.invoke(AbstractJdbc23PooledConnection.java:471)
at $Proxy463.executeUpdate(Unknown Source)
at org.jboss.resource.adapter.jdbc.WrappedPreparedStatement.executeUpdate(WrappedPreparedStatement.java:365)
at org.hibernate.persister.entity.AbstractEntityPersister.update(AbstractEntityPersister.java:2435)
... 64 more
Is it hibernate issue or issue with BMT?
Initially I have an empty process db. When I tried deploying jBPM console but I got similar error while persisting the SessionInfo instances. Then using an application I created those instances, even process instance is also started by using an external application, the link to which is provided in jBPM console. The external application uses CMT.
Please help
--------------------------------------------------------------
Reply to this message by going to Community
[https://community.jboss.org/message/799285#799285]
Start a new discussion in jBPM at Community
[https://community.jboss.org/choose-container!input.jspa?contentType=1&con...]
12 years, 10 months
[jBPM] - drools-scorecards : jaxb-generated bean property accessor names don't match what is expected in 'client' sources
by Szymek Pindelski
Szymek Pindelski [https://community.jboss.org/people/sweeper] created the discussion
"drools-scorecards : jaxb-generated bean property accessor names don't match what is expected in 'client' sources"
To view the discussion, visit: https://community.jboss.org/message/799651#799651
--------------------------------------------------------------
hi,
i'm trying to build a 'stable' release of drools + jbpm (drools 5.5.0.Final + jbpm 5.4.0.Final) and there seems to be an issue regarding drools-scorecards : generated bean property accessors' names don't match the expected (by 'client' sources) ones.
For instance in org.dmg.pmml.pmml_4_1.descr.Scorecard there is a property 'useReasonCodes' of type Boolean with a generated accessor name 'getUseReasonCodes()', while org.drools.scorecards.drl.AbstractDRLEmitter expects 'isUseReasonCodes()'.
This results in a compilation failure.
AFAIK accessor names can be customised in bindings.xml configuration file but i'm trying to build the same stable release that is available through jbpm full installer package and don't want to make any unnecessary amendments to the code.
To obtain the stable release of drools + jbpm i have used the procedure described in {thread:id=221196} :
-- git clone mailto:git@github.com git@github.com:droolsjbpm/droolsjbpm-build-bootstrap -b 5.5.x (to clone the bootstrap repository and set active branch to '5.5.x')
-- droolsjbpm-build-bootstrap/script/git-clone-others.sh 5.5.x 5.4.x (to clone the dependent repositories and set active branches to '5.5.x' for drools and '5.4.x' for jbpm)
-- droolsjbpm-build-bootstrap/script/git-checkout-all.sh 5.5.0.Final 5.4.0.Final to checkout tagged versions 5.5.0.Final (drools with dependencies) and 5.4.0.Final (jbpm)
Afterwards i tried running droolsjbpm-build-bootstrap/script/mvn-all.sh clean install -DskipTests to build all modules - but ended up with described compilation errors in drools-scorecards.
I attached the source files metioned above (generated Scorecard and 'client' AbstractDRLEmitter).
Thanks in advance for any assistance.
--------------------------------------------------------------
Reply to this message by going to Community
[https://community.jboss.org/message/799651#799651]
Start a new discussion in jBPM at Community
[https://community.jboss.org/choose-container!input.jspa?contentType=1&con...]
12 years, 10 months
[jBPM] - jBPM Console Server can't find WorkItem Handler Implementation
by José Tomás Tocino
José Tomás Tocino [https://community.jboss.org/people/theom3ga] created the discussion
"jBPM Console Server can't find WorkItem Handler Implementation"
To view the discussion, visit: https://community.jboss.org/message/799582#799582
--------------------------------------------------------------
Hi there.
I'm having a problem trying to run a process that has a Work Item. The server can't find the implementation for the Work Item Handler. These are the steps I follow.
First I create the work item in drools-guvnor, it is called 'Activo1', and it's defined as follows:
import org.drools.process.core.datatype.impl.type.ObjectDataType;
import org.drools.process.core.datatype.impl.type.StringDataType;
[
[
"name" : "Activo1",
"parameters" : [
"MyFirstParam" : new StringDataType(),
],
"results" : [
"Result" : new StringDataType()
],
"displayName" : "My Task",
"icon" : "",
]
]
Then, I create a simple process with a start event, the work item, and the end event. I build a snapshot of the package and the process appears in the list of available processes in the jbpm-console.
Next, I edit the conf/META-INF/CustomWorkItemHandlers.conf so it looks like this:
[
"Log": new org.jbpm.process.instance.impl.demo.SystemOutWorkItemHandler(),
"Activo1": new defaultPackage.Activo1()
]
I use ant stop.demo, and then ant start.demo, then I check in the console server war that the CustomWorkItemHandlers file is properly updated. So far it's ok.
For the implementation, I created a folder called 'defaultPackage' and, inside, I create an Activo1.java file with the following contents:
package defaultPackage;
import org.drools.runtime.process.*;
public class Activo1 implements WorkItemHandler{
public void executeWorkItem(WorkItem workItem, WorkItemManager manager) {
System.out.println("GOOD BYE WORLD");
manager.completeWorkItem(workItem.getId(), null);
}
public void abortWorkItem (WorkItem workItem, WorkItemManager manager) {
// Nothing
}
}
In order to compile it, I use
javac -cp "runtime/lib/*" defaultPackage/Activo1.java
And in order to create the JAR file I use this:
jar cfe Activo1.jar defaultPackage.Activo1 defaultPackage
The previous two commands may be the part that's wrong, because I'm an absolute java noob.
I copy the JAR file in all the 'lib' folders I come across, namely $installer/lib, $installer/runtime/lib and $installer/jboss[...]/standalone/lib.
When I launch the process in the jbpm console, I get the following error in the SERVER.LOG file:
Could not commit session: org.jbpm.workflow.instance.WorkflowRuntimeException: [defaultPackage.Proceso1:4 - My Task:2] -- Could not find work item handler for Activo1
HOWEVER, If I change the CustomWorkItemHandlers.conf file so it looks like this:
[
"Log": new org.jbpm.process.instance.impl.demo.SystemOutWorkItemHandler(),
"Activo1": new org.jbpm.process.instance.impl.demo.SystemOutWorkItemHandler()
]
and then I launch the process, the default SystemOut work item handler works OK and I get the following in the LOG file:
[stdout] (http-localhost-127.0.0.1-8080-1) Executing work item WorkItem 5 [name=Activo1, state=0, processInstanceId=5, parameters{TaskName=Activo1}]
So the work item definition and the model definition seem to be OK. The problem seems to be in the place or the way the JAR was generated.
Please help!
--------------------------------------------------------------
Reply to this message by going to Community
[https://community.jboss.org/message/799582#799582]
Start a new discussion in jBPM at Community
[https://community.jboss.org/choose-container!input.jspa?contentType=1&con...]
12 years, 10 months