cocoon-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Leszek Gawron <lgaw...@mobilebox.pl>
Subject Re: [CForms/Flow] updating repeater causes loss of session context - please help
Date Fri, 19 Nov 2004 23:05:42 GMT
H.vanderLinden@MI.unimaas.nl wrote:
> Hi guys,
> 
> I'm struggling with this problem for a long time, so I hope now that the new
> release is out, somebody can find the time to look into this.
> 
> I closely followed the sample on using the authentication-fw in flow script
> and it works fine until...I update a repeater (e.g. I add a row). From that
> moment on, the session context is lost, until I redirect to another page
> (which goes through the 'checkLoginStatus' process again).
> 
> When I have a "simple" form, just some simple widgets and a submit button,
> everything goes fine. But when there is a repeater and a "redisplay" action
> I loose the authentication context. 
> 
> Does anyone have any ideas?
> 
> More in detail:
> 
> I have "public" pipelines that call the "protect" function with an
> "internal" equivalent:
> 
> <map:match pattern="public/**">
>    <map:call function="protect">
>       <map:parameter name="handler" value="flowAuthenticationHandler"/>
> 	<map:parameter name="protected-internal" value="internal/{1}"/>
> 	<map:parameter name="protected-redirect"
> value="{request-param:resource}"/>
> 	<map:parameter name="failure-redirect" value="login"/>
> 	<map:parameter name="failure-error" value="Log in first!"/>
>    </map:call>
> </map:match>
> 
> <map:pipeline internal-only="true">
>    <map:match pattern="internal/*.html">
>       <map:call function="someFunction">
>           <map:parameter name="someParameter" value="{1}"/>
>       </map:call>
>    </map:match>
>    <map:match pattern="internal/*.form">
>       <map:generate type="jx" src="content/{1}Template.jx"/>
>       <map:transform type="cinclude"/>
>       <map:transform type="forms"/>
>       <map:call resource="html-layout"/>
>       <map:serialize type="xml"/>
>    </map:match>      
> </map:pipeline>
> 
> 
> function someFunction() {
>   // do something
>   form.showForm("internal/someForm.form");
>   // process form data
>   cocoon.redirectTo("public/somethingElse.html");
> }
> 
> Thanks.
> 
> Bye, Helma
I do not know how auth-fw works. Still this looks for me like the 
problem occurs when you resume continuations. Shouldn't you wrap your 
<map:call continuation="{1}"/> with some auth-fw action?

-- 
Leszek Gawron                                      lgawron@mobilebox.pl
Project Manager                                    MobileBox sp. z o.o.
+48 (61) 855 06 67                              http://www.mobilebox.pl
mobile: +48 (501) 720 812                       fax: +48 (61) 853 29 65

Mime
View raw message