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]
>>>
>>>
>>>

Reply via email to