[jboss-user] [JBoss jBPM] - Re: ProcessClassloader question

sarishjain do-not-reply at jboss.com
Thu May 14 15:42:15 EDT 2009


Thanks for your responses. See details below, apologies for delayed response as it took some time to simplify the code.

Note:
1. The handler classes are not packaged in the par file.
2. Process is running on jboss 5.0.1.
3. If i switch the method parameter from "long" to "Long", there is no exception. The exception comes only for Native type. I can not take this workaround, as EJB is external and can not be modified by me.


Simplified code below
Process definition

  | <?xml version="1.0" encoding="UTF-8"?>
  | 
  | <process-definition  xmlns="urn:jbpm.org:jpdl-3.2"  name="MyProcess">
  |     
  | 	<start-state name="start-state1">
  | 		<transition to="MyNode"></transition>
  | 	</start-state>
  | 
  | 	<node name="MyNode" async="true">
  | 		<action name="MyNode" class="MyHandler"></action>
  | 		<transition to="end-state1"></transition>
  | 	</node>
  | 
  | <end-state name="end-state1">
  | 	
  | 	</end-state>
  | 
  | 
  | </process-definition>
  | 
Action Handler

  | 
  | /**
  |  * @author s
  |  * 
  |  */
  | public class MyHandler implements
  | 		ActionHandler {
  | 	private static final long serialVersionUID = 1L;
  | 
  | 	public void execute(ExecutionContext context) throws Exception {
  | 		try {
  | 			InitialContext ctx = new InitialContext();
  | 			RBACServiceI object = (RBACServiceI) ctx.lookup("ps2/RBACService/local");
  | 			
  | 			RBACServiceI service = (RBACServiceI) object;
  | 			service.getRolesBySystemId(263L);
  | 		} catch (Exception e) {
  | 			// TODO Auto-generated catch block
  | 			e.printStackTrace();
  | 		}
  | 	}
  | 
  | }
  | 

EJB being invoked

  | @Local
  | public interface RBACServiceI {
  | 
  | 	/**
  | 	 * THis method fetches roles by system id.
  | 	 * @param systemid The system id
  | 	 * @return List of roles
  | 	 */
  | 	public List<PsRole> getRolesBySystemId(long systemid);
  | 	
  | 
  | 	
  | }
  | 
  | 
  | @Stateless
  | public class RBACService implements RBACServiceI {
  | 
  | 	private RBACDLService service = null;
  | 	
  | 	public List<PsRole> getRolesBySystemId(long systemid){
  | 		return service.getRoleBySystemId(systemid);
  | 	}
  | 	
  | 	
  | 
  | 
  | }
  | 

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

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



More information about the jboss-user mailing list