[rules-dev] M2 Guvnor Tomcat Deployment Issues and Resolutions

Mark Proctor mproctor at codehaus.org
Wed Nov 5 19:34:41 EST 2008


mellster wrote:
> FYI, here are a few more hacks I had to make (after checking out the latest
> from trunk) to get guvnor started on tomcat6 and j2se1.5 on WinXP
>
> 1) java.lang.NoClassDefFoundError: org/drools/ObjectFilter
>
> It looks like this one moved to the org.drools.runtime package - duplicated
> the source file into org/drools and rebuilt.
>   
If you are working with trunk, we are introducing drools-api, which has 
some changes like this. But I shouldn't be breaking api compatability, I 
see now I made a refactoring mistake. I should have kept an ObjectFilter 
in org.drools, that inherited the runtime one, fixing this now. Let me 
know if there any other api changes like this, so I can revert them.

Mark
> 2) javax.jcr.NamespaceException: http://www.jboss.org/drools-repository/1.0
> is not a registered namespace uri
>
> Added the line
>
> drools=http\://www.jboss.org/drools-repository/1.0
>
> to bin/repository/repository/namespaces/ns_reg
>
> 3) jsf not found (if you're running with J2SE instead of J2EE)
>
> Added jsf-api and jsf-impl to the pom (runtime scope should do it)
>
> '<dependency>
>     <groupId>javax.faces</groupId>
>     <artifactId>jsf-api</artifactId>
>     <version>1.2_02</version>
> </dependency>
>
> <dependency>
>     <groupId>javax.faces</groupId>
>     <artifactId>jsf-impl</artifactId
>     <version>1.2-b19</version>
> </dependency>
>
> cheers
>
> Marco
>
>
> dave sinclair wrote:
>   
>> Just a heads up for everyone out there. I needed to make the following
>> changes to guvnor's POM in order to get the webapp to work properly on
>> Tomcat. I would imagine some of these issues would appear on JBoss also
>> but
>> have not tried.
>>
>> 1. Changed seam from 2.1.0.BETA1 to 2.1.0-SNAPSHOT to prevent classloader
>> problem
>>
>> POM Changes
>>      <dependency>
>>         <groupId>org.jboss.seam</groupId>
>>         <artifactId>jboss-seam-remoting</artifactId>
>>         <version>2.1.0-SNAPSHOT</version>
>>     </dependency>
>>     <dependency>
>>         <groupId>org.jboss.seam</groupId>
>>         <artifactId>jboss-seam</artifactId>
>>         <version>2.1.0-SNAPSHOT</version>
>>     </dependency>
>>
>> EXCEPTION without change
>>
>> SEVERE: Exception sending context initialized event to listener instance
>> of
>> class org.jboss.seam.servlet.SeamListener
>> java.lang.IllegalStateException: Cannot load
>> WEB-INF/classes/net/sf/webdav/exceptions/AccessDeniedException.class from
>> WebappClassLoader
>>   delegate: false
>>   repositories:
>>     /WEB-INF/classes/
>> ----------> Parent Classloader:
>> org.apache.catalina.loader.StandardClassLoader at c4fe76
>>  (using getResourceAsStream() returned null)
>>         at
>> org.jboss.seam.deployment.AbstractDeploymentHandler.getClassFile(AbstractDeploymentHandler.java:41)
>>         at
>> org.jboss.seam.deployment.ComponentDeploymentHandler.handle(ComponentDeploymentHandler.java:57)
>>         at
>> org.jboss.seam.deployment.DeploymentStrategy.handle(DeploymentStrategy.java:177)
>>         at
>> org.jboss.seam.deployment.AbstractScanner.handleItem(AbstractScanner.java:30)
>>         at
>> org.jboss.seam.deployment.URLScanner.handleDirectory(URLScanner.java:141)
>>         at
>> org.jboss.seam.deployment.URLScanner.handleDirectory(URLScanner.java:137)
>>         at
>> org.jboss.seam.deployment.URLScanner.handleDirectory(URLScanner.java:137)
>>         at
>> org.jboss.seam.deployment.URLScanner.handleDirectory(URLScanner.java:137)
>>         at
>> org.jboss.seam.deployment.URLScanner.handleDirectory(URLScanner.java:137)
>>         at
>> org.jboss.seam.deployment.URLScanner.handleDirectory(URLScanner.java:137)
>>         at
>> org.jboss.seam.deployment.URLScanner.handleDirectory(URLScanner.java:137)
>>         at
>> org.jboss.seam.deployment.URLScanner.scanDirectories(URLScanner.java:40)
>>         at
>> org.jboss.seam.deployment.StandardDeploymentStrategy.scan(StandardDeploymentStrategy.java:107)
>>         at
>> org.jboss.seam.init.Initialization.create(Initialization.java:113)
>>         at
>> org.jboss.seam.servlet.SeamListener.contextInitialized(SeamListener.java:34)
>>         at
>> org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:3843)
>>         at
>> org.apache.catalina.core.StandardContext.start(StandardContext.java:4350)
>>         at
>> org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:791)
>>         at
>> org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:771)
>>         at
>> org.apache.catalina.core.StandardHost.addChild(StandardHost.java:525)
>>         at
>> org.apache.catalina.startup.HostConfig.deployWAR(HostConfig.java:829)
>>         at
>> org.apache.catalina.startup.HostConfig.deployWARs(HostConfig.java:718)
>>         at
>> org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:490)
>>         at
>> org.apache.catalina.startup.HostConfig.start(HostConfig.java:1147)
>>         at
>> org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:311)
>>         at
>> org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117)
>>         at
>> org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1053)
>>         at
>> org.apache.catalina.core.StandardHost.start(StandardHost.java:719)
>>         at
>> org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045)
>>         at
>> org.apache.catalina.core.StandardEngine.start(StandardEngine.java:443)
>>         at
>> org.apache.catalina.core.StandardService.start(StandardService.java:516)
>>         at
>> org.apache.catalina.core.StandardServer.start(StandardServer.java:710)
>>         at org.apache.catalina.startup.Catalina.start(Catalina.java:578)
>>         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.catalina.startup.Bootstrap.start(Bootstrap.java:288)
>>         at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413)
>>
>> 2. Added javax.persistence to prevent ClassNotFoundException
>>
>> POM Changes
>>
>>         <dependency>
>>             <groupId>javax.persistence</groupId>
>>             <artifactId>persistence-api</artifactId>
>>             <version>1.0</version>
>>         </dependency>
>>
>> EXCEPTION without change
>>
>> SEVERE: Exception sending context initialized event to listener instance
>> of
>> class org.jboss.seam.servlet.SeamListener
>> java.lang.RuntimeException: Could not create Component:
>> org.jboss.seam.core.init
>>         at
>> org.jboss.seam.init.Initialization.addComponent(Initialization.java:1068)
>>         at
>> org.jboss.seam.init.Initialization.init(Initialization.java:614)
>>         at
>> org.jboss.seam.servlet.SeamListener.contextInitialized(SeamListener.java:34)
>>         at
>> org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:3843)
>>         at
>> org.apache.catalina.core.StandardContext.start(StandardContext.java:4350)
>>         at
>> org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:791)
>>         at
>> org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:771)
>>         at
>> org.apache.catalina.core.StandardHost.addChild(StandardHost.java:525)
>>         at
>> org.apache.catalina.startup.HostConfig.deployWAR(HostConfig.java:829)
>>         at
>> org.apache.catalina.startup.HostConfig.deployWARs(HostConfig.java:718)
>>         at
>> org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:490)
>>         at
>> org.apache.catalina.startup.HostConfig.start(HostConfig.java:1147)
>>         at
>> org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:311)
>>         at
>> org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117)
>>         at
>> org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1053)
>>         at
>> org.apache.catalina.core.StandardHost.start(StandardHost.java:719)
>>         at
>> org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045)
>>         at
>> org.apache.catalina.core.StandardEngine.start(StandardEngine.java:443)
>>         at
>> org.apache.catalina.core.StandardService.start(StandardService.java:516)
>>         at
>> org.apache.catalina.core.StandardServer.start(StandardServer.java:710)
>>         at org.apache.catalina.startup.Catalina.start(Catalina.java:578)
>>         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.catalina.startup.Bootstrap.start(Bootstrap.java:288)
>>         at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413)
>> Caused by: java.lang.NoClassDefFoundError: javax/persistence/Entity
>>         at org.jboss.seam.Seam.getComponentType(Seam.java:109)
>>         at org.jboss.seam.Component.<init>(Component.java:210)
>>         at org.jboss.seam.Component.<init>(Component.java:199)
>>         at
>> org.jboss.seam.init.Initialization.addComponent(Initialization.java:1052)
>>         ... 26 more
>> Caused by: java.lang.ClassNotFoundException: javax.persistence.Entity
>>         at
>> org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1360)
>>         at
>> org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1206)
>>         at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:319)
>>         ... 30 more
>>
>> 3. Added hibernate-validator to prevent ClassNotFoundException
>>
>> POM Changes
>>
>>          <dependency>
>>             <groupId>org.hibernate</groupId>
>>             <artifactId>hibernate-validator</artifactId>
>>             <version>3.0.0.GA</version>
>>         </dependency>
>>
>> EXCEPTION without change
>>
>> SEVERE: Exception sending context initialized event to listener instance
>> of
>> class org.jboss.seam.servlet.SeamListener
>> java.lang.RuntimeException: Could not create Component:
>> org.jboss.seam.international.statusMessages
>>         at
>> org.jboss.seam.init.Initialization.addComponent(Initialization.java:1068)
>>         at
>> org.jboss.seam.init.Initialization.installComponents(Initialization.java:984)
>>         at
>> org.jboss.seam.init.Initialization.init(Initialization.java:646)
>>         at
>> org.jboss.seam.servlet.SeamListener.contextInitialized(SeamListener.java:34)
>>         at
>> org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:3843)
>>         at
>> org.apache.catalina.core.StandardContext.start(StandardContext.java:4350)
>>         at
>> org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:791)
>>         at
>> org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:771)
>>         at
>> org.apache.catalina.core.StandardHost.addChild(StandardHost.java:525)
>>         at
>> org.apache.catalina.startup.HostConfig.deployWAR(HostConfig.java:829)
>>         at
>> org.apache.catalina.startup.HostConfig.deployWARs(HostConfig.java:718)
>>         at
>> org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:490)
>>         at
>> org.apache.catalina.startup.HostConfig.start(HostConfig.java:1147)
>>         at
>> org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:311)
>>         at
>> org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117)
>>         at
>> org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1053)
>>         at
>> org.apache.catalina.core.StandardHost.start(StandardHost.java:719)
>>         at
>> org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045)
>>         at
>> org.apache.catalina.core.StandardEngine.start(StandardEngine.java:443)
>>         at
>> org.apache.catalina.core.StandardService.start(StandardService.java:516)
>>         at
>> org.apache.catalina.core.StandardServer.start(StandardServer.java:710)
>>         at org.apache.catalina.startup.Catalina.start(Catalina.java:578)
>>         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.catalina.startup.Bootstrap.start(Bootstrap.java:288)
>>         at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413)
>> Caused by: java.lang.NoClassDefFoundError:
>> [Lorg/hibernate/validator/InvalidValue;
>>         at java.lang.Class.getDeclaredMethods0(Native Method)
>>         at java.lang.Class.privateGetDeclaredMethods(Class.java:2427)
>>         at java.lang.Class.privateGetPublicMethods(Class.java:2547)
>>         at java.lang.Class.privateGetPublicMethods(Class.java:2563)
>>         at java.lang.Class.getMethods(Class.java:1410)
>>         at org.jboss.seam.Component.hasAnnotation(Component.java:1078)
>>         at org.jboss.seam.Component.<init>(Component.java:212)
>>         at org.jboss.seam.Component.<init>(Component.java:199)
>>         at
>> org.jboss.seam.init.Initialization.addComponent(Initialization.java:1052)
>>         ... 27 more
>> Caused by: java.lang.ClassNotFoundException:
>> org.hibernate.validator.InvalidValue
>>         at
>> org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1360)
>>         at
>> org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1206)
>>         at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:319)
>>         ... 36 more
>>
>> 4. Seam's version of the Java Expression Language was clashing with
>> Tomcat's
>>
>> POM Changes
>>
>> - exclude from seam
>> <dependency>
>>             <groupId>org.jboss.seam</groupId>
>>             <artifactId>jboss-seam</artifactId>
>>             <version>2.1.0-SNAPSHOT</version>
>>             <exclusions>
>>                 <exclusion>
>>                     <groupId>javax.el</groupId>
>>                     <artifactId>el-api</artifactId>
>>                 </exclusion>
>>             </exclusions>
>>         </dependency>
>> - comment out from POM
>> <!--<dependency>-->
>>             <!--<groupId>javax.el</groupId>-->
>>             <!--<artifactId>el-api</artifactId>-->
>>             <!--<version>1.2</version>-->
>>             <!--<scope>runtime</scope>-->
>>         <!--</dependency>-->
>>
>>
>> Exception without change
>>
>> java.lang.LinkageError: loader constraint violation: when resolving
>> interface method
>> "javax.servlet.jsp.JspApplicationContext.getExpressionFactory()Lj
>> avax/el/ExpressionFactory;" the class loader (instance of
>> org/apache/jasper/servlet/JasperLoader) of the current class,
>> org/apache/jsp/index_jsp, and
>> the class loader (instance of
>> org/apache/catalina/loader/StandardClassLoader) for resolved class,
>> javax/servlet/jsp/JspApplicationContext, have differ
>> ent Class objects for the type javax/el/ExpressionFactory used in the
>> signature
>>         at org.apache.jsp.index_jsp._jspInit(index_jsp.java:22)
>>         at org.apache.jasper.runtime.HttpJspBase.init(HttpJspBase.java:52)
>>         at
>> org.apache.jasper.servlet.JspServletWrapper.getServlet(JspServletWrapper.java:159)
>>         at
>> org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:329)
>>         at
>> org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:337)
>>         at
>> org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266)
>>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
>>         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:53)
>>         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:175)
>>         at
>> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
>>         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:286)
>>         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:447)
>>         at java.lang.Thread.run(Thread.java:619)
>>
>> let me know if we should use different versions then the ones I have
>> listed.
>>
>> thanks
>>
>> dave sinclair
>>
>> _______________________________________________
>> rules-dev mailing list
>> rules-dev at lists.jboss.org
>> https://lists.jboss.org/mailman/listinfo/rules-dev
>>
>>
>>     
>
>   

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.jboss.org/pipermail/rules-dev/attachments/20081106/3d23d289/attachment.html 


More information about the rules-dev mailing list