  | Mailing List | | Home | | Forum Home | | JBoss - Java Application Server | | Tomcat - JSP/Servlet container | | Struts - A MVC web framework | | iText - An open source PDF Java Library | | JDOM - JDOM XML Parser | | J2EE - A mailing list for Java(tm) 2 Platform, Enterprise Edition | | JSP - A mailing list about Java Server Pages specification and reference | | J2EE Pattern - An interest list for Sun Java Center J2EE Pattern Catalog | | Servlet - A mailing list for discussion about Sun Microsystem's Java Servlet API Technology | |
Struts & Hibernate
|
|
|
  | | | - Re: Error introduced in 3.2.1 | - Re: Error introduced in 3.2.1 2007-07-16 - By rgullett
Back Sorry about that. I think this one looks better. Note that the ActionHandler class goes in a separate file.
package com.jbpm.test; | import java.util.HashMap ; | import java.util.Map ; | | import junit.framework.TestCase ; | | import org.dom4j.Element ; | import org.jbpm.graph.def.ProcessDefinition; | import org.jbpm.graph.exe.ProcessInstance; | import org.jbpm.graph.node.ProcessState; | import org.jbpm.graph.node.SubProcessResolver; | | public class JBPMDemoTestCase extends TestCase { | | public void testJbpm() { | String className = DoNothingActionHandler.class.getName(); | ProcessInstance processInstance = initProcessInstance(); | assertEquals("Instance is in wrong state", "start", processInstance .getRootToken() | .getNode().getName()); | processInstance.signal(); | | } | | private ProcessInstance initProcessInstance() { | MapBasedProcessRepository mapBasedProcessRepository = new MapBasedProcessRepository(); | ProcessState.setDefaultSubProcessResolver(mapBasedProcessRepository ); | ProcessDefinition subProcessDefinition = | ProcessDefinition.parseXmlString( | "<process-definition" | + " xmlns='urn:jbpm.org:jpdl-3 (See http://pdl-3.ora-code.com).2' name='subProcessName'>" | + "<start-state name='start'>" | + "<transition name='' to='subProcess Node 1'></transition>" | + "</start-state>" | + "<end-state name='subProcessEndState'></end-state>" | + "<node name='subProcess Node 1'>" | + "<action class='com.jbpm.test.DoNothingActionHandler'>< /action>" | + "<transition name='' to='subProcessEndState'></transition >" | + "</node>" | + "</process-definition>"); | | mapBasedProcessRepository.add(subProcessDefinition); | | ProcessDefinition processDefinition = | ProcessDefinition.parseXmlString( | "<process-definition xmlns='' name='processName'>" | + "<start-state name='start'>" | + "<transition name='' to='node 1'></transition>" | + "</start-state>" | + "<end-state name='superProcessEnd'></end-state>" | + "<process-state name='processState'>" | + "<sub-process name='subProcessName' />" | + "<transition name='' to='node 2'></transition>" + "< /process-state>" | + "<node name='node 2'>" | + "<transition name='' to='superProcessEnd'></transition>" | + "<action class='com.jbpm.test.DoNothingActionHandler'>< /action>" | + "</node>" | + "<node name='node 1'>" | + "<action class='com.jbpm.test.DoNothingActionHandler'>< /action>" | + "<transition name='' to='processState'></transition>" | + "</node>" | + "</process-definition>"); | | mapBasedProcessRepository.add(processDefinition); | | | ProcessInstance processInstance = new ProcessInstance (processDefinition); | return processInstance; | } | | private static class MapBasedProcessRepository implements SubProcessResolver { | | protected MapBasedProcessRepository() {} | | private Map<String, ProcessDefinition> processes = new HashMap <String, ProcessDefinition>(); | | public void add(ProcessDefinition processDefinition) { | processes.put(processDefinition.getName(), processDefinition); | } | | public ProcessDefinition findSubProcess(Element subProcessElement) { | String processName = subProcessElement.attributeValue("name"); | return processes.get(processName); | } | | } | | | } | | package com.jbpm.test; | | import org.jbpm.graph.def.ActionHandler; | import org.jbpm.graph.exe.ExecutionContext; | | public class DoNothingActionHandler implements ActionHandler { | public DoNothingActionHandler() { | | } | | /** | * @(protected) | */ | public void execute(ExecutionContext executionContext) throws Exception { | executionContext.leaveNode(); | } | } | | | |
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic &p=4064530#4064530
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode =reply&p=4064530 __ ____ ____ ____ ____ ____ ____ ____ ____ ____ jboss-user mailing list jboss-user@(protected) https://lists.jboss.org/mailman/listinfo/jboss-user
|
|
 |