[rules-users] Run Drool Application From Command Prompt (Close this thread)

Pankaj.Jain at lntinfotech.com Pankaj.Jain at lntinfotech.com
Tue Jul 28 05:20:20 EDT 2009


Hi Greg !!

Now I am able to run the application from command prompt. You were right, 
the problem was of bootstrap class path.
Thank you so much...................I really appreciate your help.
Now we can close this thread.......

Thanks & Regards:

Pankaj Jain | L&T infotech |Navi Mumbai
Mobile: +91 9920218945
Email : pankaj.jain at lntinfotech.com
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 <greg_barton at yahoo.com> 
Sent by: rules-users-bounces at lists.jboss.org
07/28/2009 12:02 PM
Please respond to
Rules Users List <rules-users at lists.jboss.org>


To
Rules Users List <rules-users at lists.jboss.org>
cc

Subject
Re: [rules-users] Run Drool Application From Command Prompt







Well, there you go. :)  Just put drools into the regular classpath and not 
the bootstrap classpath.  Is that possible?

--- On Tue, 7/28/09, Pankaj.Jain at lntinfotech.com 
<Pankaj.Jain at lntinfotech.com> wrote:

> From: Pankaj.Jain at lntinfotech.com <Pankaj.Jain at lntinfotech.com>
> Subject: Re: [rules-users] Run Drool Application From Command Prompt
> To: "Rules Users List" <rules-users at lists.jboss.org>
> 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 : pankaj.jain at lntinfotech.com
> 
> 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 <greg_barton at yahoo.com>
> 
> 
> Sent by:
> rules-users-bounces at lists.jboss.org
> 07/28/2009 11:29
> AM
> 
> 
> 
> Please respond to
> 
> Rules Users List
> <rules-users at lists.jboss.org>
> 
> 
> 
> 
> 
> 
> To
> Rules Users List
> <rules-users at lists.jboss.org>
> 
> 
> 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, Pankaj.Jain at lntinfotech.com
> <Pankaj.Jain at lntinfotech.com>
> wrote:
> 
> 
> 
> > From: Pankaj.Jain at lntinfotech.com
> <Pankaj.Jain at lntinfotech.com>
> 
> > Subject: Re: [rules-users] Run Drool Application From
> Command Prompt
> 
> > To: rules-users at lists.jboss.org
> 
> > 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 : pankaj.jain at lntinfotech.com
> 
> > 
> 
> > 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
> 
> > rules-users at lists.jboss.org
> 
> > https://lists.jboss.org/mailman/listinfo/rules-users
> 
> > 
> 
> 
> 
> 
> 
>       
> 
> 
> 
> _______________________________________________
> 
> rules-users mailing list
> 
> rules-users at lists.jboss.org
> 
> https://lists.jboss.org/mailman/listinfo/rules-users
> 
> 
> 
> ______________________________________________________________________
> 
> 
> 
> 
> 
> 
> 
> ______________________________________________________________________
> 
> 
> -----Inline Attachment Follows-----
> 
> _______________________________________________
> rules-users mailing list
> rules-users at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/rules-users
> 


 

_______________________________________________
rules-users mailing list
rules-users at lists.jboss.org
https://lists.jboss.org/mailman/listinfo/rules-users

______________________________________________________________________



______________________________________________________________________
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.jboss.org/pipermail/rules-users/attachments/20090728/a1567717/attachment.html 


More information about the rules-users mailing list