You commented out the AttributeRepository which is clearly needed: *Error creating bean with name 'addRegisteredServiceSimpleFormController' defined in ServletContext resource [/WEB-INF/cas-servlet.xml]: Cannot resolve reference to bean 'attributeRepository' while setting constructor argument; nested exception is org.springframework.beans.factory.NoSuchBeanDefinitionException: No bean named 'attributeRepository' is defined*
On Thu, Mar 27, 2008 at 10:23 AM, Ariel Antigua <[EMAIL PROTECTED]> wrote: > Hello CAS people! > > I`m trying to configure CAS to show the product to my boss at the > university where i work. > > After reading http://www.ja-sig.org/wiki/display/CASUM/Demo i installed > all the software need to make the demo. now i`m editing > deployerConfigContext.xml to make CAS connect to our Windows Active > Directory, after much reading (counting that this is the first time i work > with Tomcat and all this java things.) i was capable of avoid all errors > coming from change into deployerConfigContext.xml, but now is the turn of > cas-servlet.xml, i don't know where to look to solve this errors (at least > CAS start and told me the error in the main page.). > > the error coming from https://cas:8443/cas/ > > CAS is Unavailable > > * There was a fatal error initializing the CAS application context. This > is almost always because of an error in the Spring bean configuration files. > Are the files valid XML? Do the beans they refer to all exist? > > Before placing CAS in production, you should change this page to present a > UI appropriate for the case where the CAS web application is fundamentally > broken. Perhaps "Sorry, CAS is currently unavailable." with some links to > your user support information. * > > * The Throwable representing the fatal error has been logged by the > SafeDispatcherServlet via Commons Logging, via ServletContext logging, and > to System.err. * > > * The Throwable encountered at dispatcher servlet initialization was: > > org.springframework.beans.factory.BeanCreationException: Error creating > bean with name 'handlerMappingC' defined in ServletContext resource > [/WEB-INF/cas-servlet.xml]: Initialization of bean failed; nested > exception is org.springframework.beans.factory.BeanCreationException: > Error creating bean with name 'addRegisteredServiceSimpleFormController' > defined in ServletContext resource [/WEB-INF/cas-servlet.xml]: Cannot > resolve reference to bean 'attributeRepository' while setting constructor > argument; nested exception is > org.springframework.beans.factory.NoSuchBeanDefinitionException: No bean > named 'attributeRepository' is defined* > > > > > since i didnt change anything in cas-servlet.xml i`m only pasting the > deployerConfigContext.xml file. > > > > <?xml version="1.0" encoding="UTF-8"?> > <!-- > | deployerConfigContext.xml centralizes into one file some of the > declarative configuration that > | all CAS deployers will need to modify. > | > | This file declares some of the Spring-managed JavaBeans that make up > a CAS deployment. > | The beans declared in this file are instantiated at context > initialization time by the Spring > | ContextLoaderListener declared in web.xml. It finds this file > because this > | file is among those declared in the context parameter > "contextConfigLocation". > | > | By far the most common change you will need to make in this file is > to change the last bean > | declaration to replace the default > SimpleTestUsernamePasswordAuthenticationHandler with > | one implementing your approach for authenticating usernames and > passwords. > +--> > <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" > xsi:schemaLocation="http://www.springframework.org/schema/beans > http://www.springframework.org/schema/beans/spring-beans-2.0.xsd"> > <!-- > | This bean declares our AuthenticationManager. The > CentralAuthenticationService service bean > | declared in applicationContext.xml picks up this > AuthenticationManager by reference to its id, > | "authenticationManager". Most deployers will be able to use the > default AuthenticationManager > | implementation and so do not need to change the class of this > bean. We include the whole > | AuthenticationManager here in the userConfigContext.xml so that > you can see the things you will > | need to change in context. > +--> > <bean id="authenticationManager" > class="org.jasig.cas.authentication.AuthenticationManagerImpl"> > <!-- > | This is the List of CredentialToPrincipalResolvers that > identify what Principal is trying to authenticate. > | The AuthenticationManagerImpl considers them in order, > finding a CredentialToPrincipalResolver which > | supports the presented credentials. > | > | AuthenticationManagerImpl uses these resolvers for two > purposes. First, it uses them to identify the Principal > | attempting to authenticate to CAS /login . In the default > configuration, it is the DefaultCredentialsToPrincipalResolver > | that fills this role. If you are using some other kind of > credentials than UsernamePasswordCredentials, you will need to replace > | DefaultCredentialsToPrincipalResolver with a > CredentialsToPrincipalResolver that supports the credentials you are > | using. > | > | Second, AuthenticationManagerImpl uses these resolvers to > identify a service requesting a proxy granting ticket. > | In the default configuration, it is the > HttpBasedServiceCredentialsToPrincipalResolver that serves this purpose. > | You will need to change this list if you are identifying > services by something more or other than their callback URL. > +--> > <property name="credentialsToPrincipalResolvers"> > <list> > <!-- > | UsernamePasswordCredentialsToPrincipalResolver > supports the UsernamePasswordCredentials that we use for /login > | by default and produces SimplePrincipal instances > conveying the username from the credentials. > | > | If you've changed your LoginFormAction to use > credentials other than UsernamePasswordCredentials then you will also > | need to change this bean declaration (or add > additional declarations) to declare a CredentialsToPrincipalResolver that > supports the > | Credentials you are using. > +--> > <bean > class=" > org.jasig.cas.authentication.principal.UsernamePasswordCredentialsToPrincipalResolver" > /> > <!-- > | HttpBasedServiceCredentialsToPrincipalResolver > supports HttpBasedCredentials. It supports the CAS 2.0 approach of > | authenticating services by SSL callback, extracting > the callback URL from the Credentials and representing it as a > | SimpleService identified by that callback URL. > | > | If you are representing services by something more > or other than an HTTPS URL whereat they are able to > | receive a proxy callback, you will need to change > this bean declaration (or add additional declarations). > +--> > <bean > class=" > org.jasig.cas.authentication.principal.HttpBasedServiceCredentialsToPrincipalResolver" > /> > </list> > </property> > > <!-- > | Whereas CredentialsToPrincipalResolvers identify who it is > some Credentials might authenticate, > | AuthenticationHandlers actually authenticate credentials. > Here we declare the AuthenticationHandlers that > | authenticate the Principals that the > CredentialsToPrincipalResolvers identified. CAS will try these handlers in > turn > | until it finds one that both supports the Credentials > presented and succeeds in authenticating. > +--> > <property name="authenticationHandlers"> > <list> > <!-- > | This is the authentication handler that > authenticates services by means of callback via SSL, thereby validating > | a server side SSL certificate. > +--> > <bean class=" > org.jasig.cas.authentication.handler.support.HttpBasedServiceCredentialsAuthenticationHandler > " > p:httpClient-ref="httpClient" /> > <!-- > | This is the authentication handler declaration that > every CAS deployer will need to change before deploying CAS > | into production. The default > SimpleTestUsernamePasswordAuthenticationHandler authenticates > UsernamePasswordCredentials > | where the username equals the password. You will > need to replace this with an AuthenticationHandler that implements your > | local authentication strategy. You might accomplish > this by coding a new such handler and declaring > | edu.someschool.its.cas.MySpecialHandler here, or you > might use one of the handlers provided in the adaptors modules. > +--> > <!-- > removido. > > <bean > class=" > org.jasig.cas.authentication.handler.support.SimpleTestUsernamePasswordAuthenticationHandler" > /> > </list> > </property> > </bean> > --> > > <!-- agregado para ldap --> > > <bean > class=" > org.jasig.cas.adaptors.ldap.BindLdapAuthenticationHandler"> > <property name="filter" value="sAMAccountName=%u" /> > <property name="searchBase" > value="ou=Users,dc=domain,dc=edu,dc=com" /> > <property name="contextSource" ref="contextSource" /> > </bean> > </list> > </property> > </bean> > > <!-- > This bean defines the security roles for the Services Management > application. Simple deployments can use the in-memory version. > More robust deployments will want to use another option, such as the > Jdbc version. > > The name of this should remain "userDetailsService" in order for Acegi > to find it. > > To use this, you should add an entry similar to the following between > the two value tags: > battags=notused,ROLE_ADMIN > > where battags is the username you want to grant access to. You can > put one entry per line. > --> > <bean id="userDetailsService" class=" > org.acegisecurity.userdetails.memory.InMemoryDaoImpl"> > <property name="userMap"> > <value> > > </value> > </property> > </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. > --> > <!-- removido > > <bean id="attributeRepository" > class="org.jasig.services.persondir.support.StubPersonAttributeDao > "> > <property name="backingMap"> > <map> > <entry key="uid" value="uid" /> > <entry key="eduPersonAffiliation" > value="eduPersonAffiliation" /> > <entry key="groupMembership" value="groupMembership" /> > </map> > </property> > </bean> > --> > <!-- agregado --> > > <bean id="contextSource" class=" > org.jasig.cas.adaptors.ldap.util.AuthenticatedLdapContextSource"> > <property name="password" value="password" /> > <property name="pooled" value="true" /> > <property name="urls"> > <list> > <value>ldap://srv01</value> > <value>ldap://srv02</value> > </list> > </property> > <property name="userName" value="ldapuser" /> > <property name="baseEnvironmentProperties"> > <map> > > <entry> > <key><value>java.naming.referral</value></key> > <value>follow</value> > </entry> > > </map> > </property> > </bean> > > <!-- > 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" /> > </beans> > > > > -- > Ariel Antigua > ariel [EMAIL PROTECTED] BSDlatino.org > aantigua [EMAIL PROTECTED] OnClick.com.do > http://ariel.BSDlatino.org - ariel weblog. > http://www.OnClick.com.do > http://www.BSDlatino.org > _______________________________________________ > Yale CAS mailing list > [email protected] > http://tp.its.yale.edu/mailman/listinfo/cas > > -- -Scott Battaglia PGP Public Key Id: 0x383733AA LinkedIn: http://www.linkedin.com/in/scottbattaglia
_______________________________________________ Yale CAS mailing list [email protected] http://tp.its.yale.edu/mailman/listinfo/cas
