[jboss-user] [JBoss jBPM] - ClassNotFoundException loading my ActionHandler

chip_schoch do-not-reply at jboss.com
Sun Jan 28 09:39:15 EST 2007


Jbpm 3.1.3.  Using jbpm.sar in my AS I am trying use Jbpm in my webapp.  I created an ActionHandler and assigned it to a transition.  I get the following exception:

2007-01-28 09:15:46,656 ERROR [org.jbpm.instantiation.Delegation] couldn't load delegation class 'com.eLynx.BPM.Handler.ConsentHandler'
java.lang.ClassNotFoundException: class 'com.eLynx.BPM.Handler.ConsentHandler' could not be found by the process classloader
	at org.jbpm.instantiation.ProcessClassLoader.findClass(ProcessClassLoader.java:67)
	at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
	at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
	at org.jbpm.instantiation.Delegation.instantiate(Delegation.java:140)
	at org.jbpm.instantiation.Delegation.getInstance(Delegation.java:125)
	at org.jbpm.graph.def.Action.execute(Action.java:122)
	at org.jbpm.graph.def.GraphElement.executeAction(GraphElement.java:235)
	at org.jbpm.graph.def.GraphElement.executeActions(GraphElement.java:212)
	at org.jbpm.graph.def.GraphElement.fireAndPropagateEvent(GraphElement.java:182)
	at org.jbpm.graph.def.GraphElement.fireEvent(GraphElement.java:166)
	at org.jbpm.graph.def.Transition.take(Transition.java:106)
	at org.jbpm.graph.def.Node.leave(Node.java:383)
...

My ActionHandler class is in the war file (classpath) of my webapp.  Does it need to be in the jbpm.sar deployment?  That seems pretty weird.  I have my logging configured so that my application logs to its own file and I noticed that this exception logs to the server file, not my app log, which suggests to me that the jbpm service is what is trying to instantiate the class and its classloader knows nothing about this class.

Is there a way around this.  I don't want to have to put every custom action handler in the jbpm.sar.  I have existing code that I am trying to wrap with jbpm to get better flexibility in managing process flow.  Should I not use jbpm.sar and instead run jbpm embedded in my application in the manner of the simplewebapp example found on wiki?  We have several webapps whose functionality we want to bpm enable and that doesn't appear to be the optimal way to approach it.

Thanks for all input.

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

Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4007439



More information about the jboss-user mailing list