[rules-users] ClasscastException in drools ant task

sk_mutyala sk_mutyala at yahoo.co.in
Tue Sep 11 06:12:42 EDT 2012


Hi All,

I am trying to build a sample drools project using ant and getting the below
error. I am using "drools-distribution-5.4.0.Final" release jars in my
project. Unable to get this issue resolved as not sure what really went
wrong.

RuleBaseTask failed: Unable to load dialect
'org.drools.rule.builder.dialect.mvel.MVELDialectConfiguration:mvel:org.drools.rule.builder.dialect.mvel.MVELDialectConfiguration'
	at
org.drools.contrib.DroolsCompilerAntTask.execute(DroolsCompilerAntTask.java:159)
	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:597)
	at
org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106)
	at org.apache.tools.ant.Task.perform(Task.java:348)
	at org.apache.tools.ant.Target.execute(Target.java:357)
	at org.apache.tools.ant.Target.performTasks(Target.java:385)
	at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1337)
	at org.apache.tools.ant.Project.executeTarget(Project.java:1307)
	at
org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:41)
	at
org.eclipse.ant.internal.launching.remote.EclipseDefaultExecutor.executeTargets(EclipseDefaultExecutor.java:33)
	at org.apache.tools.ant.Project.executeTargets(Project.java:1191)
	at
org.eclipse.ant.internal.launching.remote.InternalAntRunner.run(InternalAntRunner.java:423)
	at
org.eclipse.ant.internal.launching.remote.InternalAntRunner.main(InternalAntRunner.java:137)
Caused by: org.drools.RuntimeDroolsException: Unable to load dialect
'org.drools.rule.builder.dialect.mvel.MVELDialectConfiguration:mvel:org.drools.rule.builder.dialect.mvel.MVELDialectConfiguration'
	at
org.drools.compiler.PackageBuilderConfiguration.addDialect(PackageBuilderConfiguration.java:313)
	at
org.drools.compiler.PackageBuilderConfiguration.buildDialectConfigurationMap(PackageBuilderConfiguration.java:298)
	at
org.drools.compiler.PackageBuilderConfiguration.init(PackageBuilderConfiguration.java:187)
	at
org.drools.compiler.PackageBuilderConfiguration.<init>(PackageBuilderConfiguration.java:140)
	at
org.drools.contrib.DroolsCompilerAntTask.getPackageBuilder(DroolsCompilerAntTask.java:556)
	at
org.drools.contrib.DroolsCompilerAntTask.createWithPackageBuilder(DroolsCompilerAntTask.java:266)
	at
org.drools.contrib.DroolsCompilerAntTask.execute(DroolsCompilerAntTask.java:156)
	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:597)
	at
org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106)
	at org.apache.tools.ant.Task.perform(Task.java:348)
	at org.apache.tools.ant.Target.execute(Target.java:357)
	at org.apache.tools.ant.Target.performTasks(Target.java:385)
	at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1337)
	at org.apache.tools.ant.Project.executeTarget(Project.java:1306)
	at
org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:41)
	at
org.eclipse.ant.internal.launching.remote.EclipseDefaultExecutor.executeTargets(EclipseDefaultExecutor.java:32)
	at org.apache.tools.ant.Project.executeTargets(Project.java:1189)
	... 2 more
Caused by: java.lang.ClassCastException:
org.drools.rule.builder.dialect.mvel.MVELDialectConfiguration
	at
org.drools.compiler.PackageBuilderConfiguration.addDialect(PackageBuilderConfiguration.java:308)
	at
org.drools.compiler.PackageBuilderConfiguration.buildDialectConfigurationMap(PackageBuilderConfiguration.java:298)
	at
org.drools.compiler.PackageBuilderConfiguration.init(PackageBuilderConfiguration.java:189)
	at
org.drools.compiler.PackageBuilderConfiguration.<init>(PackageBuilderConfiguration.java:142)
	at
org.drools.contrib.DroolsCompilerAntTask.getPackageBuilder(DroolsCompilerAntTask.java:558)
	at
org.drools.contrib.DroolsCompilerAntTask.createWithPackageBuilder(DroolsCompilerAntTask.java:266)
	at
org.drools.contrib.DroolsCompilerAntTask.execute(DroolsCompilerAntTask.java:156)
	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:597)
	at
org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106)
	at org.apache.tools.ant.Task.perform(Task.java:348)
	at org.apache.tools.ant.Target.execute(Target.java:357)
	at org.apache.tools.ant.Target.performTasks(Target.java:385)
	at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1337)
	at org.apache.tools.ant.Project.executeTarget(Project.java:1307)
	at
org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:41)
	at
org.eclipse.ant.internal.launching.remote.EclipseDefaultExecutor.executeTargets(EclipseDefaultExecutor.java:33)
	at org.apache.tools.ant.Project.executeTargets(Project.java:1191)
	... 2 more

Below is the list of jars added to my classpath,
--------------------------------------------
antlr-runtime.jar
drools-ant-5.4.0.Final.jar
drools-compiler-5.4.0.Final.jar
drools-core-5.4.0.Final.jar
drools-decisiontables-5.4.0.Final.jar
drools-jsr94-5.4.0.Final.jar
drools-persistence-jpa-5.4.0.Final.jar
drools-templates-5.4.0.Final.jar
drools-verifier-5.4.0.Final.jar
droolsjbpm-ide-common-5.4.0.Final.jar
jbpm-bpmn2.jar
jbpm-flow-builder.jar
jbpm-flow.jar
jsr94.jar
junit.jar
jxl.jar
knowledge-api.jar
knowledge-internal-api.jar
mvel2.jar
org.eclipse.jdt.core_3.6.1.v_A68_R36x.jar
xmlpull.jar
xpp3_min.jar
xstream.jar

build.xml
---------
<project name="DroolsProto" default="dist" basedir=".">
	<property name="build.src" location="src"/>
	<property name="build.target" location="target"/>
	<property name="build.dist"  location="dist"/>
	<path id="build.lib.path">
		<fileset dir="${build.src}/lib">
			<include name="**/*.jar"/>
		</fileset>
	</path>
	
	<taskdef name="droolscompiler"
classname="org.drools.contrib.DroolsCompilerAntTask">
		<classpath refid="build.lib.path"/>
	</taskdef>
	<target name="clean">
		<delete dir="${build.target}"/>
		<delete dir="${build.dist}"/>
	</target>
	<target name="init">
		<tstamp/>
		<mkdir dir="${build.target}"/>
		<mkdir dir="${build.dist}"/>
		<record name="build.log" loglevel="verbose" append="false"/>
	</target>
	<target name="compile" depends="init">
		<mkdir dir="${build.target}/classes"/>
		<javac srcdir="${build.src}/main/java" destdir="${build.target}/classes">
			<classpath refid="build.lib.path"/>
			<include name="**/*.java"/>
		</javac>
	</target>
	<target name="compile-rules">
		<property name="pathelements" refid="build.lib.path"/>
		<droolscompiler srcDir="${build.src}/main/rules" 
			toFile="${build.target}/classes/drl.pkg" 
			classpathref="build.lib.path">
			<include name="*.drl" />
		</droolscompiler>
	</target>
	
	<target name="bundle-resources" depends="compile-rules">
		<copy todir="${build.target}/classes">
			<fileset dir="${build.src}/main/resources"/>
		</copy>
	</target>
	
	<target name="dist" depends="compile,bundle-resources"/>
</project>

Thanks in advance,
Suresh



--
View this message in context: http://drools.46999.n3.nabble.com/ClasscastException-in-drools-ant-task-tp4019687.html
Sent from the Drools: User forum mailing list archive at Nabble.com.


More information about the rules-users mailing list