"Failed to link" error during drools rule compilation and application deployment
Issue
- I have a web application (MyWeb.war) containing some drools rules and I get errors like this on deployment:
15:14:56,789 WARN [org.jboss.modules] (http-localhost/127.0.0.1:8080-1) Failed to define class com.example.classType in Module "deployment.MyWeb.war:main" from Service Module Loader: java.lang.LinkageError: Failed to link com/example/classType (Module "deployment.MyWeb.war:main" from Service Module Loader)
at org.jboss.modules.ModuleClassLoader.defineClass(ModuleClassLoader.java:487) [jboss-modules.jar:1.3.5.Final-redhat-1]
......
at java.lang.ClassLoader.loadClass(ClassLoader.java:411) [rt.jar:1.8.0_72]
at org.drools.core.common.ProjectClassLoader.internalLoadClass(ProjectClassLoader.java:142) [drools-core-6.0.3-redhat-6.jar:6.0.3-redhat-6]
at org.drools.core.common.ProjectClassLoader.loadClass(ProjectClassLoader.java:125) [drools-core-6.0.3-redhat-6.jar:6.0.3-redhat-6]
......
at org.mvel2.ParserConfiguration.checkForDynamicImport(ParserConfiguration.java:163) [mvel2-2.1.9.Final-redhat-13.jar:2.1.9.Final-redhat-13]
at org.mvel2.ParserConfiguration.hasImport(ParserConfiguration.java:191) [mvel2-2.1.9.Final-redhat-13.jar:2.1.9.Final-redhat-13]
at org.mvel2.ParserContext.hasImport(ParserContext.java:360) [mvel2-2.1.9.Final-redhat-13.jar:2.1.9.Final-redhat-13]
at org.mvel2.compiler.AbstractParser.createPropertyToken(AbstractParser.java:1342) [mvel2-2.1.9.Final-redhat-13.jar:2.1.9.Final-redhat-13]
at org.mvel2.compiler.AbstractParser.nextToken(AbstractParser.java:846) [mvel2-2.1.9.Final-redhat-13.jar:2.1.9.Final-redhat-13]
at org.mvel2.compiler.ExpressionCompiler._compile(ExpressionCompiler.java:128) [mvel2-2.1.9.Final-redhat-13.jar:2.1.9.Final-redhat-13]
at org.mvel2.compiler.ExpressionCompiler.compile(ExpressionCompiler.java:62) [mvel2-2.1.9.Final-redhat-13.jar:2.1.9.Final-redhat-13]
at org.mvel2.MVEL.analysisCompile(MVEL.java:670) [mvel2-2.1.9.Final-redhat-13.jar:2.1.9.Final-redhat-13]
at org.mvel2.MVEL.analysisCompile(MVEL.java:674) [mvel2-2.1.9.Final-redhat-13.jar:2.1.9.Final-redhat-13]
at org.drools.compiler.rule.builder.PatternBuilder.setInputs(PatternBuilder.java:1124) [drools-compiler-6.0.3-redhat-6.jar:6.0.3-redhat-6]
at org.drools.compiler.rule.builder.PatternBuilder.getExprBindings(PatternBuilder.java:816) [drools-compiler-6.0.3-redhat-6.jar:6.0.3-redhat-6]
at org.drools.compiler.rule.builder.PatternBuilder.buildRelationalExpression(PatternBuilder.java:803) [drools-compiler-6.0.3-redhat-6.jar:6.0.3-redhat-6]
at org.drools.compiler.rule.builder.PatternBuilder.buildExpression(PatternBuilder.java:732) [drools-compiler-6.0.3-redhat-6.jar:6.0.3-redhat-6]
......
Caused by: java.lang.NoClassDefFoundError: com/example/classType (wrong name: com/example/ClassType)
at java.lang.ClassLoader.defineClass1(Native Method) [rt.jar:1.8.0_72]
at java.lang.ClassLoader.defineClass(ClassLoader.java:760) [rt.jar:1.8.0_72]
at org.jboss.modules.ModuleClassLoader.doDefineOrLoadClass(ModuleClassLoader.java:361) [jboss-modules.jar:1.3.5.Final-redhat-1]
at org.jboss.modules.ModuleClassLoader.defineClass(ModuleClassLoader.java:482) [jboss-modules.jar:1.3.5.Final-redhat-1]
... 65 more
......
15:14:57,254 ERROR [org.drools.compiler.kie.builder.impl.AbstractKieModule] (http-localhost/127.0.0.1:8080-1) Unable to build KieBaseModel: modelname
Unable to Analyse Expression classType == ClassType.ABC:
[Error: Failed to link com/example/classType (Module "deployment.MyWeb.war:main" from Service Module Loader)]
[Near : {... classType == ClassType.ABC ....}]
^
[Line: 8, Column: 9] : [Rule name='Rule Name']
Environment
- Red Hat JBoss BRMS
- 6.x
- Red Hat JBoss BPM Suite (BPMS)
- 6.x
- Windows or Mac
Subscriber exclusive content
A Red Hat subscription provides unlimited access to our knowledgebase of over 48,000 articles and solutions.
Welcome! Check out the Getting Started with Red Hat page for quick tours and guides for common tasks.
