OK, I upgraded to 4.0.2 and here is the updated error:

 

java.lang.NoSuchMethodError: org.eclipse.jdt.internal.compiler.CompilationResult

.getProblems()[Lorg/eclipse/jdt/core/compiler/CategorizedProblem;

        at org.drools.commons.jci.compilers.EclipseJavaCompiler$3.acceptResult(E

clipseJavaCompiler.java:321)

        at org.eclipse.jdt.internal.compiler.Compiler.compile(Compiler.java:335)

 

        at org.drools.commons.jci.compilers.EclipseJavaCompiler.compile(EclipseJ

avaCompiler.java:351)

        at org.drools.commons.jci.compilers.AbstractJavaCompiler.compile(Abstrac

tJavaCompiler.java:51)

        at org.drools.rule.builder.dialect.java.JavaDialect.compileAll(JavaDiale

ct.java:332)

        at org.drools.compiler.DialectRegistry.compileAll(DialectRegistry.java:6

0)

        at org.drools.compiler.PackageBuilder.addPackage(PackageBuilder.java:308

)

        at org.drools.compiler.PackageBuilder.addPackageFromDrl(PackageBuilder.j

ava:167)

 

I have found this function in the file core-3.2.3.v_686_R32x.jar in the drools/lib directory for 4.2.

 

One of the things that has happened recently is that I have upgraded from 3.2 to 3.3.1. I thought this might be part of the problem, but I looked at the core jar for 3.3.1 and it has the same method.

 

The thing that puzzles me is that I'm not including the core file in my distribution, but if that's the problem, why am I not getting a ClassNotFoundException?

 

Thanks.

 


From: Hehl, Thomas
Sent: Monday, October 22, 2007 10:04 AM
To: 'Rules Users List'
Subject: NoSuchMethodError

 

I am running 4.01 and I started get this exception on a new piece of code:

 

java.lang.NoSuchMethodError: org.eclipse.jdt.internal.compiler.CompilationResult

.getProblems()[Lorg/eclipse/jdt/core/compiler/CategorizedProblem;

        at org.drools.commons.jci.compilers.EclipseJavaCompiler$3.acceptResult(E

clipseJavaCompiler.java:335)

        at org.eclipse.jdt.internal.compiler.Compiler.compile(Compiler.java:335)

 

        at org.drools.commons.jci.compilers.EclipseJavaCompiler.compile(EclipseJ

avaCompiler.java:372)

        at org.drools.commons.jci.compilers.AbstractJavaCompiler.compile(Abstrac

tJavaCompiler.java:51)

        at org.drools.rule.builder.dialect.java.JavaDialect.compileAll(JavaDiale

ct.java:332)

        at org.drools.compiler.DialectRegistry.compileAll(DialectRegistry.java:6

0)

        at org.drools.compiler.PackageBuilder.addPackage(PackageBuilder.java:287

)

        at org.drools.compiler.PackageBuilder.addPackageFromDrl(PackageBuilder.j

ava:160)

        at com.acs.gs.juror.workflow.RulesBasedWorkflowManager.init(RulesBasedWo

rkflowManager.java:114)

 

It is blowing up on this line of code:

 

builder.addPackageFromDrl( new StringReader(drl) );

 

Which is the drl created from the spreadsheet compiler on the decision table.

 

This rules class has been tested thoroughly under junit. It wasn't until I deployed the library into my webapp that this issue turned up.

 

Does anyone have any idea what I should be doing next?

 

Thanks.

Thom Hehl
Sr. eJuror Architect

) Office (859) 277-8800 x 144

* Thomas.Hehl@acs-inc.com
ACS, Inc.

Government Solutions

1733 Harrodsburg Road
Lexington, KY 40504-3617

This e-mail message, including any attachments, is for the sole use of the intended recipient(s) and may contain confidential and privileged information. Any unauthorized review, use, disclosure or distribution is prohibited. If you are not the intended recipient, please contact the sender by reply e-mail and destroy all copies of the original message and notify sender via e-mail at Thomas.Hehl@acs-inc.com or by telephone at 859-277-8800 ext. 144. Thank you.