Well, there you go. :) Just put drools into the regular classpath and not the bootstrap classpath. Is that possible?
--- On Tue, 7/28/09, [email protected] <[email protected]> wrote: > From: [email protected] <[email protected]> > Subject: Re: [rules-users] Run Drool Application From Command Prompt > To: "Rules Users List" <[email protected]> > Date: Tuesday, July 28, 2009, 1:23 AM > > > Hi > > > > you r right, When I run > the application > (integrated with OFBiz) from command prompt I get the > NPE: in line > > > > getClass().getClassLoader().loadClass( > "org.eclipse.jdt.internal.compiler.Compiler" > ); > > > > When I run the > application (ofcourse > integrated with OFBiz) from eclipse I don't get > NPE exception. > > > > > > In ofbiz we have a batch > file named > startofbiz.bat to run the application, inside this I > configured the classpath > by this > > > > > > set > VMARGS=-Xbootclasspath/p:applications\order\lib\antlr-runtime.jar > > set > VMARGS=-Xbootclasspath/p:applications\order\lib\drools-api.jar > %VMARGS% > > set > VMARGS=-Xbootclasspath/p:applications\order\lib\drools-compiler.jar > %VMARGS% > > set > VMARGS=-Xbootclasspath/p:applications\order\lib\drools-core.jar > %VMARGS% > > set > VMARGS=-Xbootclasspath/p:applications\order\lib\drools-decisiontables.jar > %VMARGS% > > set > VMARGS=-Xbootclasspath/p:applications\order\lib\drools-jsr94.jar > %VMARGS% > > set > VMARGS=-Xbootclasspath/p:applications\order\lib\drools-templates.jar > %VMARGS% > > set > VMARGS=-Xbootclasspath/p:applications\order\lib\joda-time.jar > %VMARGS% > > set > VMARGS=-Xbootclasspath/p:applications\order\lib\jsr94.jar > %VMARGS% > > set > VMARGS=-Xbootclasspath/p:applications\order\lib\jxl.jar > %VMARGS% > > set > VMARGS=-Xbootclasspath/p:applications\order\lib\mvel2.jar > %VMARGS% > > set > VMARGS=-Xbootclasspath/p:applications\order\lib\org.eclipse.jdt.core_3.4.4.v_894_R34x.jar > %VMARGS% > > set > VMARGS=-Xbootclasspath/p:applications\order\lib\xpp3.jar > %VMARGS% > > set > VMARGS=-Xbootclasspath/p:applications\order\lib\xpp3_min.jar > %VMARGS% > > set > VMARGS=-Xbootclasspath/p:applications\order\lib\xstream.jar > %VMARGS% > > > > > > > > If i don't do this I > get the class > not found exception > > > > Thanks & Regards: > > > > Pankaj Jain | L&T infotech |Navi Mumbai > > Mobile: +91 9920218945 > > Email : [email protected] > > www.Lntinfotech.com > > > > "Whatever the mind of man can conceive & believe, > it can achieve." > > > > Larsen & Toubro Infotech Ltd. > > www.Lntinfotech.com > > > > This Document is classified as: > > > > L&T > Infotech Proprietary L&T > Infotech Confidential L&T > Infotech Internal Use Only L&T > Infotech General Business > > > > This Email may contain confidential or privileged > information for the intended > recipient (s) If you are not the intended recipient, please > do not use > or disseminate the information, notify the sender and > delete it from your > system. > > > > > > > > > Greg > Barton <[email protected]> > > > Sent by: > [email protected] > 07/28/2009 11:29 > AM > > > > Please respond to > > Rules Users List > <[email protected]> > > > > > > > To > Rules Users List > <[email protected]> > > > cc > > > > Subject > Re: [rules-users] > Run Drool Application > >From Command Prompt > > > > > > > > > > > > > > > > It's unclear from your post when you get the NPE: from > the command line, > from eclipse, or when integrated with OFBiz. (I assume > you're referring > to http://ofbiz.apache.org/) > > > > It's undoubtedly a classpath issue. Just peek at > the source a bit. > I'm not sure what version you're using, but > if you look at the source > in the svn repo you'll see that line 92 of > JavaDialectConfiguration is > this: > > > > getClass().getClassLoader().loadClass( > "org.eclipse.jdt.internal.compiler.Compiler" > ); > > > > See the javadoc for Class.getClassLoader() that says > "Returns the > class loader for the class. Some implementations may use > null to represent > the bootstrap class loader. This method will return null in > such implementations > if this class was loaded by the bootstrap class > loader." > > > > So, it looks probable that in the environment that's > having problems, the > JavaDialectConfiguration class is loaded by the bootstrap > classloader. > What is the VM implementation you're using? > > > > It might be best if > Thread.currentThread().getContextClassLoader() was > used instead of getClass().getClassLoader() in > JavaDialectConfiguration > and elsewhere. Devs, have an opinion on that? > > > > --- On Mon, 7/27/09, [email protected] > <[email protected]> > wrote: > > > > > From: [email protected] > <[email protected]> > > > Subject: Re: [rules-users] Run Drool Application From > Command Prompt > > > To: [email protected] > > > Date: Monday, July 27, 2009, 11:50 PM > > > > > > > > > Hi > > > > > > > > > > > > I still have not got any > > > solution > > > of my problem that I posted previously. I have > included all > > > required jar > > > files and set proper class path .. Please do help ? > > > > > > > > > > > > problem: > > > > > > > > > > > > > > > I am trying to > > > integrate Drool with > > > ofbiz and run application from command prompt. In one > way I > > > have integrated > > > it properly and I am able to run it > > > successfully. > > > > > > > > > > > > > > > Code : Which I was using initially > > > > > > > > > > > > KnowledgeBuilder kbuilder = > > > KnowledgeBuilderFactory.newKnowledgeBuilder(); > > > > > > > > > > > > > > > or > > > > > > > > > > > > PackageBuilderConfiguration cfg = new > > > PackageBuilderConfiguration(); > > > > > > > > > KnowledgeBuilder kbuilder = > > > KnowledgeBuilderFactory.newKnowledgeBuilder(); > > > > > > > > > > > > > > > Exception I got : > > > > > > > > > > > > org.drools.RuntimeDroolsException: Unable to load > dialect > > > > 'org.drools.rule.builder.dialect.java.JavaDialectConfiguration:java > > > > > > > > > > :org.drools.rule.builder.dialect.java.JavaDialectConfiguration' > > > > > > > > > at > > > > org.drools.compiler.PackageBuilderConfiguration.addDialect(PackageBuilderConfiguration.java:274) > > > at > > > > org.drools.compiler.PackageBuilderConfiguration.buildDialectConfigurationMap(PackageBuilderConfiguration.java:259) > > > > > > > > > > > > > > > at > > > > org.drools.compiler.PackageBuilderConfiguration.init(PackageBuilderConfiguration.java:176) > > > at > > > > org.drools.compiler.PackageBuilderConfiguration.<init>(PackageBuilderConfiguration.java:153) > > > at > > > > org.drools.compiler.PackageBuilder.<init>(PackageBuilder.java:242) > > > > > > > > > . > > > > > > . > > > > > > . > > > > > > Caused by: java.lang.NullPointerException > > > > > > at > > > > org.drools.rule.builder.dialect.java.JavaDialectConfiguration.setCompiler(JavaDialectConfiguration.java:92) > > > at > > > > org.drools.rule.builder.dialect.java.JavaDialectConfiguration.init(JavaDialectConfiguration.java:55) > > > at > > > > org.drools.compiler.PackageBuilderConfiguration.addDialect(PackageBuilderConfiguration.java:270 > > > > > > > > > > > > > > > Problem I found : > > > > > > In the class JavaDialectConfiguration in jar file > > > drools-compiler.jar there > > > is a method named "setCompliler", in > this > > > method Null Pointer > > > Exception was coming. > > > > > > > > > > > > Solution I provided : > > > > > > > > > In my application I created my custom class > > > CustomJavaDialectConfiguration > > > by extending to class JavaDialectConfiguration, In > this > > > class I overrided > > > the method setCompiler. My method was exactly same as > that > > > of method setCompiler > > > in JavaDialectConfiguration . To call my dialect class > I > > > also overrided > > > the method "addDialect" of > > > PackageBuilderConfiguration class > > > . For that I created class > > > CustomPackageBuilderConfiguration by extending > > > to PackageBuilderConfiguration. > > > > > > after that I wrote the code: > > > > > > > > > > > > PackageBuilderConfiguration cfg = new > > > CustomPackageBuilderConfiguration(); > > > > > > > > > KnowledgeBuilder kbuilder = > > > KnowledgeBuilderFactory.newKnowledgeBuilder(cfg); > > > > > > > > > > > > > > > > > > > > > Now application is running perfectly fine from both > eclipse > > > and command > > > prompt without any exception. > > > > > > > > > > > > I want to know as my overrided method > > > "setCompiler" was exactly > > > same then why I had to override method, and In > original > > > code (ie in drools-compiler.jar > > > file) why it was giving exception ??? Was > that > > > due to class > > > lader or something else ?? Please do help in > this > > > regard .... > > > > > > > > > > > > > > > > > > > > > > > > > > > Thanks & Regards: > > > > > > > > > > > > Pankaj Jain | L&T infotech |Navi Mumbai > > > > > > Mobile: +91 9920218945 > > > > > > Email : [email protected] > > > > > > www.Lntinfotech.com > > > > > > > > > > > > "Whatever the mind of man can conceive & > believe, > > > it can achieve." > > > > > > > > > > > > Larsen & Toubro Infotech Ltd. > > > > > > www.Lntinfotech.com > > > > > > > > > > > > This Document is classified as: > > > > > > > > > > > > L&T > > > Infotech Proprietary L&T > > > Infotech Confidential L&T > > > Infotech Internal Use Only L&T > > > Infotech General Business > > > > > > > > > > > > This Email may contain confidential or privileged > > > information for the intended > > > recipient (s) If you are not the intended recipient, > please > > > do not use > > > or disseminate the information, notify the sender and > > > delete it from your > > > system. > > > > > > > > > > > > > ______________________________________________________________________ > > > > > > > > > -----Inline Attachment Follows----- > > > > > > _______________________________________________ > > > rules-users mailing list > > > [email protected] > > > https://lists.jboss.org/mailman/listinfo/rules-users > > > > > > > > > > > > > _______________________________________________ > > rules-users mailing list > > [email protected] > > https://lists.jboss.org/mailman/listinfo/rules-users > > > > ______________________________________________________________________ > > > > > > > > ______________________________________________________________________ > > > -----Inline Attachment Follows----- > > _______________________________________________ > rules-users mailing list > [email protected] > https://lists.jboss.org/mailman/listinfo/rules-users > _______________________________________________ rules-users mailing list [email protected] https://lists.jboss.org/mailman/listinfo/rules-users
