delegation for ActionHandler - what am I missing?
wasperen Aug 11, 2006 5:14 AMI have the following node in my process:
<node name="sensor news"> <action name="conduct news sensor" class="com.paconsulting.cucumber.rules.impl.RulesActionHandler" config-type="bean"> <ruleEngineJndiName>java:/cucumber/RulesEngine</ruleEngineJndiName> <ruleBaseName>news-sensor</ruleBaseName> </action> <transition to="check errors"></transition> </node>
The entire process deploys fine.
The ActionHandler code is, simply:
package com.paconsulting.cucumber.rules.impl;
imports...
public class RulesActionHandler implements ActionHandler {
private static final long serialVersionUID = 1L;
private static Log log = LogFactory.getLog(RulesActionHandler.class);
private String ruleEngineJndiName = "";
private String ruleBaseName = "";
public String getRuleBaseName() {
return ruleBaseName;
}
public void setRuleBaseName(String ruleBaseName) {
this.ruleBaseName = ruleBaseName;
}
public String getRuleEngineJndiName() {
return ruleEngineJndiName;
}
public void setRuleEngineJndiName(String ruleEngineJndiName) {
this.ruleEngineJndiName = ruleEngineJndiName;
}
private RulesEngine getRulesEngine() {
<snip>
}
public void execute(ExecutionContext executionContext) throws Exception {
long engineId = getRulesEngine().createNewEngine(getRuleBaseName());
assertVariables(engineId,executionContext.getContextInstance().getVariables());
getRulesEngine().fireRules(engineId);
refreshVariables(engineId,executionContext.getContextInstance().getVariables());
}
private void assertVariables(long engineId, Map variables) {
<snip>
}
private void refreshVariables(long engineId, Map variables) {
<snip>
}
}When the process engine reaches this node, is tells me:
11:15:07,172 ERROR [BeanInstantiator] couldn't set property 'ruleEngineJndiName' to value '<ruleEngineJndiName>java:/cucumber/RulesEngine</ruleEngineJndiName>' 11:15:07,173 ERROR [BeanInstantiator] couldn't set property 'ruleBaseName' to value '<ruleBaseName>news-sensor</ruleBaseName>' 1
I have tried config-type="field", config-type="bean" and leaving config-type out.
What am I missing?
Thanks,
Willem