[rules-users] Groovy classes as fact classes in drool

kavita kavithasethu at gmail.com
Wed Jan 18 13:55:28 EST 2012


Hi,

Can anybody tell me how to use groovy classes as fact classes in drools.
When i try to upload the jar file generated from the groovy class am getting
the following error:

SEVERE: Servlet.service() for servlet AssetFileServlet threw exception
java.lang.ClassNotFoundException: groovy.lang.GroovyObject
	at
org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1680)
	at
org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1526)
	at java.lang.Class.forName0(Native Method)
	at java.lang.Class.forName(Unknown Source)
	at
org.drools.rule.MapBackedClassLoader.loadClass(MapBackedClassLoader.java:109)
	at java.lang.ClassLoader.loadClass(Unknown Source)
	at java.lang.ClassLoader.defineClass1(Native Method)
	at java.lang.ClassLoader.defineClassCond(Unknown Source)
	at java.lang.ClassLoader.defineClass(Unknown Source)
	at
org.drools.rule.MapBackedClassLoader.fastFindClass(MapBackedClassLoader.java:86)
	at
org.drools.rule.MapBackedClassLoader.loadClass(MapBackedClassLoader.java:104)
	at java.lang.ClassLoader.loadClass(Unknown Source)
	at
org.drools.guvnor.server.contenthandler.ModelContentHandler.isClassVisible(ModelContentHandler.java:183)
	at
org.drools.guvnor.server.contenthandler.ModelContentHandler.getImportsFromJar(ModelContentHandler.java:148)
	at
org.drools.guvnor.server.contenthandler.ModelContentHandler.onAttachmentAdded(ModelContentHandler.java:66)
	at
org.drools.guvnor.server.files.FileManagerUtils.attachFileToAsset(FileManagerUtils.java:115)
	at
org.drools.guvnor.server.files.FileManagerUtils.attachFile(FileManagerUtils.java:87)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
	at java.lang.reflect.Method.invoke(Unknown Source)
	at org.jboss.seam.util.Reflections.invoke(Reflections.java:22)
	at
org.jboss.seam.intercept.RootInvocationContext.proceed(RootInvocationContext.java:32)
	at
org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:56)
	at
org.jboss.seam.transaction.RollbackInterceptor.aroundInvoke(RollbackInterceptor.java:28)
	at
org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:68)
	at
org.jboss.seam.core.BijectionInterceptor.aroundInvoke(BijectionInterceptor.java:77)
	at
org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:68)
	at
org.jboss.seam.core.MethodContextInterceptor.aroundInvoke(MethodContextInterceptor.java:44)
	at
org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:68)
	at
org.jboss.seam.security.SecurityInterceptor.aroundInvoke(SecurityInterceptor.java:163)
	at
org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:68)
	at
org.jboss.seam.intercept.RootInterceptor.invoke(RootInterceptor.java:107)
	at
org.jboss.seam.intercept.JavaBeanInterceptor.interceptInvocation(JavaBeanInterceptor.java:185)
	at
org.jboss.seam.intercept.JavaBeanInterceptor.invoke(JavaBeanInterceptor.java:103)
	at
org.drools.guvnor.server.files.FileManagerUtils_$$_javassist_seam_10.attachFile(FileManagerUtils_$$_javassist_seam_10.java)
	at
org.drools.guvnor.server.files.AssetFileServlet.processAttachFileToAsset(AssetFileServlet.java:97)
	at
org.drools.guvnor.server.files.AssetFileServlet.doPost(AssetFileServlet.java:49)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:637)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
	at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
	at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
	at org.jboss.seam.web.ContextFilter$1.process(ContextFilter.java:42)
	at
org.jboss.seam.servlet.ContextualHttpServletRequest.run(ContextualHttpServletRequest.java:65)
	at org.jboss.seam.web.ContextFilter.doFilter(ContextFilter.java:37)
	at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
	at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
	at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
	at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
	at
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
	at
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
	at
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
	at
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:293)
	at
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:859)
	at
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:602)
	at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)
	at java.lang.Thread.run(Unknown Source)

Please help.

Thanks,
Kavitha.

--
View this message in context: http://drools.46999.n3.nabble.com/Groovy-classes-as-fact-classes-in-drool-tp3670101p3670101.html
Sent from the Drools: User forum mailing list archive at Nabble.com.



More information about the rules-users mailing list