繁体   English   中英

如何为用户身份验证添加SHIRO领域请求超时?

[英]How to add SHIRO realm request time out for user authentication?

在我的shiro.ini中,我配置了2个领域,即LDAP和JDBC

但是我无法设置身份验证请求超时。

当我添加:ldapRealm.connectionTimeout = 1000时,它将引发异常:

SEVERE: Exception sending context initialized event to listener instance of class org.apache.shiro.web.env.EnvironmentLoaderListener

org.apache.shiro.config.ConfigurationException:com.bc.xyz.auth.efgLdapRealm类型的对象的属性'connectionTimeout'不存在。 在org.apache.shiro.config.ReflectionBuilder.applyProperty(ReflectionBuilder.java:702)在org.apache.shiro.config.ReflectionBuilder.applyProperty(ReflectionBuilder.java:702)在org.apache.shiro.config.ReflectionBuilder.applySingleProperty (ReflectionBuilder.java:364)在org.apache.shiro.config.ReflectionBuilder.applyProperty(ReflectionBuilder.java:325)在org.apache.shiro.config.ReflectionBuilder $ AssignmentStatement.doExecute(ReflectionBuilder.java:955)在org。 org.apache.shiro.config.ReflectionBuilder $ BeanConfigurationProcessor.execute(ReflectionBuilder.java:765)上的apache.shiro.config.ReflectionBuilder $ Statement.execute(ReflectionBuilder.java:887)在org.apache.shiro.config.ReflectionBuilder处。 org.apache.shiro.config.IniSecurityManagerFactory.buildInstances(IniSecurityManagerFactory.java:167)的org.apache.shiro.config.IniSecurityManagerFactory.createSecurityManager(IniSecurityManagerFactory.java:130)的buildObjects(ReflectionBuilder.java:260) .shiro.config.IniSecurityMan org.org.apache.shiro.config.IniSecurityManagerFactory.createInstance(IniSecurityManagerFactory.java:94)的org.apache.shiro.config.IniSecurityManagerFactory.createInstance(IniSecurityManagerFactory.java:46)的agerFactory.createSecurityManager(IniSecurityManagerFactory.java:108) org.apache.shiro.util.AbstractFactory.getInstance(AbstractFactory.java:47)上的.apache.shiro.config.IniFactorySupport.createInstance(IniFactorySupport.java:123)org.apache.shiro.web.env.IniWebEnvironment.createWebSecurityManager (IniWebEnvironment.java:203)在org.apache.shiro.web.env.IniWebEnvironment.configure(IniWebEnvironment.java:99)在org.apache.shiro.web.env.IniWebEnvironment.init(IniWebEnvironment.java:92) org.apache.shiro.util.LifecycleUtils.init(LifecycleUtils.java:40)上的org.apache.shiro.util.LifecycleUtils.init(LifecycleUtils.java:45)在org.apache.shiro.web.env.EnvironmentLoader上。 org.apache.shiro.web.env.EnvironmentLoader.initEnvironment(Enviro)上的createEnvironment(EnvironmentLoader.java:221) nmentLoader.java:133)(位于org.apache.shiro.web.env.EnvironmentLoaderListener.contextInitialized(EnvironmentLoaderListener.java:58)位于org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4727)(org.apache) org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)处的.catalina.core.StandardContext.startInternal(StandardContext.java:5189)在org.apache.catalina.core.ContainerBase $ StartChild.call(ContainerBase .java:1419),位于org.apache.catalina.core.ContainerBase $ StartChild.call(ContainerBase.java:1409),位于java.util.concurrent.FutureTask.run(FutureTask.java:266),位于java.util.concurrent。 ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)at java.util.concurrent.ThreadPoolExecutor $ Worker.run(ThreadPoolExecutor.java:617)at java.lang.Thread.run(Thread.java:745)

看起来您具有自定义LDAP领域,您的efgLdapRealm是否具有setConnectionTimeout()方法?

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM