Tengo la siguiente regla de Drools a la que envío un mapa lleno de elementos, pero cuando se ejecuta tengo un elemento. ¿Por qué obtengo nulo cuando debería ser "Y" para el valor? Cuando puse breakpoint en el método ACDebug.debug() e inspeccioné el mapa después de ejecutar $ map.put(), se ve bien, tiene "Y" para el valor, pero después de que se ejecutan mis reglas, ¿tengo nulo? ¿Alguien tiene un problema similar?Mapas y cadenas en las reglas de Drools
import java.util.Map;
import java.util.HashMap;
import edu.abc.ACDebug;
rule "POSTPROCESSOR 8"
ruleflow-group "supress-processor"
when
$map:Map(keySet contains "STANDARD_ADDRESS:STREET_NAME")
then
ACDebug.debug($map, "Map before PUT: ");
$map.put("/locationList/sourceAddress/fullStreet",new String("Y"));
ACDebug.debug($map, "Map after PUT: ");
$map.remove("STANDARD_ADDRESS:STREET_NAME");
end
Gracias, esto realmente ayudó. Vi ejemplos sin llamada de actualización() y pensé que siempre funcionaría. – Zec