diff --git a/redaction-service-v1/redaction-service-server-v1/src/main/java/com/iqser/red/service/redaction/v1/server/service/drools/KieContainerCreationService.java b/redaction-service-v1/redaction-service-server-v1/src/main/java/com/iqser/red/service/redaction/v1/server/service/drools/KieContainerCreationService.java index c83ca4a2..810274ac 100644 --- a/redaction-service-v1/redaction-service-server-v1/src/main/java/com/iqser/red/service/redaction/v1/server/service/drools/KieContainerCreationService.java +++ b/redaction-service-v1/redaction-service-server-v1/src/main/java/com/iqser/red/service/redaction/v1/server/service/drools/KieContainerCreationService.java @@ -85,8 +85,12 @@ public class KieContainerCreationService { public KieBuilder registerNewKieContainerVersion(String dossierTemplateId, long version, String rules, RuleFileType ruleFileType) { KieServices kieServices = KieServices.Factory.get(); + + var releaseId = getReleaseId(dossierTemplateId, version, ruleFileType); + kieServices.getRepository().removeKieModule(releaseId); + KieFileSystem kieFileSystem = kieServices.newKieFileSystem(); - kieFileSystem.generateAndWritePomXML(getReleaseId(dossierTemplateId, version, ruleFileType)); + kieFileSystem.generateAndWritePomXML(releaseId); InputStream input = new ByteArrayInputStream(rules.getBytes(StandardCharsets.UTF_8)); kieFileSystem.write("src/main/resources/drools/rules" + dossierTemplateId + ".drl", kieServices.getResources().newInputStreamResource(input)); KieBuilder kieBuilder = kieServices.newKieBuilder(kieFileSystem);