Good morning to all,

Quick question for the group.  I'm attempting to deploy CAS with radius
authentication and am running into a little trouble.

The environment consists of the following:

Redhat ES 6.5
Cas Server 4.0
Apache Tomcat 7
Java 1.6

I renamed the cas-server-uber-webapp-4.0.0.war to cas.war and moved it to
/opt/apache-tomcat/webapps and made sure it had the appropriate
permissions, after which I restarted tomcat to ensure that the war file was
deployed.

I then modified <tomcat root>/cas/WEB-INF/deployerConfigContext.xml as per
the documentation for cas server 4 in the wiki:

https://wiki.jasig.org/display/CASUM/RADIUS

Restarting tomcat, I see the following errors in the catalina.out log:

2014-05-28 08:18:09,911 ERROR
[org.springframework.web.context.ContextLoader] - <Context initialization
failed>

org.springframework.beans.factory.BeanCreationException: Error creating
bean with name 'centralAuthenticationService' defined in ServletContext
resource [/WEB-INF/spring-configuration/applicationContext.xml]: Cannot
resolve reference to bean 'authenticationManager' while setting constructor
argument; nested exception is
org.springframework.beans.factory.BeanCreationException: Error creating
bean with name 'authenticationManager' defined in ServletContext resource
[/WEB-INF/deployerConfigContext.xml]: Cannot resolve reference to bean
'radiusAuthenticationHandler' while setting constructor argument; nested
exception is org.springframework.beans.factory.BeanCreationException: Error
creating bean with name 'radiusAuthenticationHandler' defined in
ServletContext resource [/WEB-INF/deployerConfigContext.xml]: Cannot
resolve reference to bean 'radiusServer1' while setting bean property
'servers' with key [0]; nested exception is
org.springframework.beans.factory.BeanCreationException: Error creating
bean with name 'radiusServer1' defined in ServletContext resource
[/WEB-INF/deployerConfigContext.xml]: Could not resolve matching
constructor (hint: specify index/type/name arguments for simple parameters
to avoid type ambiguities)


<snip>


Caused by: org.springframework.beans.factory.BeanCreationException: Error
creating bean with name 'authenticationManager' defined in ServletContext
resource [/WEB-INF/deployerConfigContext.xml]: Cannot resolve reference to
bean 'radiusAuthenticationHandler' while setting constructor argument;
nested exception is
org.springframework.beans.factory.BeanCreationException: Error creating
bean with name 'radiusAuthenticationHandler' defined in ServletContext
resource [/WEB-INF/deployerConfigContext.xml]: Cannot resolve reference to
bean 'radiusServer1' while setting bean property 'servers' with key [0];
nested exception is
org.springframework.beans.factory.BeanCreationException: Error creating
bean with name 'radiusServer1' defined in ServletContext resource
[/WEB-INF/deployerConfigContext.xml]: Could not resolve matching
constructor (hint: specify index/type/name arguments for simple parameters
to avoid type ambiguities)


<snip>


Caused by: org.springframework.beans.factory.BeanCreationException: Error
creating bean with name 'radiusAuthenticationHandler' defined in
ServletContext resource [/WEB-INF/deployerConfigContext.xml]: Cannot
resolve reference to bean 'radiusServer1' while setting bean property
'servers' with key [0]; nested exception is
org.springframework.beans.factory.BeanCreationException: Error creating
bean with name 'radiusServer1' defined in ServletContext resource
[/WEB-INF/deployerConfigContext.xml]: Could not resolve matching
constructor (hint: specify index/type/name arguments for simple parameters
to avoid type ambiguities)


<snip>


Caused by: org.springframework.beans.factory.BeanCreationException: Error
creating bean with name 'radiusServer1' defined in ServletContext resource
[/WEB-INF/deployerConfigContext.xml]: Could not resolve matching
constructor (hint: specify index/type/name arguments for simple parameters
to avoid type ambiguities)



My deployerConfigContext.xml consists of the following [changes], the rest
was left as-is:


<bean id="authenticationManager"
class="org.jasig.cas.authentication.PolicyBasedAuthenticationManager">

        <constructor-arg>

            <map>

                <!--

                   | IMPORTANT

                   | Every handler requires a unique name.

                   | If more than one instance of the same handler class is
configured, you must explicitly

                   | set its name to something other than its default name
(typically the simple class name).

                   -->

                <!--

                <entry key-ref="proxyAuthenticationHandler"
value-ref="proxyPrincipalResolver" />

                <entry key-ref="primaryAuthenticationHandler"
value-ref="primaryPrincipalResolver" />

                -->

                <entry key-ref="radiusAuthenticationHandler"
value-ref="primaryPrincipalResolver" />

            </map>

        </constructor-arg>

        <property name="authenticationPolicy">

            <bean
class="org.jasig.cas.authentication.AnyAuthenticationPolicy" />

        </property>

    </bean>



<!-- RAP 05.27.14 -->

    <bean id="radiusAuthenticationHandler"


class="org.jasig.cas.adaptors.radius.authentication.handler.support.RadiusAuthenticationHandler">

        <property

                name="servers">

                <list>

                        <ref local="radiusServer1" />

                        <ref local="radiusServer2" />

                </list>

        </property>

        <property

                name="failoverOnException"

                value="true" />

    </bean>



    <bean id="radiusServer1"

        class="org.jasig.cas.adaptors.radius.JRadiusServerImpl"

        c:protocol="PAP"

        c:clientFactory-ref="radiusClientFactory1"

        c:retries="3" />



    <bean id="radiusServer2"

        class="org.jasig.cas.adaptors.radius.JRadiusServerImpl"

        c:protocol="PAP"

        c:clientFactory-ref="radiusClientFactory2" />



    <bean id="radiusClientFactory1"

        class="org.jasig.cas.adaptors.radius.RadiusClientFactory"

        p:inetAddress="rad1.tld.org"

        p:sharedSecret="secret"

        p:authenticationPort="1812" />



    <bean id="radiusClientFactory2"

        class="org.jasig.cas.adaptors.radius.RadiusClientFactory"

        p:inetAddress="rad2.tld.org"

        p:sharedSecret="secret"

        p:authenticationPort="1812" />



<!-- END RAP changes -->


Can anyone tell me what I'm doing wrong here?


Thanks in advance

Reuben A. Popp

-- 
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