|
| Hi,
I made a processor loop-forever test,but failed ,I got "stackoverflow" msg
after about 1600 circles, an expert told me that a very deep recursion did
it when the processor looped. But I don't know how to deal with the problem
if I have to make it loop.
=====My Test AP==========
....
aContext=(Context)Context.readObject("branchClientCtx");
DSEProcessor aFlow = (DSEProcessor)
DSEProcessor.readObject("TestFlow");
aFlow.setContext(aContext);
aFlow.execute();
....
=====My Processor action==========
package com.qls.temp.test.automaton;
public class Act1 extends com.ibm.dse.automaton.DSEAction {
public static long count=0;
...
public void execute() throws Exception {
count++;
System.out.println(count);
signalEvent("ok");
}
=====My dseproc.xml==========
<?xml version="1.0"?>
<dseproc.xml>
<processor id="TestFlow">
<state id="initial" type="initial" typeIdInfo="s1">
<entryActions>
<action implClass="com.qls.temp.test.automaton.Act1" id="action1"/>
</entryActions>
<transitions>
<transition id="action1.ok" targetState="initial"/>
</transitions>
</state>
<state id="finalOk" type="final" typeIdInfo="ok">
<entryActions/>
<transitions/>
</state>
</processor>
</dseproc.xml>
Regards,
qls
|
|