Why do you want to do that? just stick with the default conflict resolver. If you really want to do this over ride the setting on the RuleBaseConfiguration.

I discussed setting this property in the email yesterday with the subject "Re: [rules-users] Decision Tables: Probelm with sequence=true".

Mark
fuadhamidov wrote:
ok, now final state of my code is as bellow. now my question is this: how do i define compositeConflictResolver to
RuleBase?


private static void runrule(CmsFlightServiceUsg usg) throws Exception {
        ConflictResolver[] conflictResolvers = new ConflictResolver[] {
                        SalienceConflictResolver.getInstance(),
                        ComplexityConflictResolver.getInstance(),
                        FifoConflictResolver.getInstance() };
        CompositeConflictResolver compositeConflictResolver = new
CompositeConflictResolver(
                        conflictResolvers);
        Package pkg = (Package) readSerializedObject();

        RuleBase ruleBase = RuleBaseFactory.newRuleBase();
        ruleBase.addPackage(pkg);
        WorkingMemory workingMemory = ruleBase.newStatefulSession();
        workingMemory.insert(usg);
        workingMemory.fireAllRules();
}

private static void compile() throws Exception {
        String rulecontent = readRuleFromFile();
        PackageBuilder builder = new PackageBuilder();
        builder.addPackageFromXml(new BufferedReader(new StringReader(
                        rulecontent)));
        Package pkg = builder.getPackage();
        writeSerializedObject(pkg);
}

private static void writeSerializedObject(Object object) throws IOException
{
        FileOutputStream fileOutputStream = new FileOutputStream("sample.txt");
        ObjectOutputStream objectOutputStream = new ObjectOutputStream(
                        fileOutputStream);
        objectOutputStream.writeObject(object);
        objectOutputStream.close();
}

private static Object readSerializedObject() throws IOException,
                ClassNotFoundException {
        FileInputStream fileInputStream = new FileInputStream("sample.txt");
        ObjectInputStream objectInputStream = new ObjectInputStream(
                        fileInputStream);
        Object object = objectInputStream.readObject();
        return object;
}


Mark Proctor wrote:
While drools 2.x was limited to XML, 4.0 preference is for the DRL, which is a none xml format. It doesn't produce a jar at the moment just a binary Packaage instance, which you can serialise.

Mark



_______________________________________________
rules-users mailing list
[email protected]
https://lists.jboss.org/mailman/listinfo/rules-users

Reply via email to