[JBoss JIRA] Created: (JBPM-1163) Bad property format of hibernate.cfg.xml snippet in the user guide "Persistence" chapter
by Julien Kronegg (JIRA)
Bad property format of hibernate.cfg.xml snippet in the user guide "Persistence" chapter
----------------------------------------------------------------------------------------
Key: JBPM-1163
URL: http://jira.jboss.com/jira/browse/JBPM-1163
Project: JBoss jBPM
Issue Type: Bug
Components: Documentation
Affects Versions: jBPM jPDL 3.2.2
Environment: CVS code JBPM 3.2.2 downloaded on 2008.04.18.
Reporter: Julien Kronegg
Assigned To: Tom Baeyens
Priority: Optional
Fix For: jBPM 3.3
In "/jbpm.3/jpdl/userguide/en/modules/persistence.xml" (CVS version 1.11), the "Managed transactions" section describe the most important configuration property from the "hibernate.cfg.xml" file as follow:
"hibernate.connection.datasource= --datasource JNDI name-- like e.g. java:/DefaultDS"
This property should be described using a XML format because the "hibernate.cfg.xml" in in XML format, for example:
<property name="hibernate.connection.datasource"> --datasource JNDI name-- like e.g. java:/DefaultDS </property>
Note: not tested on the german documentation.
--
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
15 years, 11 months
[JBoss JIRA] Created: (JBPM-1161) Bad references to property "jbpm.hibernate.cfg.xml" from the "jbpm.properties" file removed in JBPM 3.1
by Julien Kronegg (JIRA)
Bad references to property "jbpm.hibernate.cfg.xml" from the "jbpm.properties" file removed in JBPM 3.1
-------------------------------------------------------------------------------------------------------
Key: JBPM-1161
URL: http://jira.jboss.com/jira/browse/JBPM-1161
Project: JBoss jBPM
Issue Type: Bug
Components: Documentation
Affects Versions: jBPM jPDL 3.2.2
Environment: CVS code of JBPM 3.2.2 obtained on 2008.04.18
Reporter: Julien Kronegg
Assigned To: Tom Baeyens
Priority: Minor
The JBPM 3.2.2 user guide refers to the file "jbpm.properties", which was replaced by "jbpm.cfg.xml" in version JBPM 3.1 (see http://sourceforge.net/project/shownotes.php?release_id=383725&group_id=7... ).
While references to "jbpm.properties" may be valid in a change log or a migration guide, they are not valid in the following files.
/jbpm.3/jpdl/userguide/en/modules/persistence.xml (CVS version 1.11):
In the sentence "Note that the hibernate configuration file resource is mapped in the property 'jbpm.hibernate.cfg.xml' and can be customized in the jbpm.cfg.xml", the "jbpm.hibernate.cfg.xml" property name should be replaced by "resource.hibernate.cfg.xml" (i.e. the property of the file snippet shown just below that sentence).
/jbpm.3/jpdl/userguide/en/modules/configuration.xml (CVS version 1.7):
The sentence
"Location: <literal>hibernate.cfg.xml</literal> unless specified otherwise in the jbpm.hibernate.cfg.xml property in the jbpm.properties file."
should be replaced by:
"Location: <literal>hibernate.cfg.xml</literal> unless specified otherwise in the resource.hibernate.cfg.xml property in the jbpm.cfg.xml file."
--
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
15 years, 11 months
[JBoss JIRA] Created: (JBPM-1169) NPE in org.jbpm.graph.node.Decision.execute() when using transitions with null conditions migrated from JBPM 3.0
by Julien Kronegg (JIRA)
NPE in org.jbpm.graph.node.Decision.execute() when using transitions with null conditions migrated from JBPM 3.0
----------------------------------------------------------------------------------------------------------------
Key: JBPM-1169
URL: http://jira.jboss.com/jira/browse/JBPM-1169
Project: JBoss jBPM
Issue Type: Bug
Components: Core Engine
Affects Versions: jBPM jPDL 3.2.2
Environment: win2000, JBPM 3.2.2, Jboss 4.2.2, Eclipse Europa 3.3
Reporter: Julien Kronegg
Assigned To: Tom Baeyens
A NullPointerException is raised by org.jbpm.graph.node.Decision.execute(ExecutionContext) if the table JBPM_DECISIONCONDITIONS row has null EXPRESSION_ field.
The following conditions must meet:
1) initially, the user has a JBPM database in version 3.0 and a decision with conditional transitions
2) one of the conditional condition is cleared, which leads to setting the field EXPRESSION_ to null in the database
3) the JBPM database migrated from 3.0 schema to version 3.2
Note: the JBPM 3.2 database is (almost?) the same as the version 3.1, so the bug should also occur in version 3.1 (not tested).
The exception is:
Exception in thread "main" org.jbpm.graph.def.DelegationException
at org.jbpm.graph.def.GraphElement.raiseException(GraphElement.java:387)
at org.jbpm.graph.def.GraphElement.raiseException(GraphElement.java:378)
at org.jbpm.graph.node.Decision.execute(Decision.java:148)
at org.jbpm.graph.def.Node.enter(Node.java:319)
at org.jbpm.graph.def.Transition.take(Transition.java:151)
at org.jbpm.graph.def.Node.leave(Node.java:394)
at org.jbpm.graph.node.StartState.leave(StartState.java:70)
at org.jbpm.graph.exe.Token.signal(Token.java:195)
at org.jbpm.graph.exe.Token.signal(Token.java:140)
at org.jbpm.graph.exe.ProcessInstance.signal(ProcessInstance.java:271)
at com.sample.TestDecisionNPE.main(TestDecisionNPE.java:53)
Caused by: java.lang.NullPointerException
at org.jbpm.jpdl.el.impl.JbpmExpressionEvaluator.translateExpressionToDollars(JbpmExpressionEvaluator.java:52)
at org.jbpm.jpdl.el.impl.JbpmExpressionEvaluator.evaluate(JbpmExpressionEvaluator.java:38)
at org.jbpm.jpdl.el.impl.JbpmExpressionEvaluator.evaluate(JbpmExpressionEvaluator.java:30)
at org.jbpm.graph.node.Decision.execute(Decision.java:110)
... 8 more
This bug can be tested using the following test case:
package com.sample;
import java.lang.reflect.Field;
import java.util.ArrayList;
import java.util.List;
import org.jbpm.graph.def.ProcessDefinition;
import org.jbpm.graph.def.Transition;
import org.jbpm.graph.exe.ProcessInstance;
import org.jbpm.graph.node.Decision;
import org.jbpm.graph.node.DecisionCondition;
public class TestDecisionNPE {
public static final void main(String[] args) throws SecurityException, NoSuchFieldException, IllegalArgumentException, IllegalAccessException{
ProcessDefinition processDefinition = ProcessDefinition.parseXmlString(
"<process-definition>" +
" <start-state>" +
" <transition to='d' />" +
" </start-state>" +
" <decision name='d'>" +
" <transition name='one' to='a'>" +
" <condition>#{a == 1}</condition>" +
" </transition>" +
" <transition name='two' to='b'>" +
" <condition>#{a == 2}</condition>" +
" </transition>" +
" <transition name='three' to='c'>" +
" <condition>#{a == 3}</condition>" +
" </transition>" +
" </decision>" +
" <state name='a' />" +
" <state name='b' />" +
" <state name='c' />" +
"</process-definition>");
// start-state.
ProcessInstance processInstance = new ProcessInstance(processDefinition);
// Update a transition decision condition as if it was on the old format
// by setting the condition to null (i.e. no condition).
// Build a decisionConditions list (emulates an old database from
// JBPM 3.0, obsolete JBPM_DECISIONCONDITION table).
List decision_conditions = new ArrayList();
decision_conditions.add(new DecisionCondition("one", null));
Decision decision = (Decision) processDefinition.getNode("d");
Field field = decision.getClass().getDeclaredField("decisionConditions");
field.setAccessible(true);
field.set(decision, decision_conditions);
// fire the transition (as we have an old decision condition set, org.jbpm.graph.node.Decision#execute will raise a NullPointerException).
processInstance.signal();
}
}
The bug can be corrected using the following code in the execute() method (added lines ends with "JK") :
// backwards compatible mode based on separate DecisionCondition's
Iterator iter = decisionConditions.iterator();
while (iter.hasNext() && (transition==null)) {
DecisionCondition decisionCondition = (DecisionCondition) iter.next();
if (decisionCondition.expression!=null) {//JK
Object result = JbpmExpressionEvaluator.evaluate(decisionCondition.getExpression(), executionContext);
if (Boolean.TRUE.equals(result)) {
if (transition!=null) {
transition.removeConditionEnforcement();
}
String transitionName = decisionCondition.getTransitionName();
transition = getLeavingTransition(transitionName);
}
} else {//JK
String transitionName = decisionCondition.getTransitionName();//JK
transition = getLeavingTransition(transitionName);//JK
}//JK
Note that the JBPM 3.0.4 version had this check against null values.
--
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
15 years, 11 months
[JBoss JIRA] Created: (JBPM-1110) Having issues when I execute a second instance of a workflow that contain sub-process's in a Oracle database
by Eric Paquette (JIRA)
Having issues when I execute a second instance of a workflow that contain sub-process's in a Oracle database
------------------------------------------------------------------------------------------------------------
Key: JBPM-1110
URL: http://jira.jboss.com/jira/browse/JBPM-1110
Project: JBoss jBPM
Issue Type: Bug
Affects Versions: jBPM jPDL 3.2.1
Environment: Oracle DB using Alfreso with Hibernate
Reporter: Eric Paquette
Assigned To: Tom Baeyens
Priority: Critical
I'm having issues when I execute a second instance of a workflow that contain sub-process's in a Oracle database:
[20/12/07 14:25:33:757 EST] 00000029 ServiceLogger I com.ibm.ws.ffdc.IncidentStreamImpl initialize FFDC0009I: FFDC opened incident stream file C:\Program Files\IBM\SDP70\runtimes\base_v61\profiles\AppSrv01\logs\ffdc\server1_6500650_07.12.20_14.25.33_0.txt
[20/12/07 14:25:33:978 EST] 00000029 ServiceLogger I com.ibm.ws.ffdc.IncidentStreamImpl resetIncidentStream FFDC0010I: FFDC closed incident stream file C:\Program Files\IBM\SDP70\runtimes\base_v61\profiles\AppSrv01\logs\ffdc\server1_6500650_07.12.20_14.25.33_0.txt
[20/12/07 14:25:34:018 EST] 00000029 ServiceLogger I com.ibm.ws.ffdc.IncidentStreamImpl open FFDC0009I: FFDC opened incident stream file C:\Program Files\IBM\SDP70\runtimes\base_v61\profiles\AppSrv01\logs\ffdc\server1_6500650_07.12.20_14.25.34_0.txt
[20/12/07 14:25:34:859 EST] 00000029 ServiceLogger I com.ibm.ws.ffdc.IncidentStreamImpl resetIncidentStream FFDC0010I: FFDC closed incident stream file C:\Program Files\IBM\SDP70\runtimes\base_v61\profiles\AppSrv01\logs\ffdc\server1_6500650_07.12.20_14.25.34_0.txt
[20/12/07 14:25:35:249 EST] 00000029 SystemOut O 14:25:34,929 User:admin ERROR [ui.common.Utils] A system error happened during the operation: Transaction didn't commit: Could not execute JDBC batch update; nested exception is org.hibernate.exception.ConstraintViolationException: Could not execute JDBC batch update
javax.transaction.RollbackException: Transaction didn't commit: Could not execute JDBC batch update; nested exception is org.hibernate.exception.ConstraintViolationException: Could not execute JDBC batch update
at org.alfresco.util.transaction.SpringAwareUserTransaction.commit(SpringAwareUserTransaction.java:430)
at org.alfresco.web.bean.workflow.ManageTaskDialog.transition(ManageTaskDialog.java:396)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:64)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:615)
at org.apache.myfaces.el.MethodBindingImpl.invoke(MethodBindingImpl.java:132)
at org.apache.myfaces.application.ActionListenerImpl.processAction(ActionListenerImpl.java:61)
at javax.faces.component.UICommand.broadcast(UICommand.java:109)
at javax.faces.component.UIViewRoot._broadcastForPhase(UIViewRoot.java:97)
at javax.faces.component.UIViewRoot.processApplication(UIViewRoot.java:171)
at org.apache.myfaces.lifecycle.InvokeApplicationExecutor.execute(InvokeApplicationExecutor.java:32)
at org.apache.myfaces.lifecycle.LifecycleImpl.executePhase(LifecycleImpl.java:95)
at org.apache.myfaces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:70)
at javax.faces.webapp.FacesServlet.service(FacesServlet.java:139)
at com.ibm.ws.webcontainer.servlet.ServletWrapper.service(ServletWrapper.java:966)
at com.ibm.ws.webcontainer.servlet.ServletWrapper.service(ServletWrapper.java:907)
at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:145)
at org.alfresco.web.app.servlet.AuthenticationFilter.doFilter(AuthenticationFilter.java:81)
at com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:190)
at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:130)
at com.ibm.ws.webcontainer.filter.WebAppFilterChain._doFilter(WebAppFilterChain.java:87)
at com.ibm.ws.webcontainer.filter.WebAppFilterManager.doFilter(WebAppFilterManager.java:701)
at com.ibm.ws.webcontainer.filter.WebAppFilterManager.doFilter(WebAppFilterManager.java:646)
at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:475)
at com.ibm.ws.wswebcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:463)
at com.ibm.ws.webcontainer.servlet.CacheServletWrapper.handleRequest(CacheServletWrapper.java:92)
at com.ibm.ws.webcontainer.WebContainer.handleRequest(WebContainer.java:744)
at com.ibm.ws.wswebcontainer.WebContainer.handleRequest(WebContainer.java:1433)
at com.ibm.ws.webcontainer.channel.WCChannelLink.ready(WCChannelLink.java:93)
at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleDiscrimination(HttpInboundLink.java:465)
at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleNewInformation(HttpInboundLink.java:394)
at com.ibm.ws.http.channel.inbound.impl.HttpICLReadCallback.complete(HttpICLReadCallback.java:102)
at com.ibm.ws.tcp.channel.impl.AioReadCompletionListener.futureCompleted(AioReadCompletionListener.java:152)
at com.ibm.io.async.AbstractAsyncFuture.invokeCallback(AbstractAsyncFuture.java:213)
at com.ibm.io.async.AbstractAsyncFuture.fireCompletionActions(AbstractAsyncFuture.java:195)
at com.ibm.io.async.AsyncFuture.completed(AsyncFuture.java:136)
at com.ibm.io.async.ResultHandler.complete(ResultHandler.java:194)
at com.ibm.io.async.ResultHandler.runEventProcessingLoop(ResultHandler.java:741)
at com.ibm.io.async.ResultHandler$2.run(ResultHandler.java:863)
at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:1510)
Caused by: org.springframework.dao.DataIntegrityViolationException: Could not execute JDBC batch update; nested exception is org.hibernate.exception.ConstraintViolationException: Could not execute JDBC batch update
at org.springframework.orm.hibernate3.SessionFactoryUtils.convertHibernateAccessException(SessionFactoryUtils.java:622)
at org.springframework.orm.hibernate3.HibernateTransactionManager.convertHibernateAccessException(HibernateTransactionManager.java:714)
at org.springframework.orm.hibernate3.HibernateTransactionManager.doCommit(HibernateTransactionManager.java:583)
at org.springframework.transaction.support.AbstractPlatformTransactionManager.processCommit(AbstractPlatformTransactionManager.java:662)
at org.springframework.transaction.support.AbstractPlatformTransactionManager.commit(AbstractPlatformTransactionManager.java:632)
at org.springframework.transaction.interceptor.TransactionAspectSupport.commitTransactionAfterReturning(TransactionAspectSupport.java:314)
at org.alfresco.util.transaction.SpringAwareUserTransaction.commit(SpringAwareUserTransaction.java:420)
... 40 more
Caused by: org.hibernate.exception.ConstraintViolationException: Could not execute JDBC batch update
at org.hibernate.exception.SQLStateConverter.convert(SQLStateConverter.java:71)
at org.hibernate.exception.JDBCExceptionHelper.convert(JDBCExceptionHelper.java:43)
at org.hibernate.jdbc.AbstractBatcher.executeBatch(AbstractBatcher.java:249)
at org.hibernate.jdbc.AbstractBatcher.prepareStatement(AbstractBatcher.java:92)
at org.hibernate.jdbc.AbstractBatcher.prepareStatement(AbstractBatcher.java:87)
at org.hibernate.jdbc.AbstractBatcher.prepareBatchStatement(AbstractBatcher.java:218)
at org.hibernate.persister.entity.AbstractEntityPersister.insert(AbstractEntityPersister.java:2174)
at org.hibernate.persister.entity.AbstractEntityPersister.insert(AbstractEntityPersister.java:2610)
at org.hibernate.action.EntityInsertAction.execute(EntityInsertAction.java:52)
at org.hibernate.engine.ActionQueue.execute(ActionQueue.java:248)
at org.hibernate.engine.ActionQueue.executeActions(ActionQueue.java:232)
at org.hibernate.engine.ActionQueue.executeActions(ActionQueue.java:139)
at org.hibernate.event.def.AbstractFlushingEventListener.performExecutions(AbstractFlushingEventListener.java:298)
at org.hibernate.event.def.DefaultFlushEventListener.onFlush(DefaultFlushEventListener.java:27)
at org.hibernate.impl.SessionImpl.flush(SessionImpl.java:1000)
at org.hibernate.impl.SessionImpl.managedFlush(SessionImpl.java:338)
at org.hibernate.transaction.JDBCTransaction.commit(JDBCTransaction.java:106)
at org.springframework.orm.hibernate3.HibernateTransactionManager.doCommit(HibernateTransactionManager.java:575)
... 44 more
Caused by: java.sql.BatchUpdateException: ORA-00001: unique constraint (NHPOLS.SYS_C007328) violated
at oracle.jdbc.dbaccess.DBError.throwBatchUpdateException(DBError.java:459)
at oracle.jdbc.driver.OraclePreparedStatement.executeBatch(OraclePreparedStatement.java:4368)
at com.ibm.ws.rsadapter.jdbc.WSJdbcPreparedStatement.pmiExecuteBatch(WSJdbcPreparedStatement.java:808)
at com.ibm.ws.rsadapter.jdbc.WSJdbcStatement.executeBatch(WSJdbcStatement.java:612)
at org.hibernate.jdbc.BatchingBatcher.doExecuteBatch(BatchingBatcher.java:4
at org.hibernate.jdbc.AbstractBatcher.executeBatch(AbstractBatcher.java:242)
... 59 more
--
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
15 years, 11 months