Hello, I also forgot to mention I am using cas 4.0.0 and debian 7.0 as OS.
Regards On Thu, Nov 19, 2015 at 3:04 PM, Lutfi Oduncuoglu <[email protected] > wrote: > Hello, > > I am just learning to use CAS and I have a problem about ldap connection. > In my test environment there is no problem, I could manage to use cas with > mvn without problem. However in another environment I got the error, > > org.springframework.beans.factory.CannotLoadBeanClassException: Cannot > find class [org.jasig.cas.adaptors.ldap.BindLdapAuthenticationHandler] for > bean with name > 'org.jasig.cas.adaptors.ldap.BindLdapAuthenticationHandler#0' defined in > URL [file:src/main/webapp/WEB-INF/deployerConfigContext.xml]; nested > exception is java.lang.ClassNotFoundException: > org.jasig.cas.adaptors.ldap.BindLdapAuthenticationHandler > > > I added the cas-server-ldap-support to pom.xml. and my deployerconfig.xml > file is below I've also attached the file. What may be the problem here? I > am really stuck > > Thanks > > > <?xml version="1.0" encoding="UTF-8"?> > > <beans xmlns="http://www.springframework.org/schema/beans" > xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" > xmlns:p="http://www.springframework.org/schema/p" > xmlns:c="http://www.springframework.org/schema/c" > xmlns:tx="http://www.springframework.org/schema/tx" > xmlns:util="http://www.springframework.org/schema/util" > xmlns:sec="http://www.springframework.org/schema/security" > xsi:schemaLocation="http://www.springframework.org/schema/beans > http://www.springframework.org/schema/beans/spring-beans-3.2.xsd > http://www.springframework.org/schema/tx > http://www.springframework.org/schema/tx/spring-tx-3.2.xsd > http://www.springframework.org/schema/security > http://www.springframework.org/schema/security/spring-security-3.2.xsd > http://www.springframework.org/schema/util > http://www.springframework.org/schema/util/spring-util.xsd"> > > <bean id="authenticationManager" > class="org.jasig.cas.authentication.PolicyBasedAuthenticationManager"> > <constructor-arg> > <map> > <entry key-ref="ldapAuthenticationHandler" > value-ref="usernamePasswordCredentialsResolver" /> > </map> > </constructor-arg> > </bean> > <bean id="ldapAuthenticationHandler" > class="org.jasig.cas.authentication.LdapAuthenticationHandler" > p:principalIdAttribute="uid"> > <constructor-arg ref="authenticator" /> > <property name="principalAttributeMap"> > <map> > <entry key="mail" value="mail" /> > <entry key="cn" value="cn" /> > <entry key="uid" value="uid" /> > </map> > </property> > </bean> > > > > <bean class="org.jasig.cas.adaptors.ldap.BindLdapAuthenticationHandler" > p:filter="mail=%u" > p:searchBase="ou=users,dc=ds,dc=gov,dc=tr" > p:contextSource-ref="contextSource" /> > > <bean id="authenticator" class="org.ldaptive.auth.Authenticator" > c:resolver-ref="pooledSearchDnResolver" > c:handler-ref="pooledBindHandler" /> > > <bean id="connectionConfig" class="org.ldaptive.ConnectionConfig" > p:ldapUrl="ldap://localhost:389" > p:connectTimeout="3000" > p:useStartTLS="false" > p:connectionInitializer-ref="bindConnectionInitializer"/> > > <bean id="bindConnectionInitializer" > class="org.ldaptive.BindConnectionInitializer" > p:bindDn="cn=admin,dc=ds,dc=gov,dc=tr"> > <property name="bindCredential"> > <bean class="org.ldaptive.Credential" c:password="qwerty123" /> > </property> > </bean> > > <bean id="ldapPoolConfig" class="org.ldaptive.pool.PoolConfig" > p:minPoolSize="3" > p:maxPoolSize="10" > p:validateOnCheckOut="true" > p:validatePeriodically="false" > p:validatePeriod="300" /> > > <bean id="pruneStrategy" class="org.ldaptive.pool.IdlePruneStrategy" > p:prunePeriod="300" > p:idleTime="600" /> > > <bean id="searchValidator" class="org.ldaptive.pool.SearchValidator" /> > > <bean id="connectionPool" > class="org.ldaptive.pool.BlockingConnectionPool" > init-method="initialize" > p:poolConfig-ref="ldapPoolConfig" > p:blockWaitTime="3000" > p:validator-ref="searchValidator" > p:pruneStrategy-ref="pruneStrategy" > p:connectionFactory-ref="connectionFactory"/> > > <bean id="pooledSearchDnResolver" > class="org.ldaptive.auth.PooledSearchDnResolver" > p:baseDn=",ou=users,dc=ds,dc=gov,dc=tr" > p:subtreeSearch="true" > p:allowMultipleDns="false" > p:connectionFactory-ref="pooledConnectionFactory" > p:userFilter="uid={user}" /> > > > <bean id="pooledBindHandler" > class="org.ldaptive.auth.PooledBindAuthenticationHandler" > p:connectionFactory-ref="pooledConnectionFactory" /> > > <bean id="connectionFactory" > class="org.ldaptive.DefaultConnectionFactory" > p:connectionConfig-ref="connectionConfig" /> > > <bean id="pooledConnectionFactory" > class="org.ldaptive.pool.PooledConnectionFactory" > p:connectionPool-ref="connectionPool" /> > > <!-- > | Credential-to-principal resolver beans > --> > <bean id="usernamePasswordCredentialsResolver" > > class="org.jasig.cas.authentication.principal.BasicPrincipalResolver" /> > > <bean id="httpBasedCredentialsResolver" > > class="org.jasig.cas.authentication.principal.BasicPrincipalResolver" /> > > <!-- Required for proxy ticket mechanism. --> > <bean id="proxyAuthenticationHandler" > > > class="org.jasig.cas.authentication.handler.support.HttpBasedServiceCredentialsAuthenticationHandler" > p:httpClient-ref="httpClient" /> > <bean id="primaryAuthenticationHandler" > class="org.jasig.cas.authentication.AcceptUsersAuthenticationHandler"> > <property name="users"> > <map> > <entry key="casuser" value="Mellon"/> > </map> > </property> > </bean> > <!-- Required for proxy ticket mechanism --> > <bean id="proxyPrincipalResolver" > class="org.jasig.cas.authentication.principal.BasicPrincipalResolver" /> > <!-- > | Resolves a principal from a credential using an attribute > repository that is configured to resolve > | against a deployer-specific store (e.g. LDAP). > --> > <bean id="primaryPrincipalResolver" > > > class="org.jasig.cas.authentication.principal.PersonDirectoryPrincipalResolver" > > > <property name="attributeRepository" ref="attributeRepository" /> > </bean> > <!-- > Bean that defines the attributes that a service may return. This > example uses the Stub/Mock version. A real implementation > may go against a database or LDAP server. The id should remain > "attributeRepository" though. > +--> > <bean id="attributeRepository" > class="org.jasig.services.persondir.support.StubPersonAttributeDao" > p:backingMap-ref="attrRepoBackingMap" /> > > <util:map id="attrRepoBackingMap"> > <entry key="uid" value="uid" /> > <entry key="eduPersonAffiliation" value="eduPersonAffiliation" /> > <entry key="groupMembership" value="groupMembership" /> > </util:map> > <!-- > Sample, in-memory data store for the ServiceRegistry. A real > implementation > would probably want to replace this with the JPA-backed ServiceRegistry > DAO > The name of this bean should remain "serviceRegistryDao". > +--> > <bean id="serviceRegistryDao" > class="org.jasig.cas.services.InMemoryServiceRegistryDaoImpl" > p:registeredServices-ref="registeredServicesList" /> > > <util:list id="registeredServicesList"> > <bean class="org.jasig.cas.services.RegexRegisteredService" > p:id="0" p:name="HTTP and IMAP" p:description="Allows HTTP(S) > and IMAP(S) protocols" > p:serviceId="^(https?|imaps?)://.*" > p:evaluationOrder="10000001" /> > <!-- > Use the following definition instead of the above to further > restrict access > to services within your domain (including sub domains). > Note that example.com must be replaced with the domain you wish to > permit. > This example also demonstrates the configuration of an attribute > filter > that only allows for attributes whose length is 3. > --> > <!-- > <bean class="org.jasig.cas.services.RegexRegisteredService"> > <property name="id" value="1" /> > <property name="name" value="HTTP and IMAP on example.com" /> > <property name="description" value="Allows HTTP(S) and IMAP(S) > protocols on example.com" /> > <property name="serviceId" > value="^(https?|imaps?)://([A-Za-z0-9_-]+\.)*example\.com/.*" /> > <property name="evaluationOrder" value="0" /> > <property name="attributeFilter"> > <bean > > class="org.jasig.cas.services.support.RegisteredServiceRegexAttributeFilter" > c:regex="^\w{3}$" /> > </property> > </bean> > --> > </util:list> > > <bean id="auditTrailManager" > class="com.github.inspektr.audit.support.Slf4jLoggingAuditTrailManager" /> > > <bean id="healthCheckMonitor" > class="org.jasig.cas.monitor.HealthCheckMonitor" > p:monitors-ref="monitorsList" /> > > <util:list id="monitorsList"> > <bean class="org.jasig.cas.monitor.MemoryMonitor" > p:freeMemoryWarnThreshold="10" /> > <!-- > NOTE > The following ticket registries support SessionMonitor: > * DefaultTicketRegistry > * JpaTicketRegistry > Remove this monitor if you use an unsupported registry. > --> > <bean class="org.jasig.cas.monitor.SessionMonitor" > p:ticketRegistry-ref="ticketRegistry" > p:serviceTicketCountWarnThreshold="5000" > p:sessionCountWarnThreshold="100000" /> > </util:list> > </beans> > > > -- 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
