velocity-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Mike Curwen" <g_dev...@globallyboundless.com>
Subject RE: Streaming from the middle of a template?
Date Tue, 05 Apr 2005 18:13:43 GMT
have you looked at using #parse() ?



> -----Original Message-----
> From: e v a n l e o n a r d [mailto:evan@mindreef.com] 
> Sent: Tuesday, April 05, 2005 12:58 PM
> To: 'Velocity Users List'; 'Shinobu Kawai'
> Subject: RE: Streaming from the middle of a template?
> 
> 
> 
> > If all the components uses Velocity to render the content, 
> you must be
> > using Template#merge or Velocity(Engine)#mergeTemplate or 
> > Velocity(Engine)#evaluate in each of your components, correct?  
> > If so, you can just put the Writer in the Context before rendering.
> >     context.put("writer", writer)
> > And in the template,
> >     $component.render($writer)
> 
> 
> Right right, exactly, but how to I get the writer?
> 
> How do I get the writer from the parent velocity template 
> such that I can
> pass it to the child templates and have there output slip 
> right into the
> output of the parent?
> 
> 
> -Evan
> 
> 
> 
> 
> 
> -----Original Message-----
> From: Shinobu Kawai [mailto:shinobu.kawai@gmail.com] 
> Sent: Tuesday, April 05, 2005 1:10 PM
> To: Velocity Users List
> Subject: Re: Streaming from the middle of a template?
> 
> Hi Evan,
> 
> > Here's what I'm doing: I've written a reusable html-control 
> model for 
> > creating html components within the struts framework using 
> velocity. 
> > These components use velocity themselves to render their content. 
> > These controls may also themselves contain other 
> sub-controls, and so 
> > on.  It seems ineffecient for me for each of these sub-controls, to 
> > have to create a single large string and return it to its parent 
> > control to render it. I would rather pass a writer down through the 
> > execution hierarchy having each subcontrol add its output to the 
> > parents writer, thus using a single writer to achieve the total 
> > output, instead of a segmented writer.toString -> writer.toString ->
> writer.toString sort of process.
> > 
> > Does that make more sense?
> 
> If all the components uses Velocity to render the content, 
> you must be using
> Template#merge or Velocity(Engine)#mergeTemplate or
> Velocity(Engine)#evaluate in each of your components, 
> correct?  If so, you
> can just put the Writer in the Context before rendering.
>     context.put("writer", writer)
> And in the template,
>     $component.render($writer)
> 
> Best regards,
> -- Shinobu
> 
> --
> Shinobu Kawai <shinobu.kawai@gmail.com>
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: velocity-user-unsubscribe@jakarta.apache.org
> For additional commands, e-mail: velocity-user-help@jakarta.apache.org
> 
> 
> 
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: velocity-user-unsubscribe@jakarta.apache.org
> For additional commands, e-mail: velocity-user-help@jakarta.apache.org
> 


---------------------------------------------------------------------
To unsubscribe, e-mail: velocity-user-unsubscribe@jakarta.apache.org
For additional commands, e-mail: velocity-user-help@jakarta.apache.org


Mime
View raw message