[jBPM] - Prevent duplication in XOR gateway
by Erik Pragt
Erik Pragt [https://community.jboss.org/people/bodiam] created the discussion
"Prevent duplication in XOR gateway"
To view the discussion, visit: https://community.jboss.org/message/751003#751003
--------------------------------------------------------------
Hi all,
I'm just getting started with jBPM, and I have a small question about XOR gateways. At the moment, our nodes have two endpoints, and the code for one endpoint looks like this:
switch(result) {
case OK:
return true;
default:
return false;
}
While for the other endpoint (pointing to an 'end event'), it looks like this:
switch(result) {
case OK:
return false;
default:
return true;
}
So in the other constraint it's the other way around. To me, this looks like a bit of duplication, and in this example it's not too bad, but in more complex examples, it's trickier. So I was wondering, isn't there a better way to do this? Isn't it possible to create one piece of code, and let true go to one sequence flow, and false to the other, without having the need to duplicate the code? Is something like this possible??
Thanks for the help,
Kind regards,
Erik
--------------------------------------------------------------
Reply to this message by going to Community
[https://community.jboss.org/message/751003#751003]
Start a new discussion in jBPM at Community
[https://community.jboss.org/choose-container!input.jspa?contentType=1&con...]
12 years, 9 months
[jBPM] - demo installer and bpmn and image diagram
by rigazilla
rigazilla [https://community.jboss.org/people/rigazilla] created the discussion
"demo installer and bpmn and image diagram"
To view the discussion, visit: https://community.jboss.org/message/799936#799936
--------------------------------------------------------------
Hi all,
I need some help with the demo installer. My problem is that I can't see the bpmn diagram in the jbpm-console.
In a clean jbpm5 demo installed on jboss 7.1.1 I designed a new process named "benzina" in the defaultPackage and I created the PNG image
in the jbpm-console when I select a process instance and click on Diagram I get an alert "No diagram associated with process"
If I try to get the list of the process definitions I get this result:
{"definitions":[{"id":"benzinaV1","name":"benzina","version":0,"packageName":"defaultPackage","deploymentId":"N/A","suspended":false},{"id":"com.sample.evaluation","name":"Evaluation","version":0,"packageName":"defaultPackage","deploymentId":"N/A","suspended":false,"formUrl":" http://localhost:8080/gwt-console-server/rs/form/process/com.sample.evalu... http://localhost:8080/gwt-console-server/rs/form/process/com.sample.evalu...","diagramUrl":"vfs:/content/jbpm-gwt-console-server.war/WEB-INF/lib/jbpm-gwt-graph-5.4.0.Final.jar/com.sample.evaluation.png"}]}
and this error in the server.log:
18:08:43,427 ERROR [org.jbpm.integration.console.graph.GraphViewerPluginImpl] (http-localhost-127.0.0.1-8080-17) Could not get diagram url from Guvnor: org.apache.commons.io.IOUtils.copy(Ljava/io/InputStream;Ljava/io/Writer;)V
It seems to me that the png has not been associated to the process, but I'm not able to wonder where is the fault.
Can someone help me?
Thanks,
vittorio
--------------------------------------------------------------
Reply to this message by going to Community
[https://community.jboss.org/message/799936#799936]
Start a new discussion in jBPM at Community
[https://community.jboss.org/choose-container!input.jspa?contentType=1&con...]
12 years, 9 months
[EJB3] - IllegalStateException: Failed to find method for hash:6087666598386677791
by Mike Miller
Mike Miller [https://community.jboss.org/people/mikemil] created the discussion
"IllegalStateException: Failed to find method for hash:6087666598386677791"
To view the discussion, visit: https://community.jboss.org/message/800172#800172
--------------------------------------------------------------
JBoss 4.2.3.GA
We are working on a migration to EJB3 and working on the backward compatibility. We have a server that is running with our SessionBeans that have been migrated to EJB 3.0. We need to support cases where this server makes service calls on SessionBeans in a different server, that is running basically the same code, but on EJB 2.1. I have tried a few things but seem to be getting stuck with the this issue of not finding the correct method.
I tried:
1. Using the RemoteHome and RemoteHomeBinding in my session bean with a Home interface defined in the 3.0 server instance. I had to create an alternate call to our service locator to handle getting the home interface and calling create(), but that all seems to be working okay. We we actually try to call the remote method is when we get the current error.
2. This error occurance below comes from trying the removal of the RemoteHome and RemoteHomeBinding annotations from our 3.0 session bean and also deleted the Home interface in the 3.0 server instance. To prevent the ClassNotFoundErrors for the home class on the 3.0 server, I have created a jar with the Home interface from the 2.1 server instance, signed it and placed that in our ear folder and referenced that jar in the application.xml. Still same exception!
I believe this an instance of the 3.0 to 2.1 backward compatibility scenario but I can seem to get it working. We are not touching the 2.1 server instance. Most of the examples seems to be of bean co-existing on the same server instance, which allows for the use of the @EJB annotations to help. We can't do that because we are in a session bean on one server and retrieving a 2.1 service from a remote server, so we use JNDI, which seems to be working.
Any ideas what I am missing? Suggestions?
ERROR https://community.jboss.org/message/800172#800172#800172/root IllegalStateException: Failed to find method for hash:6087666598386677791 Caught exception while trying to repoll : java.lang.IllegalStateException: Failed to find method for hash:6087666598386677791 available={8594593460157411074=public abstract javax.ejb.EJBObject javax.ejb.Handle.getEJBObject() throws java.rmi.RemoteException, 7415355246179212884=public abstract boolean javax.ejb.EJBObject.isIdentical(javax.ejb.EJBObject) throws java.rmi.RemoteException, 8600444116638585484=public abstract void com.jda.portfolio.infrastructure.server.service.eod.EndOfDayProcessService.addProcess(int,com.jda.portfolio.infrastructure.base.process.AbstractProcess) throws java.rmi.RemoteException, 3176383116050142106=public abstract boolean com.jda.portfolio.infrastructure.server.service.eod.EndOfDayProcessService.isEODRunning() throws java.rmi.RemoteException, 3459013104155209360=public abstract int com.jda.portfolio.infrastructure.server.service.eod.EndOfDayProcessService.getRunningProcessStatus() throws java.rmi.RemoteException, 8023408628542931870=public abstract java.util.ArrayList com.jda.portfolio.infrastructure.server.service.eod.EndOfDayProcessService.loadChecks(boolean) throws java.rmi.RemoteException, -1324426544258457612=public abstract boolean com.jda.portfolio.infrastructure.server.service.eod.EndOfDayProcessService.isUpdateEODPrefs() throws java.rmi.RemoteException, -1225864925247205563=public abstract void javax.ejb.EJBObject.remove() throws java.rmi.RemoteException,javax.ejb.RemoveException, -3430023375606625937=public abstract void com.jda.portfolio.infrastructure.server.service.eod.EndOfDayProcessService.setCheckProcesses(java.util.ArrayList) throws java.rmi.RemoteException, 8981122088959051067=public abstract javax.ejb.HomeHandle javax.ejb.EJBHome.getHomeHandle() throws java.rmi.RemoteException, -4899641156120081774=public abstract boolean com.jda.portfolio.infrastructure.server.service.eod.EndOfDayProcessService.runCentralForceDownload(java.lang.String) throws java.rmi.RemoteException, -3278682204038307545=public abstract void com.jda.portfolio.infrastructure.server.service.eod.EndOfDayProcessService.setUpdateEODPrefs(boolean) throws java.rmi.RemoteException, -7940001347631500920=public abstract void com.jda.portfolio.infrastructure.server.service.eod.EndOfDayProcessService.stopChecks() throws java.rmi.RemoteException, 6790693439931590569=public abstract com.jda.portfolio.infrastructure.base.controller.ProcessMonitor com.jda.portfolio.infrastructure.server.service.eod.EndOfDayProcessService.getProcessMonitor() throws java.rmi.RemoteException, 8264013315949344562=public abstract void com.jda.portfolio.infrastructure.server.service.eod.EndOfDayProcessService.setChecksCompleted(boolean) throws java.rmi.RemoteException, -7421716371264175145=public abstract void com.jda.portfolio.infrastructure.server.service.eod.EndOfDayProcessService.runProcessesSequentially() throws java.rmi.RemoteException, 8536179260875325978=public abstract com.jda.portfolio.infrastructure.base.process.AbstractProcess com.jda.portfolio.infrastructure.server.service.eod.EndOfDayProcessService.getRunningProcess() throws java.rmi.RemoteException, -5269460829974437302=public abstract void com.jda.portfolio.infrastructure.server.service.eod.EndOfDayProcessService.addPropertyChangeListener(java.beans.PropertyChangeListener) throws java.rmi.RemoteException, -883843542736932254=public abstract java.lang.Object javax.ejb.EJBObject.getPrimaryKey() throws java.rmi.RemoteException, -2590129623172426220=public abstract boolean com.jda.portfolio.infrastructure.server.service.eod.EndOfDayProcessService.isChecksCompleted() throws java.rmi.RemoteException, 4121927297169232143=public abstract void javax.ejb.EJBHome.remove(javax.ejb.Handle) throws java.rmi.RemoteException,javax.ejb.RemoveException, -3260590760910195779=public abstract javax.ejb.Handle javax.ejb.EJBObject.getHandle() throws java.rmi.RemoteException, 1023555753582321414=public abstract java.util.Date com.jda.portfolio.infrastructure.server.service.eod.EndOfDayProcessService.getBusinessDate() throws java.rmi.RemoteException, 6379407847924920184=public abstract boolean com.jda.portfolio.infrastructure.server.service.eod.EndOfDayProcessService.isProcessMonitorFinished() throws java.rmi.RemoteException, 1989880768363748471=public abstract void com.jda.portfolio.infrastructure.server.service.eod.EndOfDayProcessService.runCentralProcessesSequentially() throws java.rmi.RemoteException, -107499859717975299=public abstract void com.jda.portfolio.infrastructure.server.service.eod.EndOfDayProcessService.setEODRunning(boolean) throws java.rmi.RemoteException, 1198857148195425150=public abstract void com.jda.portfolio.infrastructure.server.service.eod.EndOfDayProcessService.setProcesses(java.util.ArrayList) throws java.rmi.RemoteException, -7423251857241384719=public abstract void javax.ejb.EJBHome.remove(java.lang.Object) throws java.rmi.RemoteException,javax.ejb.RemoveException, 3603204012067117518=public abstract com.jda.portfolio.infrastructure.base.controller.AbstractProcessController com.jda.portfolio.infrastructure.server.service.eod.EndOfDayProcessService.getProcessController() throws java.rmi.RemoteException, -1784489294664631537=public abstract java.beans.PropertyChangeListener com.jda.portfolio.infrastructure.server.service.eod.EndOfDayProcessService.getStatusChangeListener() throws java.rmi.RemoteException, 5313134895258323668=public abstract boolean com.jda.portfolio.infrastructure.server.service.eod.EndOfDayProcessService.runCentralRepoll(java.util.ArrayList,java.util.Date) throws java.rmi.RemoteException, 4587012503417889761=public abstract boolean com.jda.portfolio.infrastructure.server.service.eod.EndOfDayProcessService.getProcessMonitorFailed() throws java.rmi.RemoteException, 4512095171315154818=public abstract javax.ejb.EJBHome javax.ejb.EJBObject.getEJBHome() throws java.rmi.RemoteException, -523296331097319625=public abstract java.util.ArrayList com.jda.portfolio.infrastructure.server.service.eod.EndOfDayProcessService.getCheckProcesses() throws java.rmi.RemoteException, 7322075118954587029=public abstract com.jda.portfolio.infrastructure.server.service.eod.EndOfDayProcessService com.jda.portfolio.infrastructure.server.service.eod.EndOfDayProcessServiceHome.create() throws javax.ejb.CreateException,java.rmi.RemoteException, -2772317058699513373=public abstract java.util.ArrayList com.jda.portfolio.infrastructure.server.service.eod.EndOfDayProcessService.getOverRidenChecks() throws java.rmi.RemoteException, 1795143354224526549=public abstract void com.jda.portfolio.infrastructure.server.service.eod.EndOfDayProcessService.setCanceled(boolean) throws java.rmi.RemoteException, -7385696591418600868=public abstract java.util.ArrayList com.jda.portfolio.infrastructure.server.service.eod.EndOfDayProcessService.getProcesses() throws java.rmi.RemoteException, 2056663019065401382=public abstract void com.jda.portfolio.infrastructure.server.service.eod.EndOfDayProcessService.clean() throws java.rmi.RemoteException, -4990788526596460909=public abstract void com.jda.portfolio.infrastructure.server.service.eod.EndOfDayProcessService.setOverRidenChecks(java.util.ArrayList) throws java.rmi.RemoteException, 4342811972915933694=public abstract java.util.ArrayList com.jda.portfolio.infrastructure.server.service.eod.EndOfDayProcessService.loadChecks() throws java.rmi.RemoteException, -4378986748400941033=public abstract void com.jda.portfolio.infrastructure.server.service.eod.EndOfDayProcessService.createEODMarkerTransaction() throws java.rmi.RemoteException, -8558958223302123381=public abstract boolean com.jda.portfolio.infrastructure.server.service.eod.EndOfDayProcessService.isCanceled() throws java.rmi.RemoteException, 3781219857755091396=public abstract javax.ejb.EJBMetaData javax.ejb.EJBHome.getEJBMetaData() throws java.rmi.RemoteException}
at org.jboss.invocation.MarshalledInvocation.getMethod(MarshalledInvocation.java:407)
at org.jboss.ejb.Container.invoke(Container.java:958)
at sun.reflect.GeneratedMethodAccessor122.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:601)
at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:155)
at org.jboss.mx.server.Invocation.dispatch(Invocation.java:94)
at org.jboss.mx.server.Invocation.invoke(Invocation.java:86)
at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:264)
at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:659)
at org.jboss.invocation.jrmp.server.JRMPInvoker$MBeanServerAction.invoke(JRMPInvoker.java:818)
at org.jboss.invocation.jrmp.server.JRMPInvoker.invoke(JRMPInvoker.java:419)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:601)
at sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:322)
at sun.rmi.transport.Transport$1.run(Transport.java:177)
at sun.rmi.transport.Transport$1.run(Transport.java:174)
at java.security.AccessController.doPrivileged(Native Method)
at sun.rmi.transport.Transport.serviceCall(Transport.java:173)
at sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:553)
at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:808)
at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:667)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)
at java.lang.Thread.run(Thread.java:722)
at sun.rmi.transport.StreamRemoteCall.exceptionReceivedFromServer(StreamRemoteCall.java:273)
at sun.rmi.transport.StreamRemoteCall.executeCall(StreamRemoteCall.java:251)
at sun.rmi.server.UnicastRef.invoke(UnicastRef.java:160)
at org.jboss.invocation.jrmp.server.JRMPInvoker_Stub.invoke(Unknown Source)
at org.jboss.invocation.jrmp.interfaces.JRMPInvokerProxy.invoke(JRMPInvokerProxy.java:133)
at org.jboss.invocation.InvokerInterceptor.invokeInvoker(InvokerInterceptor.java:365)
at org.jboss.invocation.InvokerInterceptor.invoke(InvokerInterceptor.java:197)
at org.jboss.proxy.TransactionInterceptor.invoke(TransactionInterceptor.java:61)
at org.jboss.proxy.SecurityInterceptor.invoke(SecurityInterceptor.java:70)
at org.jboss.proxy.ejb.StatelessSessionInterceptor.invoke(StatelessSessionInterceptor.java:112)
at org.jboss.proxy.ClientContainer.invoke(ClientContainer.java:100)
at $Proxy1076.runCentralRepoll(Unknown Source)
at com.jda.portfolio.cos.server.service.repoll.CentralRepollInvoker$TimerThread.run(CentralRepollInvoker.java:351)
--------------------------------------------------------------
Reply to this message by going to Community
[https://community.jboss.org/message/800172#800172]
Start a new discussion in EJB3 at Community
[https://community.jboss.org/choose-container!input.jspa?contentType=1&con...]
12 years, 9 months
[jBPM] - Domain Service task default work item handler is not working if added through META-INF/*.wid file
by vinayak Bhadage
vinayak Bhadage [https://community.jboss.org/people/vinayakpict] created the discussion
"Domain Service task default work item handler is not working if added through META-INF/*.wid file"
To view the discussion, visit: https://community.jboss.org/message/799865#799865
--------------------------------------------------------------
Hi ,
In JBPM5, I am using domain service task and also created work item handler for the same.
If at the time of creating knowledge session or before starting the process I have registered the custome work item handler in ksession.
then work item handler is executed perfectly.
Now from drool rule, want to start the process, in that case I have defined SAMPLE.wid file added in drools.rulebase.conf.
the wid file as below:
import org.drools.process.core.datatype.impl.type.StringDataType;
[
[
"name" : "SampleTask",
"parameters" : [
"name" : new StringDataType()
],
"displayName" : "SampleTask",
"icon" : "",
"defaultHandler" : "com.sample.SampleTaskWorkItemHandler",
"dependencies" : [
]
]
]
I this case work item handler is not found to ksession.
Please let me know that this approach will work.
Can jbpm5 process engine load the deafault handler mentioned in *.wid?
I have just started to learn about JBPM5. Please help me to resolve this issue.
Thanks & regards,
-vinayak
--------------------------------------------------------------
Reply to this message by going to Community
[https://community.jboss.org/message/799865#799865]
Start a new discussion in jBPM at Community
[https://community.jboss.org/choose-container!input.jspa?contentType=1&con...]
12 years, 9 months
[IronJacamar] - Test connection through CLI when <allow-multiple-users/> is applied to a datasource
by anuragdebnath
anuragdebnath [https://community.jboss.org/people/anuragdebnath] created the discussion
"Test connection through CLI when <allow-multiple-users/> is applied to a datasource"
To view the discussion, visit: https://community.jboss.org/message/799863#799863
--------------------------------------------------------------
*Environment :*
JBoss EAP-6.0.1
JBoss AS 7.1.3
IronJacamar version used in above JBoss version - 1.0.13.Final
*Issue :*
Create a XA data-source(via CLI) which has the attribute <allow-multiple-users/> defined to true.
Testing the connection using CLI shows the below error -
**************************************
[standalone@localhost:9999 /] /subsystem=datasources/xa-data-source=OracleXA_DS:test-connection-in-pool()
{ "outcome" => "failed", "failure-description" => "JBAS010440: failed to invoke operation: JBAS010447: Connection is not valid", "rolled-back" => true }
**************************************
On checking the description of the attribute ( /subsystem=datasources/xa-data-source=OracleXA_DS:read-resource-description(recursive=true) ) it says -
"allow-multiple-users" => {
"type" => BOOLEAN,
"description" => "Specifies if multiple users will access the datasource through the getConnection(user, password) method and hence if the internal pool type should account for that"
When testing the connection through "test-connection-in-pool" there is no way to provide username/password for the above mentioned getConnection() and hence connection fails.
To confirm if applying <allow-multiple-users/> is a valid attribute to a datasource, i tested the same using a simple JDBC code and supplied the credentials to the .getConnection() like below and it works well-
InitialContext ic = new InitialContext();
Datasource ds = (DataSource)ic.lookup("java:/etsDataSourcexa");
Connection con = ds.getConnection("jboss","jboss");
I have raised a JIRA [1] but would like to know the expert's thought :)
[1] https://issues.jboss.org/browse/JBJCA-990 https://issues.jboss.org/browse/JBJCA-990
--------------------------------------------------------------
Reply to this message by going to Community
[https://community.jboss.org/message/799863#799863]
Start a new discussion in IronJacamar at Community
[https://community.jboss.org/choose-container!input.jspa?contentType=1&con...]
12 years, 9 months