You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@tapestry.apache.org by Daniel Jue <te...@gmail.com> on 2007/07/02 19:01:03 UTC

[T5] Is there a working Acegi example available?

I am beating my head against a brick wall.

I am trying to get Acegi working (using Spring to configure it).  I
have it working to the point where a secured page (secured in the xml
files, not using any annotations for securing classes) redirects me to
a login page.
If I type in a login/password that is wrong, I get sent to my "Access
Denied" page like I want.
However with a good login, I'm getting unsuccessfully forwarded to my
"Access Denied" page.  The url at the top displays the secure url I
was trying to go to, but the browser displays a 404 error indicating
it can't find the AccessDenied page.

It seems like there are sooo many things that can go wrong with an
Acegi configuration.
I only want form authentication, so the Basic authentication filter
can probably be deleted.

It would be nice to see a complete T5 Acegi application this on the T5
Wiki, first with Spring configuration, since Tapestry-Acegi is not
ported to T5 yet.

<sigh>

Here is my configuration:



	<bean id="filterChainProxy" class="org.acegisecurity.util.FilterChainProxy">
		<property name="filterInvocationDefinitionSource">
	    	<value>
				CONVERT_URL_TO_LOWERCASE_BEFORE_COMPARISON
				PATTERN_TYPE_APACHE_ANT
				/**=httpSessionContextIntegrationFilter,logoutFilter,authenticationProcessingFilter,basicProcessingFilter,rememberMeProcessingFilter,exceptionTranslationFilter,filterInvocationInterceptor
 			</value>
		</property>
	</bean>
	

<bean id="filterInvocationInterceptor"
class="org.acegisecurity.intercept.web.FilterSecurityInterceptor">
      <property name="authenticationManager"><ref
bean="authenticationManager"/></property>
      <property name="accessDecisionManager"><ref
bean="httpRequestAccessDecisionManager"/></property>
      <property name="objectDefinitionSource">
         <value>
			    CONVERT_URL_TO_LOWERCASE_BEFORE_COMPARISON
			    PATTERN_TYPE_APACHE_ANT
			    /start=ROLE_ADMIN
			    /loginsuccess=ROLE_ADMIN
			    /tests/gridpage=ROLE_ADMIN
			    /tests/guess=ROLE_ADMIN
			    /tests/hilo=ROLE_ADMIN
			    /tests/imagepage=ROLE_ADMIN
				/postlogin=ROLE_ANONYMOUS,ROLE_ADMIN
         </value>
      </property>
   </bean>

   <bean id="httpSessionContextIntegrationFilter"
class="org.acegisecurity.context.HttpSessionContextIntegrationFilter">
   </bean>

   <bean id="httpRequestAccessDecisionManager"
class="org.acegisecurity.vote.AffirmativeBased">
      <property name="allowIfAllAbstainDecisions"><value>true</value></property>
      <property name="decisionVoters">
         <list>
            <ref bean="roleVoter"/>
         </list>
      </property>
   </bean>

   <bean id="logoutFilter" class="org.acegisecurity.ui.logout.LogoutFilter">
      <constructor-arg value="/LogoutSuccess"/> <!-- URL redirected to
after logout -->
      <constructor-arg>
         <list>
              <ref bean="rememberMeServices"/>
              <bean
class="org.acegisecurity.ui.logout.SecurityContextLogoutHandler"/>
         </list>
      </constructor-arg>
   </bean>

<bean id="rememberMeAuthenticationProvider"
class="org.acegisecurity.providers.rememberme.RememberMeAuthenticationProvider">
  <property name="key"><value>springRocks</value></property>
</bean>

      <bean id="rememberMeProcessingFilter"
class="org.acegisecurity.ui.rememberme.RememberMeProcessingFilter">
  <property name="authenticationManager" ref="authenticationManager" />
  <property name="rememberMeServices"><ref
bean="rememberMeServices"/></property>
</bean>

<bean id="rememberMeServices"
class="org.acegisecurity.ui.rememberme.TokenBasedRememberMeServices">
  <property name="userDetailsService"><ref
bean="userDetailsService"/></property>
  <property name="key"><value>springRocks</value></property>
</bean>

    <bean id="roleVoter" class="org.acegisecurity.vote.RoleVoter">
        <property name="rolePrefix">
            <value>ROLE_</value>
        </property>
    </bean>

    <bean id="userDetailsService"
class="myapp.security.AuthenticationJdbcDaoImpl">
        <property name="dataSource">
            <ref bean="dataSource"/>
        </property>
        <property name="userInfoObjectTypes">
            <list>
                <value>Admin</value>
                <value>Standard</value>
            </list>
        </property>
    </bean>

	<bean id="dataSource" class="org.springframework.jndi.JndiObjectFactoryBean">
	<property name="resourceRef">
		<value>true</value>
	</property>
	<property name="jndiName">
		<value>java:comp/env/jdbc/MyUserDatabase</value>
	</property>
	</bean>

    <bean id="accessDecisionManager"
class="org.acegisecurity.vote.UnanimousBased">
        <property name="decisionVoters">
            <list>
                <ref bean="roleVoter" />
            </list>
        </property>
    </bean>

	<bean id="authenticationManager"
class="org.acegisecurity.providers.ProviderManager">
		<property name="providers">
			<list>
				<ref bean="daoAuthenticationProvider"/>
				<!--<ref local="anonymousAuthenticationProvider"/>-->
				<ref bean="rememberMeAuthenticationProvider"/>
			</list>
		</property>
	</bean>

	<bean id="authenticationProcessingFilter"
class="org.acegisecurity.ui.webapp.AuthenticationProcessingFilter">
		<property name="filterProcessesUrl" value="/j_acegi_security_check" />
      	<property name="authenticationFailureUrl" value="/AccessDenied" />
		<property name="defaultTargetUrl" value="/" />
		<property name="authenticationManager" ref="authenticationManager" />
		<property name="rememberMeServices" ref="rememberMeServices" />
   </bean>

	<bean id="formAuthenticationEntryPoint"
class="org.acegisecurity.ui.webapp.AuthenticationProcessingFilterEntryPoint">
		<property name="loginFormUrl" value="/tests/comcypozpetroslogin" />
		<property name="forceHttps" value="false" />
	</bean>

   <bean id="basicProcessingFilter"
class="org.acegisecurity.ui.basicauth.BasicProcessingFilter">
      <property name="authenticationManager"><ref
bean="authenticationManager"/></property>
      <property name="authenticationEntryPoint"><ref
bean="basicProcessingFilterEntryPoint"/></property>
   </bean>


   <bean id="basicProcessingFilterEntryPoint"
class="org.acegisecurity.ui.basicauth.BasicProcessingFilterEntryPoint">
      <property name="realmName"><value>Contacts Realm</value></property>
   </bean>

	<bean id="daoAuthenticationProvider"
class="org.acegisecurity.providers.dao.DaoAuthenticationProvider">
  		<property name="userDetailsService">
        	<ref bean="userDetailsService" />
  		</property>
	</bean>

	<bean id="exceptionTranslationFilter"
class="org.acegisecurity.ui.ExceptionTranslationFilter">
		<property name="authenticationEntryPoint">
			<ref bean="formAuthenticationEntryPoint"/>
		</property>
		<property name="accessDeniedHandler">
			<bean class="org.acegisecurity.ui.AccessDeniedHandlerImpl">
				<property name="errorPage" value="/AccessDenied"/>
			</bean>
		</property>
	</bean>

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@tapestry.apache.org
For additional commands, e-mail: users-help@tapestry.apache.org


Re: [T5] Is there a working Acegi example available?

Posted by Thomas Beckmann <th...@freiheit.com>.
Hi,

Am Montag, 2. Juli 2007 20:21 schrieb Daniel Jue:
> Dear List,
>
> I'm sorry, I think I found my problem, and it was a stupid one.  It
> took a 3rd cup of coffee to make it appear.
>
> I wasn't prefixing my Authority strings with "ROLE_"
>
> i.e. my DB had "ADMIN" stored in a field instead of "ROLE_ADMIN"
>
> This still doesn't explain why I wasn't redirected properly to the
> LoginFailure page.
> When I type in the URL for the LoginFailure manually, it works of course.

I have the very same problem with the AccessDeniedHandler but I haven't found 
any answer to that question.
Has there been any progress?

<snip>

Many Thanks

Thomas

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@tapestry.apache.org
For additional commands, e-mail: users-help@tapestry.apache.org


Re: [T5] Is there a working Acegi example available?

Posted by Daniel Jue <te...@gmail.com>.
Thanks Petros, your example is one of a few I've been working with.
My main issue now is where to assign the principal to an ASO, so I
don't have to look it up in the security context all the time.

This is a normal/proper thing to do, right?  In my previous non-Acegi
applications where a user logged in, I stored a user object (that held
all the user details) as an ASO.

Looking up the Acegi principal from the security context all the time
seems like a hassle.

In your example, your "shell" component ends up calling
"getTapestryPrincipal()".

I think what I want to do is have that kind of method called
immediately after a successful login.  Should I redirect to a common
loginsuccess page, or can I do something immediately after the link
gets returned from this function:

private Link getLink() {
		System.out.println("onSuccessFromLoginForm");
		System.out.println("request.getContextPath() "
				+ request.getContextPath());

		Link link = new LinkImpl(response, request.getContextPath(),
				"j_acegi_security_check");
		link.addParameter("j_username", username);
		link.addParameter("j_password", password);

		return link;
	}

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@tapestry.apache.org
For additional commands, e-mail: users-help@tapestry.apache.org


Re: [T5] Is there a working Acegi example available?

Posted by petros <pe...@cypoz.com>.
Daniel, 

I configured using Acegi and Tapestry 5 without any problems but I am still
getting a 404 when a AccessDeniedException is thrown. I explained this
problem in more detail here
http://www.nabble.com/Moving-T4-to-T5-broke-Acegi-tf3845975.html#a10891952

My solution was documented here but I haven't updated the wiki yet
http://www.nabble.com/Tapestry-5-and-Acegi-tf3769520.html#a10886654

Petros



Daniel Jue wrote:
> 
> Dear List,
> 
> I'm sorry, I think I found my problem, and it was a stupid one.  It
> took a 3rd cup of coffee to make it appear.
> 
> I wasn't prefixing my Authority strings with "ROLE_"
> 
> i.e. my DB had "ADMIN" stored in a field instead of "ROLE_ADMIN"
> 
> This still doesn't explain why I wasn't redirected properly to the
> LoginFailure page.
> When I type in the URL for the LoginFailure manually, it works of course.
> 
> Daniel
> 
> 
> 
> On 7/2/07, Daniel Jue <te...@gmail.com> wrote:
>> I am beating my head against a brick wall.
>>
>> I am trying to get Acegi working (using Spring to configure it).  I
>> have it working to the point where a secured page (secured in the xml
>> files, not using any annotations for securing classes) redirects me to
>> a login page.
>> If I type in a login/password that is wrong, I get sent to my "Access
>> Denied" page like I want.
>> However with a good login, I'm getting unsuccessfully forwarded to my
>> "Access Denied" page.  The url at the top displays the secure url I
>> was trying to go to, but the browser displays a 404 error indicating
>> it can't find the AccessDenied page.
>>
>> It seems like there are sooo many things that can go wrong with an
>> Acegi configuration.
>> I only want form authentication, so the Basic authentication filter
>> can probably be deleted.
>>
>> It would be nice to see a complete T5 Acegi application this on the T5
>> Wiki, first with Spring configuration, since Tapestry-Acegi is not
>> ported to T5 yet.
>>
>> <sigh>
>>
>> Here is my configuration:
>>
>>
>>
>>         <bean id="filterChainProxy"
>> class="org.acegisecurity.util.FilterChainProxy">
>>                 <property name="filterInvocationDefinitionSource">
>>                 <value>
>>                                
>> CONVERT_URL_TO_LOWERCASE_BEFORE_COMPARISON
>>                                 PATTERN_TYPE_APACHE_ANT
>>                                
>> /**=httpSessionContextIntegrationFilter,logoutFilter,authenticationProcessingFilter,basicProcessingFilter,rememberMeProcessingFilter,exceptionTranslationFilter,filterInvocationInterceptor
>>                         </value>
>>                 </property>
>>         </bean>
>>
>>
>> <bean id="filterInvocationInterceptor"
>> class="org.acegisecurity.intercept.web.FilterSecurityInterceptor">
>>       <property name="authenticationManager"><ref
>> bean="authenticationManager"/></property>
>>       <property name="accessDecisionManager"><ref
>> bean="httpRequestAccessDecisionManager"/></property>
>>       <property name="objectDefinitionSource">
>>          <value>
>>                             CONVERT_URL_TO_LOWERCASE_BEFORE_COMPARISON
>>                             PATTERN_TYPE_APACHE_ANT
>>                             /start=ROLE_ADMIN
>>                             /loginsuccess=ROLE_ADMIN
>>                             /tests/gridpage=ROLE_ADMIN
>>                             /tests/guess=ROLE_ADMIN
>>                             /tests/hilo=ROLE_ADMIN
>>                             /tests/imagepage=ROLE_ADMIN
>>                                 /postlogin=ROLE_ANONYMOUS,ROLE_ADMIN
>>          </value>
>>       </property>
>>    </bean>
>>
>>    <bean id="httpSessionContextIntegrationFilter"
>> class="org.acegisecurity.context.HttpSessionContextIntegrationFilter">
>>    </bean>
>>
>>    <bean id="httpRequestAccessDecisionManager"
>> class="org.acegisecurity.vote.AffirmativeBased">
>>       <property
>> name="allowIfAllAbstainDecisions"><value>true</value></property>
>>       <property name="decisionVoters">
>>          <list>
>>             <ref bean="roleVoter"/>
>>          </list>
>>       </property>
>>    </bean>
>>
>>    <bean id="logoutFilter"
>> class="org.acegisecurity.ui.logout.LogoutFilter">
>>       <constructor-arg value="/LogoutSuccess"/> <!-- URL redirected to
>> after logout -->
>>       <constructor-arg>
>>          <list>
>>               <ref bean="rememberMeServices"/>
>>               <bean
>> class="org.acegisecurity.ui.logout.SecurityContextLogoutHandler"/>
>>          </list>
>>       </constructor-arg>
>>    </bean>
>>
>> <bean id="rememberMeAuthenticationProvider"
>> class="org.acegisecurity.providers.rememberme.RememberMeAuthenticationProvider">
>>   <property name="key"><value>springRocks</value></property>
>> </bean>
>>
>>       <bean id="rememberMeProcessingFilter"
>> class="org.acegisecurity.ui.rememberme.RememberMeProcessingFilter">
>>   <property name="authenticationManager" ref="authenticationManager" />
>>   <property name="rememberMeServices"><ref
>> bean="rememberMeServices"/></property>
>> </bean>
>>
>> <bean id="rememberMeServices"
>> class="org.acegisecurity.ui.rememberme.TokenBasedRememberMeServices">
>>   <property name="userDetailsService"><ref
>> bean="userDetailsService"/></property>
>>   <property name="key"><value>springRocks</value></property>
>> </bean>
>>
>>     <bean id="roleVoter" class="org.acegisecurity.vote.RoleVoter">
>>         <property name="rolePrefix">
>>             <value>ROLE_</value>
>>         </property>
>>     </bean>
>>
>>     <bean id="userDetailsService"
>> class="myapp.security.AuthenticationJdbcDaoImpl">
>>         <property name="dataSource">
>>             <ref bean="dataSource"/>
>>         </property>
>>         <property name="userInfoObjectTypes">
>>             <list>
>>                 <value>Admin</value>
>>                 <value>Standard</value>
>>             </list>
>>         </property>
>>     </bean>
>>
>>         <bean id="dataSource"
>> class="org.springframework.jndi.JndiObjectFactoryBean">
>>         <property name="resourceRef">
>>                 <value>true</value>
>>         </property>
>>         <property name="jndiName">
>>                 <value>java:comp/env/jdbc/MyUserDatabase</value>
>>         </property>
>>         </bean>
>>
>>     <bean id="accessDecisionManager"
>> class="org.acegisecurity.vote.UnanimousBased">
>>         <property name="decisionVoters">
>>             <list>
>>                 <ref bean="roleVoter" />
>>             </list>
>>         </property>
>>     </bean>
>>
>>         <bean id="authenticationManager"
>> class="org.acegisecurity.providers.ProviderManager">
>>                 <property name="providers">
>>                         <list>
>>                                 <ref bean="daoAuthenticationProvider"/>
>>                                 <!--<ref
>> local="anonymousAuthenticationProvider"/>-->
>>                                 <ref
>> bean="rememberMeAuthenticationProvider"/>
>>                         </list>
>>                 </property>
>>         </bean>
>>
>>         <bean id="authenticationProcessingFilter"
>> class="org.acegisecurity.ui.webapp.AuthenticationProcessingFilter">
>>                 <property name="filterProcessesUrl"
>> value="/j_acegi_security_check" />
>>         <property name="authenticationFailureUrl" value="/AccessDenied"
>> />
>>                 <property name="defaultTargetUrl" value="/" />
>>                 <property name="authenticationManager"
>> ref="authenticationManager" />
>>                 <property name="rememberMeServices"
>> ref="rememberMeServices" />
>>    </bean>
>>
>>         <bean id="formAuthenticationEntryPoint"
>> class="org.acegisecurity.ui.webapp.AuthenticationProcessingFilterEntryPoint">
>>                 <property name="loginFormUrl"
>> value="/tests/comcypozpetroslogin" />
>>                 <property name="forceHttps" value="false" />
>>         </bean>
>>
>>    <bean id="basicProcessingFilter"
>> class="org.acegisecurity.ui.basicauth.BasicProcessingFilter">
>>       <property name="authenticationManager"><ref
>> bean="authenticationManager"/></property>
>>       <property name="authenticationEntryPoint"><ref
>> bean="basicProcessingFilterEntryPoint"/></property>
>>    </bean>
>>
>>
>>    <bean id="basicProcessingFilterEntryPoint"
>> class="org.acegisecurity.ui.basicauth.BasicProcessingFilterEntryPoint">
>>       <property name="realmName"><value>Contacts Realm</value></property>
>>    </bean>
>>
>>         <bean id="daoAuthenticationProvider"
>> class="org.acegisecurity.providers.dao.DaoAuthenticationProvider">
>>                 <property name="userDetailsService">
>>                 <ref bean="userDetailsService" />
>>                 </property>
>>         </bean>
>>
>>         <bean id="exceptionTranslationFilter"
>> class="org.acegisecurity.ui.ExceptionTranslationFilter">
>>                 <property name="authenticationEntryPoint">
>>                         <ref bean="formAuthenticationEntryPoint"/>
>>                 </property>
>>                 <property name="accessDeniedHandler">
>>                         <bean
>> class="org.acegisecurity.ui.AccessDeniedHandlerImpl">
>>                                 <property name="errorPage"
>> value="/AccessDenied"/>
>>                         </bean>
>>                 </property>
>>         </bean>
>>
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe@tapestry.apache.org
> For additional commands, e-mail: users-help@tapestry.apache.org
> 
> 
> 

-- 
View this message in context: http://www.nabble.com/-T5--Is-there-a-working-Acegi-example-available--tf4013502.html#a11405037
Sent from the Tapestry - User mailing list archive at Nabble.com.


---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@tapestry.apache.org
For additional commands, e-mail: users-help@tapestry.apache.org


Re: [T5] Is there a working Acegi example available?

Posted by Daniel Jue <te...@gmail.com>.
Dear List,

I'm sorry, I think I found my problem, and it was a stupid one.  It
took a 3rd cup of coffee to make it appear.

I wasn't prefixing my Authority strings with "ROLE_"

i.e. my DB had "ADMIN" stored in a field instead of "ROLE_ADMIN"

This still doesn't explain why I wasn't redirected properly to the
LoginFailure page.
When I type in the URL for the LoginFailure manually, it works of course.

Daniel



On 7/2/07, Daniel Jue <te...@gmail.com> wrote:
> I am beating my head against a brick wall.
>
> I am trying to get Acegi working (using Spring to configure it).  I
> have it working to the point where a secured page (secured in the xml
> files, not using any annotations for securing classes) redirects me to
> a login page.
> If I type in a login/password that is wrong, I get sent to my "Access
> Denied" page like I want.
> However with a good login, I'm getting unsuccessfully forwarded to my
> "Access Denied" page.  The url at the top displays the secure url I
> was trying to go to, but the browser displays a 404 error indicating
> it can't find the AccessDenied page.
>
> It seems like there are sooo many things that can go wrong with an
> Acegi configuration.
> I only want form authentication, so the Basic authentication filter
> can probably be deleted.
>
> It would be nice to see a complete T5 Acegi application this on the T5
> Wiki, first with Spring configuration, since Tapestry-Acegi is not
> ported to T5 yet.
>
> <sigh>
>
> Here is my configuration:
>
>
>
>         <bean id="filterChainProxy" class="org.acegisecurity.util.FilterChainProxy">
>                 <property name="filterInvocationDefinitionSource">
>                 <value>
>                                 CONVERT_URL_TO_LOWERCASE_BEFORE_COMPARISON
>                                 PATTERN_TYPE_APACHE_ANT
>                                 /**=httpSessionContextIntegrationFilter,logoutFilter,authenticationProcessingFilter,basicProcessingFilter,rememberMeProcessingFilter,exceptionTranslationFilter,filterInvocationInterceptor
>                         </value>
>                 </property>
>         </bean>
>
>
> <bean id="filterInvocationInterceptor"
> class="org.acegisecurity.intercept.web.FilterSecurityInterceptor">
>       <property name="authenticationManager"><ref
> bean="authenticationManager"/></property>
>       <property name="accessDecisionManager"><ref
> bean="httpRequestAccessDecisionManager"/></property>
>       <property name="objectDefinitionSource">
>          <value>
>                             CONVERT_URL_TO_LOWERCASE_BEFORE_COMPARISON
>                             PATTERN_TYPE_APACHE_ANT
>                             /start=ROLE_ADMIN
>                             /loginsuccess=ROLE_ADMIN
>                             /tests/gridpage=ROLE_ADMIN
>                             /tests/guess=ROLE_ADMIN
>                             /tests/hilo=ROLE_ADMIN
>                             /tests/imagepage=ROLE_ADMIN
>                                 /postlogin=ROLE_ANONYMOUS,ROLE_ADMIN
>          </value>
>       </property>
>    </bean>
>
>    <bean id="httpSessionContextIntegrationFilter"
> class="org.acegisecurity.context.HttpSessionContextIntegrationFilter">
>    </bean>
>
>    <bean id="httpRequestAccessDecisionManager"
> class="org.acegisecurity.vote.AffirmativeBased">
>       <property name="allowIfAllAbstainDecisions"><value>true</value></property>
>       <property name="decisionVoters">
>          <list>
>             <ref bean="roleVoter"/>
>          </list>
>       </property>
>    </bean>
>
>    <bean id="logoutFilter" class="org.acegisecurity.ui.logout.LogoutFilter">
>       <constructor-arg value="/LogoutSuccess"/> <!-- URL redirected to
> after logout -->
>       <constructor-arg>
>          <list>
>               <ref bean="rememberMeServices"/>
>               <bean
> class="org.acegisecurity.ui.logout.SecurityContextLogoutHandler"/>
>          </list>
>       </constructor-arg>
>    </bean>
>
> <bean id="rememberMeAuthenticationProvider"
> class="org.acegisecurity.providers.rememberme.RememberMeAuthenticationProvider">
>   <property name="key"><value>springRocks</value></property>
> </bean>
>
>       <bean id="rememberMeProcessingFilter"
> class="org.acegisecurity.ui.rememberme.RememberMeProcessingFilter">
>   <property name="authenticationManager" ref="authenticationManager" />
>   <property name="rememberMeServices"><ref
> bean="rememberMeServices"/></property>
> </bean>
>
> <bean id="rememberMeServices"
> class="org.acegisecurity.ui.rememberme.TokenBasedRememberMeServices">
>   <property name="userDetailsService"><ref
> bean="userDetailsService"/></property>
>   <property name="key"><value>springRocks</value></property>
> </bean>
>
>     <bean id="roleVoter" class="org.acegisecurity.vote.RoleVoter">
>         <property name="rolePrefix">
>             <value>ROLE_</value>
>         </property>
>     </bean>
>
>     <bean id="userDetailsService"
> class="myapp.security.AuthenticationJdbcDaoImpl">
>         <property name="dataSource">
>             <ref bean="dataSource"/>
>         </property>
>         <property name="userInfoObjectTypes">
>             <list>
>                 <value>Admin</value>
>                 <value>Standard</value>
>             </list>
>         </property>
>     </bean>
>
>         <bean id="dataSource" class="org.springframework.jndi.JndiObjectFactoryBean">
>         <property name="resourceRef">
>                 <value>true</value>
>         </property>
>         <property name="jndiName">
>                 <value>java:comp/env/jdbc/MyUserDatabase</value>
>         </property>
>         </bean>
>
>     <bean id="accessDecisionManager"
> class="org.acegisecurity.vote.UnanimousBased">
>         <property name="decisionVoters">
>             <list>
>                 <ref bean="roleVoter" />
>             </list>
>         </property>
>     </bean>
>
>         <bean id="authenticationManager"
> class="org.acegisecurity.providers.ProviderManager">
>                 <property name="providers">
>                         <list>
>                                 <ref bean="daoAuthenticationProvider"/>
>                                 <!--<ref local="anonymousAuthenticationProvider"/>-->
>                                 <ref bean="rememberMeAuthenticationProvider"/>
>                         </list>
>                 </property>
>         </bean>
>
>         <bean id="authenticationProcessingFilter"
> class="org.acegisecurity.ui.webapp.AuthenticationProcessingFilter">
>                 <property name="filterProcessesUrl" value="/j_acegi_security_check" />
>         <property name="authenticationFailureUrl" value="/AccessDenied" />
>                 <property name="defaultTargetUrl" value="/" />
>                 <property name="authenticationManager" ref="authenticationManager" />
>                 <property name="rememberMeServices" ref="rememberMeServices" />
>    </bean>
>
>         <bean id="formAuthenticationEntryPoint"
> class="org.acegisecurity.ui.webapp.AuthenticationProcessingFilterEntryPoint">
>                 <property name="loginFormUrl" value="/tests/comcypozpetroslogin" />
>                 <property name="forceHttps" value="false" />
>         </bean>
>
>    <bean id="basicProcessingFilter"
> class="org.acegisecurity.ui.basicauth.BasicProcessingFilter">
>       <property name="authenticationManager"><ref
> bean="authenticationManager"/></property>
>       <property name="authenticationEntryPoint"><ref
> bean="basicProcessingFilterEntryPoint"/></property>
>    </bean>
>
>
>    <bean id="basicProcessingFilterEntryPoint"
> class="org.acegisecurity.ui.basicauth.BasicProcessingFilterEntryPoint">
>       <property name="realmName"><value>Contacts Realm</value></property>
>    </bean>
>
>         <bean id="daoAuthenticationProvider"
> class="org.acegisecurity.providers.dao.DaoAuthenticationProvider">
>                 <property name="userDetailsService">
>                 <ref bean="userDetailsService" />
>                 </property>
>         </bean>
>
>         <bean id="exceptionTranslationFilter"
> class="org.acegisecurity.ui.ExceptionTranslationFilter">
>                 <property name="authenticationEntryPoint">
>                         <ref bean="formAuthenticationEntryPoint"/>
>                 </property>
>                 <property name="accessDeniedHandler">
>                         <bean class="org.acegisecurity.ui.AccessDeniedHandlerImpl">
>                                 <property name="errorPage" value="/AccessDenied"/>
>                         </bean>
>                 </property>
>         </bean>
>

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@tapestry.apache.org
For additional commands, e-mail: users-help@tapestry.apache.org