Here is the console output.. ......CategoryOfService---------15 ......ProviderclaimNumber--130430007701 ........Executing......message rule Hello World Goodbye cruel world ........Executing......message rule
From: rules-users-boun...@lists.jboss.org [mailto:rules-users-boun...@lists.jboss.org] On Behalf Of Gopu Shrestha Sent: Wednesday, March 26, 2014 1:38 PM To: Rules Users List Subject: [rules-users] inserted object now working I am struggling to identify why my another object (Claim) inserted into ksession is not working.. However, I tried the object Message() is working but not Claim(). I printed values of Claim Object its working but not in rule. Where I missed??? Please help... Here is the code. KnowledgeBase kbase = readKnowledgeBase(); StatefulKnowledgeSession ksession = kbase.newStatefulKnowledgeSession(); // go ! Message message = new Message(); message.setMessage("Hello World"); message.setStatus(Message.HELLO); TClaim claim = loadFile(); System.out.println("......CategoryOfService---------"+claim.getClaimIdentificationInfo().getCategoryOfService().getValue());//working System.out.println("......ProviderclaimNumber--"+claim.getClaimIdentificationInfo().getProviderClaimNumber().getValue()); //working ksession.insert(message); ksession.insert(claim); ksession.fireAllRules(); private static TClaim loadFile() throws JAXBException, FileNotFoundException { JAXBContext jaxbContext = JAXBContext.newInstance("com.sample"); Unmarshaller unmarshaller = jaxbContext.createUnmarshaller(); JAXBElement<?> unmarshalledObject = (JAXBElement<?>) unmarshaller.unmarshal(new FileInputStream("Encounter.xml")); TClaim claim = (TClaim) unmarshalledObject.getValue(); return claim; } private static KnowledgeBase readKnowledgeBase() throws Exception { KnowledgeBuilder kbuilder = KnowledgeBuilderFactory.newKnowledgeBuilder(); kbuilder.add(ResourceFactory.newClassPathResource("Sample.drl"), ResourceType.DRL); kbuilder.add(ResourceFactory.newClassPathResource("setBaseECN.drl"), ResourceType.DRL); KnowledgeBuilderErrors errors = kbuilder.getErrors(); if (errors.size() > 0) { for (KnowledgeBuilderError error: errors) { System.err.println(error); } throw new IllegalArgumentException("Could not parse knowledge."); } KnowledgeBase kbase = KnowledgeBaseFactory.newKnowledgeBase(); kbase.addKnowledgePackages(kbuilder.getKnowledgePackages()); return kbase; } ----Rule file setBaseECN.drl---- rule "testing claim rule" when Claim(); then System.out.println("..........Executing.......claim...rule.");//not working end rule "testing message rule" when Message() then System.out.println("........Executing......message rule");//working end
_______________________________________________ rules-users mailing list rules-users@lists.jboss.org https://lists.jboss.org/mailman/listinfo/rules-users