J'essaie de compiler la règle suivante et d'obtenir une erreur The method concatenateValues(String, String, String) in the type StringHelper is not applicable for the arguments (Object, Object, Object)
. Ma question est pourquoi $ map.get ("KEY_B"), .. ne retourne pas de valeur String?Drools 6.5 Règle de compilation d'erreur référençant une carte
rule "RULE01"
no-loop true
when
$attribute:String()
$map : Map(this["KEY_A"] == "VALUE_A")
then
ruleResponse.put("ruleName",drools.getRule().getName());
$attribute = StringHelper.concatenateValues($map.get("KEY_B"),$map.get("KEY_C"), $map.get("KEY_D"));
ruleResponse.put("result",$attribute);
end
public static String concatenateValues(Object value1, Object value2, Object value3){
StringBuilder sb = new StringBuilder(value1 == null ? "" : value1.toString())
.append(value2 == null ? "" : value2.toString())
.append(value3 == null ? "" : value3.toString());
return sb.toString();
}
Merci Laune, j'ai posté ma mise à jour 'StringHelper.concatenateValues' ci-dessus – Orby