-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 I'm running into a frustrating installation/integration problem that, despite quite a bit of mailing list and Google searching, seems to elude my explanation.
On a RHEL 5 installation, with tomcat and java installed [1], I got the demo cas.war deployed and it works great using the username=password authentication. However, when I follow the instructions for configuring the auth to use LDAP, I'm given an enormous number of thrown exceptions even when just loading the login page. org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'centralAuthenticationService' defined in ServletContext resource [/WEB-INF/applicationContext.xml]: Cannot resolve reference to bean 'authenticationManager' while setting bean property 'authenticationManager'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'authenticationManager' defined in ServletContext resource [/WEB-INF/deployerConfigContext.xml]: Cannot create inner bean 'org.jasig.cas.adaptors.ldap.FastBindLdapAuthenticationHandler#48c4fa0' of type [org.jasig.cas.adaptors.ldap.FastBindLdapAuthenticationHandler] while setting bean property 'authenticationHandlers' with key [1]; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'org.jasig.cas.adaptors.ldap.FastBindLdapAuthenticationHandler#48c4fa0' defined in ServletContext resource [/WEB-INF/deployerConfigContext.xml]: Cannot resolve reference to bean 'contextSource' while setting bean property 'contextSource'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'contextSource' defined in ServletContext resource [/WEB-INF/deployerConfigContext.xml]: Instantiation of bean failed; nested exception is java.lang.NoClassDefFoundError: com.sun.jndi.ldap.LdapCtxFactory I'm no java guru, and I'm obviously new to CAS, so I'm not sure exactly what's going on. The catalina logging doesn't seem to shed any light either: ERROR [org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/cas].[cas]] - <Servlet.service() for servlet cas threw exception> org.springframework.context.ApplicationContextException: Unable to initialize application context. at org.jasig.cas.web.init.SafeDispatcherServlet.service(SafeDispatcherServlet.java:117) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(catalina-5.5.23.jar.so) It would seem to me that the original problem is that the LdapCtxFactory class seems to be missing. Can this really be? Is there some other testing I could do? The other information that might be useful. CAS Version: 3.0.7 RHEL Version: 5.0 (plus current patches) Tomcat Version: 5.5 Java Version: 1.4.2 Spring LDAP Version: 1.1.2 My localPlugins directory contains: -rw-r--r-- 1 root root 13431 May 17 11:09 cas-server-ldap-3.0.7.jar -rw-r--r-- 1 root root 559366 May 17 12:57 commons-collections.jar -rw-r--r-- 1 root root 207723 May 17 12:57 commons-lang.jar -rw-r--r-- 1 root root 38015 May 17 12:57 commons-logging.jar -rw-r--r-- 1 root root 49437 May 17 12:57 ldapbp.jar -rw-r--r-- 1 root root 373325 May 17 12:57 spring-beans.jar -rw-r--r-- 1 root root 122078 May 17 12:57 spring-context.jar -rw-r--r-- 1 root root 172430 May 17 12:57 spring-core.jar -rw-r--r-- 1 root root 123817 May 17 12:57 spring-dao.jar -rw-r--r-- 1 root root 110756 May 17 12:57 spring-ldap-1.1.2.jar The resulting cas.war is built successfully. I've also configured the WEB-INF/deployerConfigContext.xml (here w/o comments) and built this into the custom cas.war: <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans.dtd"> <beans> <bean id="authenticationManager" class="org.jasig.cas.authentication.AuthenticationManagerImpl"> <property name="credentialsToPrincipalResolvers"> <list> <bean class="org.jasig.cas.authentication.principal.UsernamePasswordCredentialsToPrincipalResolver"/> <bean class="org.jasig.cas.authentication.principal.HttpBasedServiceCredentialsToPrincipalResolver"/> </list> </property> <property name="authenticationHandlers"> <list> <bean class="org.jasig.cas.authentication.handler.support.HttpBasedServiceCredentialsAuthenticationHandler"> <property name="httpClient" ref="httpClient"/> </bean> <bean class="org.jasig.cas.adaptors.ldap.FastBindLdapAuthenticationHandler"> <property name="filter" value="uid=%u,ou=people,dc=goshen,dc=edu"/> <property name="contextSource" ref="contextSource"/> </bean> </list> </property> </bean> <bean id="contextSource" class="org.jasig.cas.adaptors.ldap.util.AuthenticatedLdapContextSource"> <property name="urls"> <list> <value>ldap://openldap-repl.goshen.edu/</value> <value>ldap://openldap.goshen.edu/</value> </list> </property> </bean> </beans> I'm really stumped on this one. If anyone can help, I'd greatly appreciate it. Thanks in advance. [1] tomcat5-servlet-2.4-api-5.5.23-0jpp.1.0.3.el5 tomcat5-5.5.23-0jpp.1.0.3.el5 tomcat5-admin-webapps-5.5.23-0jpp.1.0.3.el5 java-1.4.2-gcj-compat-1.4.2.0-40jpp.112 java-1.4.2-gcj-compat-devel-1.4.2.0-40jpp.112 tomcat5-jasper-5.5.23-0jpp.1.0.3.el5 tomcat5-jsp-2.0-api-5.5.23-0jpp.1.0.3.el5 tomcat5-common-lib-5.5.23-0jpp.1.0.3.el5 tomcat5-server-lib-5.5.23-0jpp.1.0.3.el5 - -- Paul Ortman PGP Key: 55602C81 - -- -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.6 (GNU/Linux) iD8DBQFGTadDfw8KGlVgLIERAoUdAJ92/kjstKdVw9VXfbCC0TYAL0T9pACaAr0G 32mDtyMaW+vCbYHPkuwLLHs= =5ujM -----END PGP SIGNATURE----- _______________________________________________ Yale CAS mailing list cas@tp.its.yale.edu http://tp.its.yale.edu/mailman/listinfo/cas