i think i understand, but won't this put a lot of processing on the server? the toc.xsl takes about 3 minutes to generate. if i apply the logic in the XSP page the page will have to process the entire XML document each time? mvh karl -----Original Message----- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]] Sent: 9. august 2001 18:15 To: [EMAIL PROTECTED]; [EMAIL PROTECTED] Subject: Re: newbie question: (XML->XSLT) cached -> session logic -> browser?? Just create an XSP page, with a template matching the root element of your xml page. Then do some if-then-else based on your session. In each 'if' body you do something like this: if (some_session_based_expression) { <xsl:call-template name="henk"/> } else if (....) .... The template 'henk' is inserted in the place of the call. If it just consists of content, it looks like this: <xsl:template name="henk"> <xsp:content> <!-- xsl code that applies templates to the parts you want --> </xsp:content> </xsl:template> This way you get 1 producer/generator, which can produce all the different pages you want (that is, sections of your XML document) based on some viariables in the session. I use this technique to validate users: The XML document: <nsp:auth group="users"> <success> <!-- data you want to show when the user is logged in and belongs to that group --> </success> <fail> <nsp:login-form/> <!-- or some other xml code.. --> </fail> </nsp:auth> The xsp page: <xsl:template match="nsp:auth"> <xsp:logic> if (userInGroup("<xsl:value-of select="@group"/>")) { <xsp:content> <xsl:apply-templates select="success"/> </xsp:content> } else { <xsp:content> <xsl:apply-templates select="fail"/> </xsp:content> } </xsp:logic> </xsl:template> The UserInGroup checks the session for a user object, standard code.. Hope this helps, Kenney Westerhof On Thu, 9 Aug 2001, Karl Oie wrote: > Hi, im pretty new to cocoon2 so i need some advice about the best aproach > for my problem; > > I got a quite large XML file which i use a XSL stylesheet to extract only > parts of, but the XML file might change so i set this up as the generator. > > <map:match pattern="toc.html"> > <map:generate src="largefile.xml"/> > <map:transform src="toc.xsl"/> > > ... perform logic on the result based on sessions ... > > <map:serialize type="html"/> > </map:match> > > Then based on the the user's session state i want to perform logic on the > extract, to hide and show elements (this is a session based toc). > > What can i use to do this, a XSP, JSP, write a new > generator/transformer/serializer ? > > Is it possible to place session handling in a custom serializer? is this a > job for a transformer, and will i then have to implement it myself and is it > then possible to add session handling? > > Should i create a custom generator, if so how to implement caching and > session handling? > > I'm quite good at java, but i'm new to cocoon and need some pointers in the > right direction. > > in advance thanks! > > mvh Karl > > > --------------------------------------------------------------------- > Please check that your question has not already been answered in the > FAQ before posting. <http://xml.apache.org/cocoon/faqs.html> > > To unsubscribe, e-mail: <[EMAIL PROTECTED]> > For additional commands, e-mail: <[EMAIL PROTECTED]> > --------------------------------------------------------------------- Please check that your question has not already been answered in the FAQ before posting. <http://xml.apache.org/cocoon/faqs.html> To unsubscribe, e-mail: <[EMAIL PROTECTED]> For additional commands, e-mail: <[EMAIL PROTECTED]>