Help

Controls

PermLinkWikiLink

Built with Seam

You can find the full source code for this website in the Seam package in the directory /examples/wiki. It is licensed under the LGPL.

Forum: Seam Users Forum ListTopic List
15. Feb 2008, 08:59 CET | Link

Every second or third deployment we get the stack trace below indicating some linkage problem with drools.

We use Seam 2.0.0.GA code on jboss-4.2.2.GA.

Anyone recognizing this problem who can point me in a good direction.

Best regards, Tobias


[2008-02-15 08:39:54,734] Facet reco: Module is deployed successfully
08:39:55,593 INFO  [Contexts] starting up: org.jboss.seam.security.identity
08:39:55,609 INFO  [Contexts] starting up: org.jboss.seam.security.identity
08:39:56,031 INFO  [RuleBase] parsing rules: /META-INF/security.drl
08:39:56,031 INFO  [RuleBase] parsing rules: /META-INF/security.drl
08:39:56,203 ERROR [[/]] Session event listener threw exception
org.jboss.seam.InstantiationException: Could not instantiate Seam component: org.jboss.seam.security.identity
	at org.jboss.seam.Component.newInstance(Component.java:1970)
	at org.jboss.seam.contexts.Contexts.startup(Contexts.java:304)
	at org.jboss.seam.contexts.Contexts.startup(Contexts.java:278)
	at org.jboss.seam.contexts.Lifecycle.beginSession(Lifecycle.java:191)
	at org.jboss.seam.contexts.ServletLifecycle.beginSession(ServletLifecycle.java:124)
	at org.jboss.seam.servlet.SeamListener.sessionCreated(SeamListener.java:44)
	at org.apache.catalina.session.StandardSession.tellNew(StandardSession.java:397)
	at org.apache.catalina.session.StandardSession.setId(StandardSession.java:369)
	at org.apache.catalina.session.ManagerBase.createSession(ManagerBase.java:828)
	at org.apache.catalina.session.StandardManager.createSession(StandardManager.java:291)
	at org.apache.catalina.connector.Request.doGetSession(Request.java:2312)
	at org.apache.catalina.connector.Request.getSession(Request.java:2075)
	at org.apache.catalina.connector.RequestFacade.getSession(RequestFacade.java:833)
	at com.sun.faces.context.SessionMap.getSession(ExternalContextImpl.java:1002)
	at com.sun.faces.context.SessionMap.get(ExternalContextImpl.java:962)
	at org.jboss.seam.contexts.BasicContext.get(BasicContext.java:48)
	at org.jboss.seam.Component.getInstance(Component.java:1851)
	at org.jboss.seam.Component.getInstance(Component.java:1829)
	at org.jboss.seam.web.Session.getInstance(Session.java:122)
	at org.jboss.seam.contexts.FacesLifecycle.beginRequest(FacesLifecycle.java:54)
	at org.jboss.seam.jsf.SeamPhaseListener.beforeRestoreView(SeamPhaseListener.java:368)
	at org.jboss.seam.jsf.SeamPhaseListener.beforeServletPhase(SeamPhaseListener.java:139)
	at org.jboss.seam.jsf.SeamPhaseListener.beforePhase(SeamPhaseListener.java:116)
	at com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:222)
	at com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:117)
	at javax.faces.webapp.FacesServlet.service(FacesServlet.java:244)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
	at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:83)
	at org.jboss.seam.web.MultipartFilter.doFilter(MultipartFilter.java:85)
	at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
	at org.jboss.seam.web.ExceptionFilter.doFilter(ExceptionFilter.java:64)
	at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
	at org.tuckey.web.filters.urlrewrite.RuleChain.handleRewrite(RuleChain.java:164)
	at org.tuckey.web.filters.urlrewrite.RuleChain.doRules(RuleChain.java:141)
	at org.tuckey.web.filters.urlrewrite.UrlRewriter.processRequest(UrlRewriter.java:90)
	at org.tuckey.web.filters.urlrewrite.UrlRewriteFilter.doFilter(UrlRewriteFilter.java:406)
	at se.reco.web.filter.RecoUrlRewriteFilter.doFilter(RecoUrlRewriteFilter.java:53)
	at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
	at org.jboss.seam.web.RedirectFilter.doFilter(RedirectFilter.java:45)
	at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
	at org.ajax4jsf.framework.ajax.xmlfilter.BaseXMLFilter.doXmlFilter(BaseXMLFilter.java:127)
	at org.ajax4jsf.framework.ajax.xmlfilter.BaseFilter.doFilter(BaseFilter.java:277)
	at org.jboss.seam.web.Ajax4jsfFilter.doFilter(Ajax4jsfFilter.java:60)
	at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
	at org.jboss.seam.web.LoggingFilter.doFilter(LoggingFilter.java:58)
	at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
	at org.jboss.seam.servlet.SeamFilter.doFilter(SeamFilter.java:158)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
	at se.reco.web.filter.TimingFilter.performAndLogSeamRequest(TimingFilter.java:72)
	at se.reco.web.filter.TimingFilter.doFilter(TimingFilter.java:51)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
	at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
	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:230)
	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
	at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:179)
	at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:432)
	at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:84)
	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
	at org.jboss.web.tomcat.service.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:157)
	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:262)
	at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
	at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)
	at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:446)
	at java.lang.Thread.run(Thread.java:595)
Caused by: java.lang.RuntimeException: exception invoking: compileRuleBase
	at org.jboss.seam.util.Reflections.invokeAndWrap(Reflections.java:135)
	at org.jboss.seam.Component.callComponentMethod(Component.java:2082)
	at org.jboss.seam.Component.callCreateMethod(Component.java:2005)
	at org.jboss.seam.Component.newInstance(Component.java:1976)
	at org.jboss.seam.Component.getInstance(Component.java:1873)
	at org.jboss.seam.Component.getInstance(Component.java:1840)
	at org.jboss.seam.Namespace.getComponentInstance(Namespace.java:55)
	at org.jboss.seam.Namespace.getComponentInstance(Namespace.java:50)
	at org.jboss.seam.el.SeamELResolver.resolveBase(SeamELResolver.java:166)
	at org.jboss.seam.el.SeamELResolver.getValue(SeamELResolver.java:53)
	at javax.el.CompositeELResolver.getValue(CompositeELResolver.java:53)
	at com.sun.faces.el.FacesCompositeELResolver.getValue(FacesCompositeELResolver.java:64)
	at org.jboss.el.parser.AstIdentifier.getValue(AstIdentifier.java:44)
	at org.jboss.el.ValueExpressionImpl.getValue(ValueExpressionImpl.java:186)
	at org.jboss.seam.core.Expressions$1.getValue(Expressions.java:112)
	at org.jboss.seam.Component$ELInitialValue.getValue(Component.java:2360)
	at org.jboss.seam.Component.initialize(Component.java:1389)
	at org.jboss.seam.Component.instantiateJavaBean(Component.java:1315)
	at org.jboss.seam.Component.instantiate(Component.java:1268)
	at org.jboss.seam.Component.newInstance(Component.java:1966)
	... 70 more
Caused by: java.lang.reflect.InvocationTargetException
	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.jboss.seam.util.Reflections.invoke(Reflections.java:21)
	at org.jboss.seam.util.Reflections.invokeAndWrap(Reflections.java:125)
	... 89 more
Caused by: java.lang.LinkageError: duplicate class definition: org/drools/base/org/jboss/seam/security/PermissionCheck$getName
	at java.lang.ClassLoader.defineClass1(Native Method)
	at java.lang.ClassLoader.defineClass(ClassLoader.java:620)
	at org.drools.base.ClassFieldExtractorFactory$ByteArrayClassLoader.defineClass(ClassFieldExtractorFactory.java:462)
	at org.drools.base.ClassFieldExtractorFactory.getClassFieldExtractor(ClassFieldExtractorFactory.java:115)
	at org.drools.base.ClassFieldExtractor.init(ClassFieldExtractor.java:77)
	at org.drools.base.ClassFieldExtractor.<init>(ClassFieldExtractor.java:57)
	at org.drools.base.ClassFieldExtractorCache.getExtractor(ClassFieldExtractorCache.java:35)
	at org.drools.rule.builder.PatternBuilder.getFieldExtractor(PatternBuilder.java:775)
	at org.drools.rule.builder.PatternBuilder.build(PatternBuilder.java:265)
	at org.drools.rule.builder.PatternBuilder.buildConstraint(PatternBuilder.java:191)
	at org.drools.rule.builder.PatternBuilder.build(PatternBuilder.java:161)
	at org.drools.rule.builder.PatternBuilder.build(PatternBuilder.java:87)
	at org.drools.rule.builder.GroupElementBuilder.build(GroupElementBuilder.java:69)
	at org.drools.rule.builder.RuleBuilder.build(RuleBuilder.java:53)
	at org.drools.compiler.PackageBuilder.addRule(PackageBuilder.java:420)
	at org.drools.compiler.PackageBuilder.addPackage(PackageBuilder.java:283)
	at org.drools.compiler.PackageBuilder.addPackageFromDrl(PackageBuilder.java:160)
	at org.jboss.seam.drools.RuleBase.compileRuleBase(RuleBase.java:58)
	... 95 more
	... 46 more

5 Replies:
18. Feb 2008, 14:15 CET | Link

I guess you have some stale drools jar lying around

 

Read about how to report a bug.

25. Feb 2008, 08:29 CET | Link

You are probably right. An ant target with:


  <delete dir="${jboss.home}/server/default/tmp"/>
  <delete dir="${jboss.home}/server/default/work"/>
  <delete dir="${jboss.home}/server/default/log"/>

... which is set to run on before run of JBoss in my IDEA seems to solve it for me. Or at least I haven't seen the problems since.

26. Feb 2008, 13:24 CET | Link

I was wrong. We still get these stack traces at deploy even though all directories tmp, work and log (FWIW) are emptied before deploy.

Anyone else seen this stack trace?

23. Jun 2008, 19:10 CET | Link

We're seeing a similar thing, in that every couple of days out Rules (used for pricing) start failing with compilation errors even though they haven't been changed.

eg Caused by: org.mvel.CompileException: unable to resolve property

Redeploying or restarting solves it.

Tobias, did you ever resolve your issue?

Cheers,

Damian.

24. Jun 2008, 08:19 CET | Link

Actually, we do not see these problems anymore. Unfortunately I don't know how we got rid of it. A lot has happened in our application since I wrote this. Possibly it could be the fact that I always clear the jboss directories as part of the build-process, but well ... I am not sure.