Hi list,

try to make my first experiences with Drools 6. For that purpose I've modified slightly the 'KieFileSystemExample'
(https://github.com/droolsjbpm/drools/blob/6.0.0.CR3/drools-examples-api/kiefilesystem-example/src/main/java/org/drools/example/api/kiefilesystem/KieFileSystemExample.java)
as the code below shows. I try to use the newReaderResource(Reader reader) but when I run maven test I get
the following error:

Tests run: 1, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 0.33 sec <<< FAILURE! - in org.drools.example.api.kiefilesystem.KieFileSystemExampleTest
testGo(org.drools.example.api.kiefilesystem.KieFileSystemExampleTest)  Time elapsed: 0.263 sec  <<< ERROR!
java.lang.RuntimeException: Unable to fetch module from resource :[ReaderResource resource=java.io.StringReader@6a5714de encoding='null']
    at java.io.ByteArrayInputStream.<init>(ByteArrayInputStream.java:106)
    at org.drools.compiler.kie.builder.impl.KieRepositoryImpl.getKieModule(KieRepositoryImpl.java:192)
    at org.drools.compiler.kie.builder.impl.KieRepositoryImpl.addKieModule(KieRepositoryImpl.java:157)
    at org.drools.example.api.kiefilesystem.KieFileSystemExample.go(KieFileSystemExample.java:39)
    at org.drools.example.api.kiefilesystem.KieFileSystemExampleTest.testGo(KieFileSystemExampleTest.java:16)

public class KieFileSystemExample {
   
    public String getRule() {
        String s = "" +
                   "package org.drools.example.api.kiefilesystem \n\n" +
                   "import org.drools.example.api.kiefilesystem.Message \n\n" +
                   "global java.io.PrintStream out \n\n" +
                   "rule \"rule 1\" when \n" +
                   " m : Message( ) \n" +
                   "then \n" +
                   " out.println( m.getName() + \": \" + m.getText() ); \n" +
                   "end \n" +
                   "rule \"rule 2\" when \n" +
                   " Message( text == \"Hello, HAL. Do you read me, HAL?\" ) \n" +
                   "then \n" +
                   " insert( new Message(\"HAL\", \"Dave. I read you.\" ) ); \n" +
                   "end";
        return s;
    }
   
    public void go(PrintStream out) {
   
        KieServices ks = KieServices.Factory.get();
        KieRepository kr = ks.getRepository();

        KieModule kModule = kr.addKieModule(ks.getResources().newReaderResource( (Reader) new StringReader(getRule()) ));

        KieContainer kContainer = ks.newKieContainer(kModule.getReleaseId());
        KieSession kSession = kContainer.newKieSession();
        kSession.setGlobal("out", out);

        kSession.insert(new Message("Dave", "Hello, HAL. Do you read me, HAL?"));
        kSession.fireAllRules();
    }

    public static void main(String[] args) {
        new KieFileSystemExample().go(System.out);
    }
}

Any Idea?

Thanks in advance.

Regards,

-markus