Hi all,

I have a perfectly running Eclipse 3.3 with DRools 4.0.4 and JDK 1.5.14. 
The rules are compiled with a post build Ant task which uses Janino (need it 
for Tomcat compatibility).
Now OUTSIDE Eclipse it seems I cannot use that Ant task to save my life :(
I tried switching from Janino to the default compiler, same thing. I always get 
this infamous error:

 BUILD FAILED
 E:\buildRules-hudson.xml:30: RuleBaseTask failed: Unable to load dialect 
 'org.drools.rule.builder.dialect.java.JavaDialectConfiguration:java'
        at com.csc.ezbook.eztarif.rules.DroolsCompilerAntTaskStandalone.execute
        (DroolsCompilerAntTaskStandalone.java:163)
        at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:288)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.
        java:39)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(
        DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:585)
        at 
org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java
        :105)
        at org.apache.tools.ant.Task.perform(Task.java:348)
 [...]
 Caused by: org.drools.RuntimeDroolsException: Unable to load dialect  
'org.drools.rule.builder.dialect.java.JavaDialectConfiguration:java'
        at org.drools.compiler.PackageBuilderConfiguration.addDialect(
        PackageBuilderConfiguration.java:152)
        at org.drools.compiler.PackageBuilderConfiguration.
        buildDialectConfigurationMap(PackageBuilderConfiguration.java:140)
        at org.drools.compiler.PackageBuilderConfiguration.init(
        PackageBuilderConfiguration.java:117)
        at org.drools.compiler.PackageBuilderConfiguration.<init>(
        PackageBuilderConfiguration.java:94)
        at com.my.app.rules.DroolsCompilerAntTaskStandalone.getPackageBuilder(
        DroolsCompilerAntTaskStandalone.java:257)
        at com.my.app.rules.DroolsCompilerAntTaskStandalone.execute(
        DroolsCompilerAntTaskStandalone.java:136)

That "DroolsCompilerAntTaskStandalone" is my task using the default compiler 
like this:
    PackageBuilderConfiguration conf = new PackageBuilderConfiguration();
    conf.setClassLoader( loader );
    PackageBuilder builder = new PackageBuilder( conf );

If I use Janino like below the error is exactly the same...
    PackageBuilderConfiguration pkgBuilderCfg = new 
    PackageBuilderConfiguration();
    pkgBuilderCfg.setClassLoader( loader );
    JavaDialectConfiguration javaConf = (JavaDialectConfiguration) 
    pkgBuilderCfg.getDialectConfiguration( "java" );
    javaConf.setCompiler( JavaDialectConfiguration.JANINO );
    PackageBuilder builder = new PackageBuilder( pkgBuilderCfg );

Again, in Eclipse all is working fine. I checked Ant's classpath, here it is:
 E:\apache-ant-1.7.0\bin\..\lib\ant-launcher.jar 
 E:\apache-ant-1.7.0\lib\*.jar 
 C:\Program Files\Java\jdk1.5.0_14\lib\tools.jar 

Here is how I provide a classpath:
        <taskdef name="rulescompiler" classname="com.my.app.rules.
        DroolsCompilerAntTaskStandalone" classpathref="droolsutils.classpath" />

        <target depends="newfilesarethere" name="build" unless="rulesCompile.
        notRequired">
                <rulescompiler srcdir="${THIS_PROJ}/src/com/my/app/rules" 
                               
tofile="${THIS_PROJ}/build/classes/com/my/app/rules/
                               packaged.rules"
                               classpathref="droolsutils.classpath" >
                    <include name="*.drl" />
                </rulescompiler>
        </target>

The classpath I provide contains pretty much all libraries I use normally in 
the project, but I tried even to add ALL jar's from the Eclipse 3.3 install 
directory (that would include all DRools 4.0.4 libraries, with antlr and 
whatnot)

I tried also with DRools 4.0.7, same behaviour...

What does that mean and where is it coming from? Could it have issues with the 
tools.jar from Java 1.5.0_14? 

Thank you for any input,
M


      
_______________________________________________
rules-users mailing list
[email protected]
https://lists.jboss.org/mailman/listinfo/rules-users

Reply via email to