You should look at the code then ;) It's viewable via web cvs:

http://cvs.sourceforge.net/viewcvs.py/tacos/tacos4/?only_with_tag=tacos4-alpha-7-pretap4-1

On 1/3/06, Rusty Phillips <[EMAIL PROTECTED]> wrote:
>
> I would very much like to see that code.
> I think I'm getting closer to a solution here, but it's hard to tell.
> So far I've been able to successfully create a service, but
> 1)  I'm not sure what I how to make the page render to my own
> IMarkupWriter instance (in a NullWriter?).  Every attempt I've made to
> put an IMarkupWriter into the cycle object or into the component itself
> has resulted in a nullpointer error.
> 2)  I'm not sure how to force the page to use this service instead of
> being rendered the normal way.  I'm getting an error indicating that the
> response is being built twice.
>
>
>
> -----Original Message-----
> From: Jesse Kuhnert [mailto:[EMAIL PROTECTED]
> Sent: Friday, December 30, 2005 10:08 AM
> To: Tapestry users
> Subject: Re: How does one control rendering?
>
> Hmmm...Your email sounds very angry. I will answer it anyways.
>
> All content in tapestry is written to a IMarkupWriter class instance,
> which
> is similar to a markup tag output buffer. There are a few services
> involved
> in taking an incoming response and rendering output. Like DirectService.
>
> If I were trying to "capture" the output of a response and play with it
> I
> would probably try extending/overriding one of these services. I would
> reccomend taking a look at the XTileService in the contrib library of
> tapestry, or for a much more complicated example you can look at
> http://tacos.sourceforge.net.
>
> I'm doing exactly what you describe by passing an instance of
> NestedMarkupWriter to the response, which is in effect a StringBuffer
> instance that you can grab the content from when your response is done
> rendering. I use all of this to play around with ajax features.
>
> On 12/30/05, Rusty Phillips <[EMAIL PROTECTED]> wrote:
> >
> > Your approach was the one that I reasoned was probably what to do, and
> > suggested in my last e-mail that got no response.  My guess is that
> > nobody knows how to do this, its impossible, or I'm way off how to do
> > it.  I'm hoping it's the last thing.  If Tapestry is so inflexible
> that
> > you can't even do something as simple as coupling its templating
> engine
> > with another engine and rendering to things besides text, then it's
> > never going to take off because it means that migration is nearly
> > impossible, and it doesn't scale beyond simple HTML page generation.
> >
> > "to render HTML"
> >
> > How?  I mean, how do I actually look at the output?  All the pages in
> > the examples I've seen look like glorified Beans.  I've yet to see how
> > you actually render the output.  Do I call render?  How do I feed it
> > what it needs so that it will actually spit out an output?  Then what
> do
> > I override to make it return to the browser correctly?
> >
> > And once I've got the output in some other transformed format, how do
> I
> > change the HTTP headers to match the new form of output?
> >
> >
> > -----Original Message-----
> > From: Jorge Quiroga [mailto:[EMAIL PROTECTED]
> > Sent: Thursday, December 29, 2005 5:15 PM
> > To: Tapestry users
> > Subject: Re: How does one control rendering?
> >
> > I'm newbie too, but until I can read you can:
> >
> > 1) Use insert component
> > 2) Do a kind of component (.jwc) and a Java class that inherits from
> > BasePage or implements IPage that serve you as a template to render
> HTML
> >
> > and do the transformations you need (at least at data level and until
> > certain point to components inside see Block and RenderBlock -see the
> > documentation for deeper info-) in descendant pages
> >
> > I'm not sure if I undestood well your question but I hope this can
> help
> > you
> >
> > Jorge Quiroga
> >
> > Rusty Phillips wrote:
> > > Pardon the possibly newbish question, but I can't seem to find a
> > simple
> > > way to do this relatively simple thing.
> > >
> > >
> > >
> > > I would very much like to get the entire contents of a page in
> already
> > > rendered format (i.e. a string, or an output buffer, or a response
> > > object of some kind), transform it, and then send it to the browser.
> > > This is ultimately alluding to in my last e-mail.
> > >
> > >
> > >
> > > Since this is ultimately a property of the type of page that I am
> > using,
> > > I would really like to do this using a class extended from IPage, or
> > > from BasePage.
> > >
> > >
> > >
> > > How does one go about this?
> > >
> > >
> > >
> > > And if it's impossible, then is it possible to use this framework
> > along
> > > with servlet filters without screwing everything up totally?  Its
> > > lower-level than I would like, but these should be able to do what
> I'm
> > > looking for.
> > >
> > >
> >
> >
> >
> > ---------------------------------------------------------------------
> > To unsubscribe, e-mail: [EMAIL PROTECTED]
> > For additional commands, e-mail: [EMAIL PROTECTED]
> >
> >
> > ---------------------------------------------------------------------
> > To unsubscribe, e-mail: [EMAIL PROTECTED]
> > For additional commands, e-mail: [EMAIL PROTECTED]
> >
> >
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
>
>

Reply via email to