cocoon-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Joerg Heinicke <joerg.heini...@gmx.de>
Subject Re: Problem with losing session context 'authentication' - looking fo r workaround or bugfix
Date Wed, 12 May 2004 23:48:00 GMT
No help from my side and not much time to investigate at the moment. It 
really sounds weird. And - that's the reason I write - I fear that I 
will come to the same problem when I switch on authentication in my 
application. I already have some test pipelines as it is my first 
project with authentication framework. Have you done some remote 
debugging to see what's going on?

Joerg

On 12.05.2004 00:22, H.vanderLinden@MI.unimaas.nl wrote:

> Hi,
> 
> Can someone please help me in finding either a workaround or a bugfix to the
> following problem:
> 
> I loose the 'authentication' context in the session when I go from one
> "protected" page to the next "protected" page when I access it directly
> (i.e. by it's internal url).
> 
> In detail:
> 
> Setup:
> - default Cocoon root sitemap with automounted subsitemap of my app. 
> - authentication-fw setup like the sample with the flowscripts (auth.js).
> Works.
> - all "public" urls go through the "protect" function to their "internal"
> counterpart.
> - all internal/*.html urls go to an appropriate javascript function
> - all internal/*.form urls generate a form:
> 
> <map:match pattern="**/internal/*.form">
>     <map:generate type="jx" src="content/{2}Template.jx"/>
>     <map:transform type="cinclude"/>
>     <map:transform type="forms"/>
>     <map:transform src="stylesheets/resources/forms-samples-styling.xsl">
> 	  <map:parameter name="uri" value="stylesheets/resources"/>
>     </map:transform>
>     <map:call resource="html-layout"/>
>     <map:serialize type="xml"/>
> </map:match>
> 
> - one of the cincludes is getUser:
> <map:match pattern="getUser">
> 	<map:generate src="system/authentication.xml"/> 
> 	<!-- this is <session:getxml context="authentication" path="/"/> -->
> 	<map:transform type="session"/>
> 	<map:serialize type="xml"/>
> </map:match>
> 
> Function doSomething() {
>  var obj = getObject();
>  form.load(obj);
>  form.showForm("internal/someForm.form");
>  form.save(obj);
>  storeObject(obj);
>  cocoon.sendPage("internal/anotherForm.html"); <-- ERROR!!
> }
> 
> The last line throws an exception which boils down to "cannot find
> 'authetication' context". I'm fairly sure the exception originates from the
> sessionTransformer.
> 
> I have to rewrite it to cocoon.sendPage("public/anotherForm.html").
> 
> This works in simple cases, but when I add bizData they get lost in the
> process. I.e.:
> 
> Function doSomething() {
>  var obj = getObject();
>  form.load(obj);
>  form.showForm("internal/someForm.form");
>  form.save(obj);
>  storeObject(obj);
>  var bizData = { object: obj}
>  cocoon.sendPage("public/anotherForm.html", bizData); <-- bizData is lost!!
> }
> 
> To make things even worse:
> 
> I log in successfully and my first redirected page shows. Everything ok. I
> now click on a menu item (-> public/doSomething.html). The forms shows ok,
> but when I press submit I get the authentication error again. When studying
> what happens it looks like a second thread is started (i.e. the function is
> executed twice) and the error seems to occur when the second thread tries to
> display the form.
> 
> What can I do?
> 
> Bye, Helma

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


Mime
View raw message