hello,
can you show me your cas.properties please ?

2014-08-04 19:32 GMT+02:00 David A. Kovacic <[email protected]>:

>  We have been trying to get the LDAP service registry running on CAS 4.0.0
> by fleshing out the beans given in the 4.0.0 documentation.  Essentially
> what we've done is create the pooledLdapConnectionFactory and searchRequest
> properties using our LDAP authentication setup as a template.  The
> ldapServiceMapper property does not appear to require more configuration
> (at least when using the default LDAP attribute names) than is given in the
> documentation (note that I've only pulled the pertinent pieces of the
> deployerConfigContext.xml file below to help keep the size of this down to
> something reasonable).  The abstractConnectionPool stuff is shared between
> the service registry and the authentication pieces.  This is what our
> deployerConfigContext.xml file looks like:
>
>     <bean id="serviceRegistryDao"
>
> class="org.jasig.cas.adaptors.ldap.services.LdapServiceRegistryDao"
>           p:connectionFactory-ref="servicePooledLdapConnectionFactory"
>           p:searchRequest-ref="searchRequest"
>           p:ldapServiceMapper-ref="ldapMapper" />
>
>     <bean id="servicePooledLdapConnectionFactory"
>           class="org.ldaptive.pool.PooledConnectionFactory"
>           p:connectionPool-ref="serviceConnectionPool" />
>
>     <bean id="serviceConnectionPool" parent="abstractConnectionPool"
>           p:connectionFactory-ref="serviceConnectionFactory" />
>
>      <bean id="abstractConnectionPool" abstract="true"
>           class="org.ldaptive.pool.BlockingConnectionPool"
>           init-method="initialize"
>           p:poolConfig-ref="ldapPoolConfig"
>           p:blockWaitTime="${ldap.pool.blockWaitTime}"
>           p:validator-ref="searchValidator"
>           p:pruneStrategy-ref="pruneStrategy" />
>
>     <bean id="abstractConnectionConfig" abstract="true"
>           class="org.ldaptive.ConnectionConfig"
>           p:ldapUrl="${ldap.url}"
>           p:connectTimeout="${ldap.connectTimeout}"
>           p:useStartTLS="${ldap.useStartTLS}"
>           p:sslConfig-ref="sslConfig" />
>
>     <bean id="ldapPoolConfig" class="org.ldaptive.pool.PoolConfig"
>           p:minPoolSize="${ldap.pool.minSize}"
>           p:maxPoolSize="${ldap.pool.maxSize}"
>           p:validateOnCheckOut="${ldap.pool.validateOnCheckout}"
>           p:validatePeriodically="${ldap.pool.validatePeriodically}"
>           p:validatePeriod="${ldap.pool.validatePeriod}" />
>
>     <bean id="sslConfig" class="org.ldaptive.ssl.SslConfig">
>         <property name="credentialConfig">
>             <bean class="org.ldaptive.ssl.X509CredentialConfig"
>                   p:trustCertificates="${ldap.trustedCert}" />
>         </property>
>     </bean>
>
>     <bean id="pruneStrategy" class="org.ldaptive.pool.IdlePruneStrategy"
>           p:prunePeriod="${ldap.pool.prunePeriod}"
>           p:idleTime="${ldap.pool.idleTime}" />
>
>     <bean id="searchValidator" class="org.ldaptive.pool.SearchValidator" />
>    <bean id="serviceConnectionFactory"
>           class="org.ldaptive.DefaultConnectionFactory"
>           p:connectionConfig-ref="serviceConnectionConfig" />
>
>     <bean id="serviceConnectionConfig" parent="svcAbstractConnectionConfig"
>           p:connectionInitializer-ref="serviceConnectionInitializer" />
>
>     <bean id="svcAbstractConnectionConfig" abstract="true"
>           class="org.ldaptive.ConnectionConfig"
>           p:ldapUrl="${ldap.service.url}"
>           p:connectTimeout="${ldap.connectTimeout}"
>           p:useStartTLS="${ldap.useStartTLS}"
>           p:sslConfig-ref="sslConfig" />
>
>     <bean id="serviceConnectionInitializer"
>           class="org.ldaptive.BindConnectionInitializer"
>           p:bindDn="${ldap.service.managerDn}">
>         <property name="bindCredential">
>             <bean class="org.ldaptive.Credential"
>                   c:password="${ldap.service.managerPassword}" />
>         </property>
>     </bean>
>
>     <bean id="searchRequest"
>           class="org.ldaptive.SearchRequest"
>           p:baseDn="${ldap.service.baseDn}"
>           p:searchFilter="${ldap.service.searchFilter}" />
>
>     <bean id="ldapMapper"
>
> class="org.jasig.cas.adaptors.ldap.services.DefaultLdapServiceMapper"/>
>
>
> Maven builds the package with no errors, but when we go to start up Tomcat
> this is what we see:
>
> INFO: Starting Servlet Engine: Apache Tomcat/7.0.54
> Aug 04, 2014 1:06:50 PM org.apache.catalina.startup.HostConfig deployWAR
> INFO: Deploying web application archive
> /opt/apache-tomcat-7.0.54/webapps/cas.war
> 2014-08-04 13:06:57,222 ERROR
> [org.springframework.web.context.ContextLoader] - <Context initialization
> failed>
> org.springframework.beans.factory.BeanCreationException: Error creating
> bean with name 'servicesManager' defined in ServletContext resource
> [/WEB-INF/spring-configuration/applicationContext.xml]: Cannot resolve
> reference to bean 'serviceRegistryDao' while setting constructor argument;
> nested exception is
> org.springframework.beans.factory.BeanCreationException: Error creating
> bean with name 'serviceRegistryDao' defined in ServletContext resource
> [/WEB-INF/deployerConfigContext.xml]: Initialization of bean failed; nested
> exception is org.springframework.beans.factory.BeanInitializationException:
> Bean state is invalid: searchFilter - may not be null; loadFilter - may not
> be null
>     at
> org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveReference(BeanDefinitionValueResolver.java:326)
>     at
> org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveValueIfNecessary(BeanDefinitionValueResolver.java:107)
>     at
> org.springframework.beans.factory.support.ConstructorResolver.resolveConstructorArguments(ConstructorResolver.java:637)
>     at
> org.springframework.beans.factory.support.ConstructorResolver.autowireConstructor(ConstructorResolver.java:148)
>     at
> org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireConstructor(AbstractAutowireCapableBeanFactory.java:1075)
>     at
> org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:979)
>     at
> org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:487)
>     at
> org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:458)
>     at
> org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:296)
>     at
> org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:223)
>     at
> org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:293)
>     at
> org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:194)
>     at
> org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:628)
>     at
> org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:932)
>     at
> org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:479)
>     at
> org.springframework.web.context.ContextLoader.configureAndRefreshWebApplicationContext(ContextLoader.java:389)
>     at
> org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:294)
>     at
> org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:112)
>     at
> org.jasig.cas.web.init.SafeContextLoaderListener.contextInitialized(SafeContextLoaderListener.java:75)
>     at
> org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4973)
>     at
> org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5467)
>     at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
>     at
> org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:901)
>     at
> org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:877)
>     at
> org.apache.catalina.core.StandardHost.addChild(StandardHost.java:632)
>     at
> org.apache.catalina.startup.HostConfig.deployWAR(HostConfig.java:1083)
>     at
> org.apache.catalina.startup.HostConfig$DeployWar.run(HostConfig.java:1880)
>     at
> java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
>     at java.util.concurrent.FutureTask.run(FutureTask.java:266)
>     at
> 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)
> Caused by: org.springframework.beans.factory.BeanCreationException: Error
> creating bean with name 'serviceRegistryDao' defined in ServletContext
> resource [/WEB-INF/deployerConfigContext.xml]: Initialization of bean
> failed; nested exception is
> org.springframework.beans.factory.BeanInitializationException: Bean state
> is invalid: searchFilter - may not be null; loadFilter - may not be null
>     at
> org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:529)
>     at
> org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:458)
>     at
> org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:296)
>     at
> org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:223)
>     at
> org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:293)
>     at
> org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:194)
>     at
> org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveReference(BeanDefinitionValueResolver.java:320)
>     ... 31 more
> Caused by: org.springframework.beans.factory.BeanInitializationException:
> Bean state is invalid: searchFilter - may not be null; loadFilter - may not
> be null
>     at
> org.springframework.validation.beanvalidation.BeanValidationPostProcessor.doValidate(BeanValidationPostProcessor.java:113)
>     at
> org.springframework.validation.beanvalidation.BeanValidationPostProcessor.postProcessAfterInitialization(BeanValidationPostProcessor.java:91)
>     at
> org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyBeanPostProcessorsAfterInitialization(AbstractAutowireCapableBeanFactory.java:409)
>     at
> org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1518)
>     at
> org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:521)
>     ... 37 more
> 2014-08-04 13:06:57,231 ERROR
> [org.jasig.cas.web.init.SafeContextLoaderListener] -
> <SafeContextLoaderListener:
> The Spring ContextLoaderListener we wrap threw on contextInitialized.
> But for our having caught this error, the web application context would
> not have initialized.>
> org.springframework.beans.factory.BeanCreationException: Error creating
> bean with name 'servicesManager' defined in ServletContext resource
> [/WEB-INF/spring-configuration/applicationContext.xml]: Cannot resolve
> reference to bean 'serviceRegistryDao' while setting constructor argument;
> nested exception is
> org.springframework.beans.factory.BeanCreationException: Error creating
> bean with name 'serviceRegistryDao' defined in ServletContext resource
> [/WEB-INF/deployerConfigContext.xml]: Initialization of bean failed; nested
> exception is org.springframework.beans.factory.BeanInitializationException:
> Bean state is invalid: searchFilter - may not be null; loadFilter - may not
> be null
>     at
> org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveReference(BeanDefinitionValueResolver.java:326)
>     at
> org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveValueIfNecessary(BeanDefinitionValueResolver.java:107)
>     at
> org.springframework.beans.factory.support.ConstructorResolver.resolveConstructorArguments(ConstructorResolver.java:637)
>     at
> org.springframework.beans.factory.support.ConstructorResolver.autowireConstructor(ConstructorResolver.java:148)
>     at
> org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireConstructor(AbstractAutowireCapableBeanFactory.java:1075)
>     at
> org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:979)
>     at
> org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:487)
>     at
> org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:458)
>     at
> org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:296)
>     at
> org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:223)
>     at
> org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:293)
>     at
> org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:194)
>     at
> org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:628)
>     at
> org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:932)
>     at
> org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:479)
>     at
> org.springframework.web.context.ContextLoader.configureAndRefreshWebApplicationContext(ContextLoader.java:389)
>     at
> org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:294)
>     at
> org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:112)
>     at
> org.jasig.cas.web.init.SafeContextLoaderListener.contextInitialized(SafeContextLoaderListener.java:75)
>     at
> org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4973)
>     at
> org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5467)
>     at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
>     at
> org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:901)
>     at
> org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:877)
>     at
> org.apache.catalina.core.StandardHost.addChild(StandardHost.java:632)
>     at
> org.apache.catalina.startup.HostConfig.deployWAR(HostConfig.java:1083)
>     at
> org.apache.catalina.startup.HostConfig$DeployWar.run(HostConfig.java:1880)
>     at
> java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
>     at java.util.concurrent.FutureTask.run(FutureTask.java:266)
>     at
> 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)
> Caused by: org.springframework.beans.factory.BeanCreationException: Error
> creating bean with name 'serviceRegistryDao' defined in ServletContext
> resource [/WEB-INF/deployerConfigContext.xml]: Initialization of bean
> failed; nested exception is
> org.springframework.beans.factory.BeanInitializationException: Bean state
> is invalid: searchFilter - may not be null; loadFilter - may not be null
>     at
> org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:529)
>     at
> org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:458)
>     at
> org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:296)
>     at
> org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:223)
>     at
> org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:293)
>     at
> org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:194)
>     at
> org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveReference(BeanDefinitionValueResolver.java:320)
>     ... 31 more
> Caused by: org.springframework.beans.factory.BeanInitializationException:
> Bean state is invalid: searchFilter - may not be null; loadFilter - may not
> be null
>     at
> org.springframework.validation.beanvalidation.BeanValidationPostProcessor.doValidate(BeanValidationPostProcessor.java:113)
>     at
> org.springframework.validation.beanvalidation.BeanValidationPostProcessor.postProcessAfterInitialization(BeanValidationPostProcessor.java:91)
>     at
> org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyBeanPostProcessorsAfterInitialization(AbstractAutowireCapableBeanFactory.java:409)
>     at
> org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1518)
>     at
> org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:521)
>     ... 37 more
> Aug 04, 2014 1:06:57 PM org.apache.catalina.core.StandardContext
> startInternal
> SEVERE: Error filterStart
> Aug 04, 2014 1:06:57 PM org.apache.catalina.core.StandardContext
> startInternal
> SEVERE: Context [/cas] startup failed due to previous errors
>
> as far as we can tell, there are no missing dependencies since Maven
> builds the project without error.
>
> If anyone who has gotten this working (under 3.5.2 or 4.0.0) can give us
> some pointers on what we are missing, we would appreciate it.
>
> --
> You are currently subscribed to [email protected] as: 
> [email protected]
> To unsubscribe, change settings or access archives, see 
> http://www.ja-sig.org/wiki/display/JSG/cas-user
>
>

-- 
You are currently subscribed to [email protected] as: 
[email protected]
To unsubscribe, change settings or access archives, see 
http://www.ja-sig.org/wiki/display/JSG/cas-user

Reply via email to