Drools - KieServices.Factory.get() returns null












1















I try to integrate a Drools project in a maven application.
The Drools app is running perfectly on his own, but when I try to integrate it in the Maven project, I get a java.lang.NullPointerException.
After some researches it seems to happen because KieServices.Factory.get() return me something, but all his parameters are null.



Here is my code :



 public static final void main(String args) {
myBool test = new myBool(false) ;
try {
// load up the knowledge base

KieServices ks = KieServices.Factory.get();
KieContainer kContainer = ks.getKieClasspathContainer();

KieSession kSession = kContainer.newKieSession("ksession-rules");

// go !
Person toto = new Person("toto",21);
Person titi = new Person("titi",12);
Person tata = new Person("tata",15);

kSession.insert(toto);


I already did a lot of resarches, and try a lot of things to fix it (I've already added the dependency of drools-compiler).
Does someone have an idea to fix it ? Thanks !










share|improve this question























  • "session-rules" session not created. javainuse.com/drools/drools_decision

    – Lova Chittumuri
    Nov 19 '18 at 11:03











  • no need to do research. Please go a head with above mentioned link. and Welcome to StackOverFlow.

    – Lova Chittumuri
    Nov 19 '18 at 11:05











  • Rules are not Fired.

    – Lova Chittumuri
    Nov 19 '18 at 11:05











  • Hi, thanks for your help, but after looking at your link, I don't understand how to correct the problem. It seems to be a problem with the session that is not created, but I don't find in your link how to fix this

    – Jules Cattenoz
    Nov 19 '18 at 12:57











  • Follow the video and write the code in step by step.First leave the fear from your end.

    – Lova Chittumuri
    Nov 19 '18 at 13:00


















1















I try to integrate a Drools project in a maven application.
The Drools app is running perfectly on his own, but when I try to integrate it in the Maven project, I get a java.lang.NullPointerException.
After some researches it seems to happen because KieServices.Factory.get() return me something, but all his parameters are null.



Here is my code :



 public static final void main(String args) {
myBool test = new myBool(false) ;
try {
// load up the knowledge base

KieServices ks = KieServices.Factory.get();
KieContainer kContainer = ks.getKieClasspathContainer();

KieSession kSession = kContainer.newKieSession("ksession-rules");

// go !
Person toto = new Person("toto",21);
Person titi = new Person("titi",12);
Person tata = new Person("tata",15);

kSession.insert(toto);


I already did a lot of resarches, and try a lot of things to fix it (I've already added the dependency of drools-compiler).
Does someone have an idea to fix it ? Thanks !










share|improve this question























  • "session-rules" session not created. javainuse.com/drools/drools_decision

    – Lova Chittumuri
    Nov 19 '18 at 11:03











  • no need to do research. Please go a head with above mentioned link. and Welcome to StackOverFlow.

    – Lova Chittumuri
    Nov 19 '18 at 11:05











  • Rules are not Fired.

    – Lova Chittumuri
    Nov 19 '18 at 11:05











  • Hi, thanks for your help, but after looking at your link, I don't understand how to correct the problem. It seems to be a problem with the session that is not created, but I don't find in your link how to fix this

    – Jules Cattenoz
    Nov 19 '18 at 12:57











  • Follow the video and write the code in step by step.First leave the fear from your end.

    – Lova Chittumuri
    Nov 19 '18 at 13:00
















1












1








1








I try to integrate a Drools project in a maven application.
The Drools app is running perfectly on his own, but when I try to integrate it in the Maven project, I get a java.lang.NullPointerException.
After some researches it seems to happen because KieServices.Factory.get() return me something, but all his parameters are null.



Here is my code :



 public static final void main(String args) {
myBool test = new myBool(false) ;
try {
// load up the knowledge base

KieServices ks = KieServices.Factory.get();
KieContainer kContainer = ks.getKieClasspathContainer();

KieSession kSession = kContainer.newKieSession("ksession-rules");

// go !
Person toto = new Person("toto",21);
Person titi = new Person("titi",12);
Person tata = new Person("tata",15);

kSession.insert(toto);


I already did a lot of resarches, and try a lot of things to fix it (I've already added the dependency of drools-compiler).
Does someone have an idea to fix it ? Thanks !










share|improve this question














I try to integrate a Drools project in a maven application.
The Drools app is running perfectly on his own, but when I try to integrate it in the Maven project, I get a java.lang.NullPointerException.
After some researches it seems to happen because KieServices.Factory.get() return me something, but all his parameters are null.



Here is my code :



 public static final void main(String args) {
myBool test = new myBool(false) ;
try {
// load up the knowledge base

KieServices ks = KieServices.Factory.get();
KieContainer kContainer = ks.getKieClasspathContainer();

KieSession kSession = kContainer.newKieSession("ksession-rules");

// go !
Person toto = new Person("toto",21);
Person titi = new Person("titi",12);
Person tata = new Person("tata",15);

kSession.insert(toto);


I already did a lot of resarches, and try a lot of things to fix it (I've already added the dependency of drools-compiler).
Does someone have an idea to fix it ? Thanks !







java drools kie






share|improve this question













share|improve this question











share|improve this question




share|improve this question










asked Nov 19 '18 at 10:56









Jules CattenozJules Cattenoz

61




61













  • "session-rules" session not created. javainuse.com/drools/drools_decision

    – Lova Chittumuri
    Nov 19 '18 at 11:03











  • no need to do research. Please go a head with above mentioned link. and Welcome to StackOverFlow.

    – Lova Chittumuri
    Nov 19 '18 at 11:05











  • Rules are not Fired.

    – Lova Chittumuri
    Nov 19 '18 at 11:05











  • Hi, thanks for your help, but after looking at your link, I don't understand how to correct the problem. It seems to be a problem with the session that is not created, but I don't find in your link how to fix this

    – Jules Cattenoz
    Nov 19 '18 at 12:57











  • Follow the video and write the code in step by step.First leave the fear from your end.

    – Lova Chittumuri
    Nov 19 '18 at 13:00





















  • "session-rules" session not created. javainuse.com/drools/drools_decision

    – Lova Chittumuri
    Nov 19 '18 at 11:03











  • no need to do research. Please go a head with above mentioned link. and Welcome to StackOverFlow.

    – Lova Chittumuri
    Nov 19 '18 at 11:05











  • Rules are not Fired.

    – Lova Chittumuri
    Nov 19 '18 at 11:05











  • Hi, thanks for your help, but after looking at your link, I don't understand how to correct the problem. It seems to be a problem with the session that is not created, but I don't find in your link how to fix this

    – Jules Cattenoz
    Nov 19 '18 at 12:57











  • Follow the video and write the code in step by step.First leave the fear from your end.

    – Lova Chittumuri
    Nov 19 '18 at 13:00



















"session-rules" session not created. javainuse.com/drools/drools_decision

– Lova Chittumuri
Nov 19 '18 at 11:03





"session-rules" session not created. javainuse.com/drools/drools_decision

– Lova Chittumuri
Nov 19 '18 at 11:03













no need to do research. Please go a head with above mentioned link. and Welcome to StackOverFlow.

– Lova Chittumuri
Nov 19 '18 at 11:05





no need to do research. Please go a head with above mentioned link. and Welcome to StackOverFlow.

– Lova Chittumuri
Nov 19 '18 at 11:05













Rules are not Fired.

– Lova Chittumuri
Nov 19 '18 at 11:05





Rules are not Fired.

– Lova Chittumuri
Nov 19 '18 at 11:05













Hi, thanks for your help, but after looking at your link, I don't understand how to correct the problem. It seems to be a problem with the session that is not created, but I don't find in your link how to fix this

– Jules Cattenoz
Nov 19 '18 at 12:57





Hi, thanks for your help, but after looking at your link, I don't understand how to correct the problem. It seems to be a problem with the session that is not created, but I don't find in your link how to fix this

– Jules Cattenoz
Nov 19 '18 at 12:57













Follow the video and write the code in step by step.First leave the fear from your end.

– Lova Chittumuri
Nov 19 '18 at 13:00







Follow the video and write the code in step by step.First leave the fear from your end.

– Lova Chittumuri
Nov 19 '18 at 13:00














1 Answer
1






active

oldest

votes


















0














public ReturnType yourMethodName(final YourClassName  YourClassObj) {
KieSession kieSession = this.kieContainer.newKieSession("your Session");
kieSession.insert(YourClassObj);
kieSession.fireAllRules();
kieSession.dispose();
return your returnObject/Parameter;
}


In Configuration



 @Bean
public KieContainer kieContainer() {
return KieServices.Factory.get().getKieClasspathContainer();
}


in Service Class:



private final KieContainer kieContainer;

@Autowired
public RulesEngineService(final KieContainer kieContainer) {
RulesEngineService.log.info("Initialising a new session.");
this.kieContainer = kieContainer;
}





share|improve this answer























    Your Answer






    StackExchange.ifUsing("editor", function () {
    StackExchange.using("externalEditor", function () {
    StackExchange.using("snippets", function () {
    StackExchange.snippets.init();
    });
    });
    }, "code-snippets");

    StackExchange.ready(function() {
    var channelOptions = {
    tags: "".split(" "),
    id: "1"
    };
    initTagRenderer("".split(" "), "".split(" "), channelOptions);

    StackExchange.using("externalEditor", function() {
    // Have to fire editor after snippets, if snippets enabled
    if (StackExchange.settings.snippets.snippetsEnabled) {
    StackExchange.using("snippets", function() {
    createEditor();
    });
    }
    else {
    createEditor();
    }
    });

    function createEditor() {
    StackExchange.prepareEditor({
    heartbeatType: 'answer',
    autoActivateHeartbeat: false,
    convertImagesToLinks: true,
    noModals: true,
    showLowRepImageUploadWarning: true,
    reputationToPostImages: 10,
    bindNavPrevention: true,
    postfix: "",
    imageUploader: {
    brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
    contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
    allowUrls: true
    },
    onDemand: true,
    discardSelector: ".discard-answer"
    ,immediatelyShowMarkdownHelp:true
    });


    }
    });














    draft saved

    draft discarded


















    StackExchange.ready(
    function () {
    StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53373116%2fdrools-kieservices-factory-get-returns-null%23new-answer', 'question_page');
    }
    );

    Post as a guest















    Required, but never shown

























    1 Answer
    1






    active

    oldest

    votes








    1 Answer
    1






    active

    oldest

    votes









    active

    oldest

    votes






    active

    oldest

    votes









    0














    public ReturnType yourMethodName(final YourClassName  YourClassObj) {
    KieSession kieSession = this.kieContainer.newKieSession("your Session");
    kieSession.insert(YourClassObj);
    kieSession.fireAllRules();
    kieSession.dispose();
    return your returnObject/Parameter;
    }


    In Configuration



     @Bean
    public KieContainer kieContainer() {
    return KieServices.Factory.get().getKieClasspathContainer();
    }


    in Service Class:



    private final KieContainer kieContainer;

    @Autowired
    public RulesEngineService(final KieContainer kieContainer) {
    RulesEngineService.log.info("Initialising a new session.");
    this.kieContainer = kieContainer;
    }





    share|improve this answer




























      0














      public ReturnType yourMethodName(final YourClassName  YourClassObj) {
      KieSession kieSession = this.kieContainer.newKieSession("your Session");
      kieSession.insert(YourClassObj);
      kieSession.fireAllRules();
      kieSession.dispose();
      return your returnObject/Parameter;
      }


      In Configuration



       @Bean
      public KieContainer kieContainer() {
      return KieServices.Factory.get().getKieClasspathContainer();
      }


      in Service Class:



      private final KieContainer kieContainer;

      @Autowired
      public RulesEngineService(final KieContainer kieContainer) {
      RulesEngineService.log.info("Initialising a new session.");
      this.kieContainer = kieContainer;
      }





      share|improve this answer


























        0












        0








        0







        public ReturnType yourMethodName(final YourClassName  YourClassObj) {
        KieSession kieSession = this.kieContainer.newKieSession("your Session");
        kieSession.insert(YourClassObj);
        kieSession.fireAllRules();
        kieSession.dispose();
        return your returnObject/Parameter;
        }


        In Configuration



         @Bean
        public KieContainer kieContainer() {
        return KieServices.Factory.get().getKieClasspathContainer();
        }


        in Service Class:



        private final KieContainer kieContainer;

        @Autowired
        public RulesEngineService(final KieContainer kieContainer) {
        RulesEngineService.log.info("Initialising a new session.");
        this.kieContainer = kieContainer;
        }





        share|improve this answer













        public ReturnType yourMethodName(final YourClassName  YourClassObj) {
        KieSession kieSession = this.kieContainer.newKieSession("your Session");
        kieSession.insert(YourClassObj);
        kieSession.fireAllRules();
        kieSession.dispose();
        return your returnObject/Parameter;
        }


        In Configuration



         @Bean
        public KieContainer kieContainer() {
        return KieServices.Factory.get().getKieClasspathContainer();
        }


        in Service Class:



        private final KieContainer kieContainer;

        @Autowired
        public RulesEngineService(final KieContainer kieContainer) {
        RulesEngineService.log.info("Initialising a new session.");
        this.kieContainer = kieContainer;
        }






        share|improve this answer












        share|improve this answer



        share|improve this answer










        answered Nov 19 '18 at 13:50









        Lova ChittumuriLova Chittumuri

        7351013




        7351013






























            draft saved

            draft discarded




















































            Thanks for contributing an answer to Stack Overflow!


            • Please be sure to answer the question. Provide details and share your research!

            But avoid



            • Asking for help, clarification, or responding to other answers.

            • Making statements based on opinion; back them up with references or personal experience.


            To learn more, see our tips on writing great answers.




            draft saved


            draft discarded














            StackExchange.ready(
            function () {
            StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53373116%2fdrools-kieservices-factory-get-returns-null%23new-answer', 'question_page');
            }
            );

            Post as a guest















            Required, but never shown





















































            Required, but never shown














            Required, but never shown












            Required, but never shown







            Required, but never shown

































            Required, but never shown














            Required, but never shown












            Required, but never shown







            Required, but never shown







            Popular posts from this blog

            How to pass form data using jquery Ajax to insert data in database?

            National Museum of Racing and Hall of Fame

            Guess what letter conforming each word