You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@cocoon.apache.org by Ungvári Sándor <us...@hszk.bme.hu> on 2003/03/16 15:31:45 UTC
Auth-protect action problem
Hi!
I'd like to use the user authentication in cocoon 2.0.4. but I always get
some errors. I've read much about this topic but I couldn't solve my
problem. Here is my sitemap:
...
<pipelines>
<map:component-configurations>
<authentication-manager>
<handlers>
<handler name="userPortal">
<redirect-to uri="login"/>
<authentication uri="userLogin"/>
</handler>
</handlers>
</authentication-manager>
</map:component-configurations>
<pipeline>
...
<map:match pattern="login">
<map:generate type="xsp" src="login.xsp"/>
<map:serialize/>
</map:match>
<map:match pattern="userLogin">
<map:act type="auth-login">
<map:parameter name="handler" value
="userPortal"/>
<map:parameter name="parameter_userid"
value ="{request:user}"/>
<map:parameter name="parameter_password"
value="{request:password}"/>
<map:redirect-to uri="services"/>
</map:act>
<!-- authentication failed: Back to login-page -->
<map:generate type="xsp" src="login.xsp"/>
<map:serialize/>
</map:match>
<map:match pattern="services">
<map:act type="auth-protect">
<map:parameter name="handler" value ="userPortal"/>
<map:read src="docs/bart.gif" mime-type="image/gif"/>
</map:act>
</map:match>
...
</pipeline>
...
type fatal
message UnnamedSelector: ComponentSelector could not find the component for
hint [auth-protect]
description org.apache.avalon.framework.component.ComponentException:
UnnamedSelector: ComponentSelector could not find the component for hint
[auth-protect]
sender org.apache.cocoon.servlet.CocoonServlet
Should I define anything like this
<map:components>
<map:actions>
<map:action name="auth-protect"
logger="sitemap.action.auth-protect"
src="org.apache.cocoon.webapps.authentication.acting.AuthAction"/>
<map:actions>
...
???
If I do this the result is:
message Error in sitemap configuration :
org.apache.cocoon.webapps.authentication.acting.AuthAction
description
org.apache.avalon.framework.configuration.ConfigurationException: Error in
sitemap configuration :
org.apache.cocoon.webapps.authentication.acting.AuthAction
sender org.apache.cocoon.servlet.CocoonServlet
Maybe I've to add something to cocoon.xconf? Or what?
Please HELP me!!! q:-)
Soma
---------------------------------------------------------------------
To unsubscribe, e-mail: cocoon-users-unsubscribe@xml.apache.org
For additional commands, e-mail: cocoon-users-help@xml.apache.org
Re: Auth-protect action problem
Posted by Lionel Crine <cr...@4dconcept.fr>.
Hi,
Here is the sunshine part from my sitemap. I use cocoon-2.0.4.
1/ in the map:components element
<!-- ======================= SunShine =========================== -->
<map:actions>
<map:action name="sunRise_login"
src="org.apache.cocoon.sunshine.sunrise.acting.LoginAction"/>
<map:action name="sunRise_logout"
src="org.apache.cocoon.sunshine.sunrise.acting.LogoutAction"/>
<map:action name="sunRise_loggedIn"
src="org.apache.cocoon.sunshine.sunrise.acting.LoggedInAction"/>
<map:action name="sunShine_session"
src="org.apache.cocoon.sunshine.acting.SessionAction"/>
<map:action name="sunSpot_auth"
src="org.apache.cocoon.sunshine.sunspot.acting.AuthAction"/>
<map:action name="sunRise_auth"
src="org.apache.cocoon.sunshine.sunrise.acting.AuthAction">
<handlers>
<handler name="foo_handler"
xmlns:map="http://apache.org/cocoon/sitemap/1.0"
xmlns:sunshine="http://sunshine.sundn.de/sunshine/1.0">
<redirect-to uri="cocoon://login_page"/>
<authentication uri="cocoon://authuser"/>
</handler>
</handlers>
</map:action>
</map:actions>
2/ in the map:pipelines element
<map:pipeline>
<!-- ======================= SunShine =========================== -->
<map:match pattern="demo">
<!-- check you are already logged -->
<map:act type="sunRise_loggedIn">
<map:parameter name="handler" value="foo_handler"/>
<map:redirect-to uri="protected/display"/>
</map:act>
<!-- if not go to page login-->
<map:generate type="serverpages" src="demo/login_page.xsp"/>
<map:transform src="demo/login_page.xsl"/>
<map:transform type="encodeURL"/>
<map:serialize type="html"/>
</map:match>
<!-- the login which call authuser via the handler -->
<map:match pattern="login">
<!-- check if the user is logged -->
<map:act type="sunRise_loggedIn">
<map:parameter name="handler" value="foo_handler"/>
<map:redirect-to uri="protected/display"/>
</map:act>
<!-- log the user -->
<map:act type="sunRise_login">
<map:act type="sunShine_session"/>
<map:parameter name="handler" value="foo_handler"/>
<map:parameter name="parameter_name" value="request:name"/>
<map:parameter name="parameter_password" value="request:password"/>
<!-- if the authentication is successfull then this redirect
will be performed -->
<map:redirect-to uri="demo"/>
</map:act>
<!-- authentication failed -->
<map:generate src="demo/login_failed.xml"/>
<map:transform src="demo/login_failed.xsl"/>
<map:serialize type="html"/>
</map:match>
<!-- the authentication -->
<map:match pattern="authuser">
<map:generate src="demo/user.xml"/>
<!-- check the user -->
<map:transform src="demo/user.xsl">
<map:parameter name="use-request-parameters" value="true"/>
</map:transform>
<map:serialize type="xml"/>
</map:match>
<!-- ========= the protected resources ========== -->
<map:match pattern="protected/**">
<map:act type="sunRise_auth">
<map:parameter name="handler" value="foo_handler"/>
<!-- welcome page -->
<map:match pattern="protected/display">
<map:generate type="serverpages" src="demo/display.xsp"/>
<map:transform type="xslt" src="demo/display.xsl">
<map:parameter name="use-request-parameters"
value="true"/>
</map:transform>
<map:serialize type="html"/>
</map:match>
....
</map:act>
</map:match>
<map:pipeline>
Hope that help.
Moreover I had this error but I don't remember how I solved it. I think the
handler (authentication-manager) is not in the right place.
Lionel
---------------------------------------------------------------------
To unsubscribe, e-mail: cocoon-users-unsubscribe@xml.apache.org
For additional commands, e-mail: cocoon-users-help@xml.apache.org