[JBoss JIRA] Created: (JBPM-1115) Broken datamodel when a detached ProcInst is saved
by Britt Miner (JIRA)
Broken datamodel when a detached ProcInst is saved
--------------------------------------------------
Key: JBPM-1115
URL: http://jira.jboss.com/jira/browse/JBPM-1115
Project: JBoss jBPM
Issue Type: Bug
Components: Core Engine
Affects Versions: jBPM jPDL 3.2
Reporter: Britt Miner
Assigned To: Tom Baeyens
I've noticed (accidentally of course, -ahem-) that if you attempt to call jbpmContext.save(processInstance) on a pi that was loaded outside of the current session, Hibernate will save a new pi with a new Id--however it will reference the same rootToken, etc. as the original pi, and all kinds of unexpected behavior quietly ensues.
Of course, loading a fresh copy of the pi immediately before you do anything with it avoids the problem; however, a lot of serious data integrity hangs on remembering to do that every time. (for instance, when a pi being viewed in a UI is injected into an action component, the programmer must remember to load up a fresh copy before working on it.)
Since failing to re-load a detached pi can result in what seems to be a broken jBPM data model, jBPM should probably be doing something itself to avoid the problem.
I think there are possibly two ways to prevent this from happening:
1) Simply changing the HibernateSaveOperation.save(processInstance) method to saveOrUpdate() seems to perform cleanly.
2) Do a check on the pi, and throw an error if it doesn't belong to the current hibernate session.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.jboss.com/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
16 years, 1 month
[JBoss JIRA] Created: (JBPM-1173) Fork Node doesn't support conditions on Transitions
by Britt Miner (JIRA)
Fork Node doesn't support conditions on Transitions
---------------------------------------------------
Key: JBPM-1173
URL: http://jira.jboss.com/jira/browse/JBPM-1173
Project: JBoss jBPM
Issue Type: Bug
Components: Core Engine
Affects Versions: jBPM jPDL 3.2
Reporter: Britt Miner
Assigned To: Tom Baeyens
Documentation does not clearly provide any limits to where conditions on Transitions can be used, but the Fork Node doesn't support Transition conditions. For instance
<fork name='FORK_1' >
<transition name='t1' to='NODE_A'>
<condition>#{false}</condition>
</transition>
<transition name='t2' to='NODE_B'/>
</fork>
will fail with a "transition condition #{false} evaluated to 'false'" error when the fork attempts to take transition 't1'. Why provide for this? Someone might want to:
<fork name='FORK_1' >
<transition name='startMyProject' to='...'/>
<transition name='orderEngine to='...'>
<condition>#{needsEngine}</condition>
</transition>
<transition name='orderWheels to='...'>
<condition>#{needsWheels}</condition>
</transition>
...etc...
</fork>
Correcting the issue is as simple as making the following change to org.jbpm.graph.node.Fork.java:
// BRITT --replace the following line with the code below
// to check conditions before adding valid transitions...
//transitionNames = getLeavingTransitionsMap().keySet(); //original line
Iterator iter = leavingTransitions.iterator();
while (iter.hasNext()) {
Transition candidate = (Transition) iter.next();
String conditionExpression = candidate.getCondition();
if (conditionExpression != null) {
Object result = JbpmExpressionEvaluator.evaluate(conditionExpression, executionContext);
if (Boolean.TRUE.equals(result)) {
transitionNames.add(candidate.getName());
}
}else{
transitionNames.add(candidate.getName());
}
}
if (transitionNames.size() == 0) {
transitionNames.add(this.getDefaultLeavingTransition().getName());
this.getDefaultLeavingTransition().removeConditionEnforcement();
log.warn("All transition conditions have evaluated to 'false'. Taking the default transition.");
}
// --BRITT
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.jboss.com/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
16 years, 1 month
[JBoss JIRA] Updated: (JBPM-1029) calling getGroupTaskList results in 4N queries being made to the database
by Thomas Diesler (JIRA)
[ https://jira.jboss.org/jira/browse/JBPM-1029?page=com.atlassian.jira.plug... ]
Thomas Diesler updated JBPM-1029:
---------------------------------
Fix Version/s: jBPM 3.3.2 GA
Revisit open bugs
> calling getGroupTaskList results in 4N queries being made to the database
> -------------------------------------------------------------------------
>
> Key: JBPM-1029
> URL: https://jira.jboss.org/jira/browse/JBPM-1029
> Project: JBoss jBPM
> Issue Type: Bug
> Components: Core Engine
> Affects Versions: jBPM 3.2.1
> Reporter: David Sheth
> Fix For: jBPM 3.3.2 GA
>
>
> In the seam 2.0.0.Beta 1 dvdstore example, which uses jbpm-jpdl 3.2.1, one of the admin pages lists all the tasks assigned to the group of the admin, allowing the admin to assign one of the tasks to him or herself. In this page, a task represents an order placed in the store.
> Each time a new order is placed in the store, the number of tasks on that admin page goes up by one, as would be expected. However, the number of queries used render the page of tasks goes up by 4 each time a new order is placed.
> This seems bad. I asked about this in the seam forum, and got this back from Gavin:
> --begin quote
> AFAIK, this is a jBPM question, not a Seam question, unless you have evidence otherwise.
> --end quote
> The specific bit of code in the seam bpm libs that is being called is :
> return ManagedJbpmContext.instance()
> .getGroupTaskList( new ArrayList( Actor.instance().getGroupActorIds() ) );
> which is basically just calling getGroupTaskList on an org.jbpm.JbpmContext instance.
> Reference to the post in the seam forum:
> http://www.jboss.com/index.html?module=bb&op=viewtopic&t=114668
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: https://jira.jboss.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
16 years, 1 month
[JBoss JIRA] Updated: (JBPM-1075) org.hibernate.hql.ast.QuerySyntaxException in org.jbpm.db.TaskMgmtSession.findPooledTaskInstances(List actorIds)
by Thomas Diesler (JIRA)
[ https://jira.jboss.org/jira/browse/JBPM-1075?page=com.atlassian.jira.plug... ]
Thomas Diesler updated JBPM-1075:
---------------------------------
Fix Version/s: jBPM 3.3.2 GA
Revisit open bugs
> org.hibernate.hql.ast.QuerySyntaxException in org.jbpm.db.TaskMgmtSession.findPooledTaskInstances(List actorIds)
> ----------------------------------------------------------------------------------------------------------------
>
> Key: JBPM-1075
> URL: https://jira.jboss.org/jira/browse/JBPM-1075
> Project: JBoss jBPM
> Issue Type: Bug
> Components: Core Engine
> Affects Versions: jBPM 3.1.4, jBPM 3.2.0, jBPM 3.2.1, jBPM 3.2.2
> Environment: java version "1.5.0_04"
> Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0_04-b05)
> Java HotSpot(TM) Client VM (build 1.5.0_04-b05, mixed mode, sharing)
> Reporter: Jo Geraerts
> Fix For: jBPM 3.3.2 GA
>
> Attachments: patch
>
>
> I encountered this bug when I was developping an application with jboss seam. At some point there was a Actor with no group ids. The processInstanceList component will invoke the getGroupTaskList(List actorIds) with a List with 0 entries.
> So we end up in org.jbpm.db.TaskMgmtSession.findPooledTaskInstances(actorIds) with the same List ( with 0 entries)
> I get this Exception:
> 10:43:42,265 ERROR [TaskMgmtSession] org.hibernate.hql.ast.QuerySyntaxException: unexpected end of s
> ubtree [
> select distinct ti
> from org.jbpm.taskmgmt.exe.PooledActor pooledActor
> join pooledActor.taskInstances ti
> where pooledActor.actorId in ( )
> and ti.actorId is null
> and ti.isSuspended != true
> and ti.isOpen = true
> ]
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: https://jira.jboss.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
16 years, 1 month
[JBoss JIRA] Created: (JBPM-1688) jbpm-console and .par upload
by Eric Cartman (JIRA)
jbpm-console and .par upload
----------------------------
Key: JBPM-1688
URL: https://jira.jboss.org/jira/browse/JBPM-1688
Project: JBoss jBPM
Issue Type: Bug
Security Level: Public (Everyone can see)
Components: Web Interface
Affects Versions: JBossBPM-3.3.1
Reporter: Eric Cartman
Priority: Minor
An usability issue, when you try to upload a processdefinition.xml, there's no indication or validation to ask for a .par file.
You only get a weird error "org.jbpm.jpdl.JpdlException" was thrown. The message is: [[ERROR] no processdefinition.xml inside process archive]".... and no other indication.
PD: I've found it, after I've realized at JBossEsb, that all quickstarts/bpm_orchestrations have changed and there's no other way to deploy a process (avoiding ant and eclipse).
Thanks,
Eric
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: https://jira.jboss.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
16 years, 1 month
[JBoss JIRA] Created: (JBPM-1455) configuration-property does not work if the method is declared in a super class
by Alejandro Abdelnur (JIRA)
configuration-property does not work if the method is declared in a super class
-------------------------------------------------------------------------------
Key: JBPM-1455
URL: https://jira.jboss.org/jira/browse/JBPM-1455
Project: JBoss jBPM
Issue Type: Bug
Security Level: Public (Everyone can see)
Components: Core Engine
Environment: all
Reporter: Alejandro Abdelnur
If an ActionHandler is used with config-type set to configuration-property it throws an exception if the setConfiguration(String s) method is declared in a super class of the instanciated class. The log reports:
----------
Caused by: java.lang.NoSuchMethodException: *****.TestWorkflowEngine$MyTAsyncActionHandler.setConfiguration(java.lang.String)
at java.lang.Class.getDeclaredMethod(Class.java:1909)
at org.jbpm.instantiation.ConfigurationPropertyInstantiator.instantiate(ConfigurationPropertyInstantiator.java:41)
... 46 more
---------
The code it should use the getMethod() instead of the getDeclaredMethod()
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: https://jira.jboss.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
16 years, 1 month
[JBoss JIRA] Updated: (JBPM-1070) The jBPM test configuration has problem with database setup
by Thomas Diesler (JIRA)
[ https://jira.jboss.org/jira/browse/JBPM-1070?page=com.atlassian.jira.plug... ]
Thomas Diesler updated JBPM-1070:
---------------------------------
Fix Version/s: jBPM 3.3.2 GA
Revisit open bugs
> The jBPM test configuration has problem with database setup
> -----------------------------------------------------------
>
> Key: JBPM-1070
> URL: https://jira.jboss.org/jira/browse/JBPM-1070
> Project: JBoss jBPM
> Issue Type: Bug
> Affects Versions: jBPM 3.2.2
> Reporter: Jiri Pechanec
> Fix For: jBPM 3.3.2 GA
>
>
> The jBPM test process expects hiberante.properties file to be placed in defined configuration directory. jBPM config file JBPM.3/jpdl/jar/src/test/config/jbpm.cfg.xml orders to use hibernate.properties file (<string name="resource.hibernate.properties" value="hibernate.properties" />).
> But the JBPM.3/jpdl/jar/src/test/java/org/jbpm/db/AbstractDbTestCase.java uses config file less JBPM.3/jpdl/jar/src/test/java/org/jbpm/jbpm.test.cfg.xml and the line mentioned above is missing. Thus the configuration is read from standard hibernate.cfg.xml.
> Solution
> Either add the missing line to jbpm.test.cfg.xml or change AbstractDbTestCase.java to use central config file in config directory. The second one is preferred.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: https://jira.jboss.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
16 years, 1 month