Hi Brian, did you have time to take a look?
regards, François Papon [email protected] Le 28/02/2019 à 21:35, Francois Papon a écrit : > Hi Brian, > > Here the error on Tomcat start. > > You can checkout my example project here: > > https://github.com/fpapon/shiro-labs/tree/master/tomcat-web > > > 2019-02-28 21:28:34,370 DEBUG > [org.apache.shiro.web.env.EnvironmentLoader]: Published WebEnvironment > as ServletContext attribute with name > [org.apache.shiro.web.env.EnvironmentLoader.ENVIRONMENT_ATTRIBUTE_KEY] > 2019-02-28 21:28:34,370 INFO > [org.apache.shiro.web.env.EnvironmentLoader]: Shiro environment > initialized in 119 ms. > 28-Feb-2019 21:28:34.379 GRAVE [RMI TCP Connection(2)-127.0.0.1] > org.apache.catalina.core.StandardContext.startInternal One or more > Filters failed to start. Full details will be found in the appropriate > container log file > 28-Feb-2019 21:28:34.379 GRAVE [RMI TCP Connection(2)-127.0.0.1] > org.apache.catalina.core.StandardContext.startInternal Erreur de > démarrage du contexte [/tomcat-web] suite aux erreurs précédentes > 2019-02-28 21:28:34,376 ERROR > [org.apache.shiro.web.servlet.AbstractFilter]: Unable to start Filter: > [Object named 'filterChainResolver' is not of required type > [org.apache.shiro.web.filter.mgt.FilterChainResolver].]. > org.apache.shiro.env.RequiredTypeException: Object named > 'filterChainResolver' is not of required type > [org.apache.shiro.web.filter.mgt.FilterChainResolver]. > at > org.apache.shiro.env.DefaultEnvironment.getObject(DefaultEnvironment.java:150) > at > org.apache.shiro.web.env.DefaultWebEnvironment.getFilterChainResolver(DefaultWebEnvironment.java:45) > at org.apache.shiro.web.servlet.ShiroFilter.init(ShiroFilter.java:77) > at > org.apache.shiro.web.servlet.AbstractShiroFilter.onFilterConfigSet(AbstractShiroFilter.java:152) > at > org.apache.shiro.web.servlet.AbstractFilter.init(AbstractFilter.java:97) > at > org.apache.catalina.core.ApplicationFilterConfig.initFilter(ApplicationFilterConfig.java:277) > at > org.apache.catalina.core.ApplicationFilterConfig.getFilter(ApplicationFilterConfig.java:258) > at > org.apache.catalina.core.ApplicationFilterConfig.<init>(ApplicationFilterConfig.java:104) > at > org.apache.catalina.core.StandardContext.filterStart(StandardContext.java:4427) > at > org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5067) > at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183) > at > org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:742) > at > org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:718) > at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:703) > at > org.apache.catalina.startup.HostConfig.manageApp(HostConfig.java:1737) > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > at > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) > at > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) > at java.lang.reflect.Method.invoke(Method.java:498) > at > org.apache.tomcat.util.modeler.BaseModelMBean.invoke(BaseModelMBean.java:287) > at > com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:819) > at > com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:801) > at > org.apache.catalina.mbeans.MBeanFactory.createStandardContext(MBeanFactory.java:456) > at > org.apache.catalina.mbeans.MBeanFactory.createStandardContext(MBeanFactory.java:405) > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > at > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) > at > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) > at java.lang.reflect.Method.invoke(Method.java:498) > at > org.apache.tomcat.util.modeler.BaseModelMBean.invoke(BaseModelMBean.java:287) > at > com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:819) > at > com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:801) > at > com.sun.jmx.remote.security.MBeanServerAccessController.invoke(MBeanServerAccessController.java:468) > at > javax.management.remote.rmi.RMIConnectionImpl.doOperation(RMIConnectionImpl.java:1468) > at > javax.management.remote.rmi.RMIConnectionImpl.access$300(RMIConnectionImpl.java:76) > at > javax.management.remote.rmi.RMIConnectionImpl$PrivilegedOperation.run(RMIConnectionImpl.java:1309) > at java.security.AccessController.doPrivileged(Native Method) > at > javax.management.remote.rmi.RMIConnectionImpl.doPrivilegedOperation(RMIConnectionImpl.java:1408) > at > javax.management.remote.rmi.RMIConnectionImpl.invoke(RMIConnectionImpl.java:829) > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > at > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) > at > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) > at java.lang.reflect.Method.invoke(Method.java:498) > at sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:357) > at sun.rmi.transport.Transport$1.run(Transport.java:200) > at sun.rmi.transport.Transport$1.run(Transport.java:197) > at java.security.AccessController.doPrivileged(Native Method) > at sun.rmi.transport.Transport.serviceCall(Transport.java:196) > at > sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:573) > at > sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:834) > at > sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.lambda$run$0(TCPTransport.java:688) > at java.security.AccessController.doPrivileged(Native Method) > at > sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:687) > at > java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) > at > java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) > at java.lang.Thread.run(Thread.java:748) > > regards, > > François Papon > [email protected] > > Le 28/02/2019 à 19:07, Brian Demers a écrit : >> I'm not 100% following what is the error? >> >> On Thu, Feb 28, 2019 at 2:04 AM Francois Papon <[email protected]> >> wrote: >> >>> Hi guys, >>> >>> We have an error with the default filter resolver when deploy a webapp >>> in Tomcat : >>> >>> The solution is to add this configuration in the shiro.ini file: >>> >>> filterChainResolver = >>> org.apache.shiro.web.filter.mgt.PathMatchingFilterChainResolver >>> >>> It seems to work with versions older than 1.4.x. >>> >>> Should we add a default resolver in the source code or just update the >>> documentation to indicate this configuration to the user? >>> >>> I think it could be better to do the first solution for compatibility. >>> >>> Thoughts? >>> >>> -- >>> François Papon >>> [email protected] >>> >>> >>>
