Which was one thing I had already done - didn't use comments, but did all my up-front work in one line.

w

On Tue, 25 Jan 2005 11:32:41 -0500
 Kris Schneider <[EMAIL PROTECTED]> wrote:
For the paranoid, you probably want to be sure that the email template
("EmailTestTemplate.jsp") doesn't actually produce any output. Because you're
doing an include followed by a forward, there's a *possibility* that the
forward will throw an IllegalStateException if the include causes the response
to be committed. You can use one of the various JSP whitespace "hacks" to
help:


<%@ taglib uri="http://struts.apache.org/tags-bean"; prefix="bean" %><%--

--%><bean:define id="emailStuff" toScope="request">
 ...
</bean:define>

Obviously, the example is unlikely to cause a problem, but a more involved page
might.


Another approach might be to pass an HttpServletResponseWrapper to the include
method whose output stream (or writer) just buffers the entire response for
later retrieval.


Quoting Niall Pemberton <[EMAIL PROTECTED]>:

You can do this easily using the <bean:define> tag and the
RequestDispatcher. I've put a page up on my web site showing how:

http://www.niallp.pwp.blueyonder.co.uk/emailTemplate.html

I believe the RequestDispatcher is the "magic" JSP processor you're looking
for.


Niall

----- Original Message ----- From: "William Stranathan" <[EMAIL PROTECTED]>
To: "Struts Users Mailing List" <user@struts.apache.org>
Sent: Tuesday, January 25, 2005 11:00 AM
Subject: OT - Evaulating JSP as internal template?



> The subject is prolly a poor way to say what I'm trying to say....
>
> Does anybody know of a simple way to use JSP as an INTERNAL templating
> engine. For example, if I have a struts application where I'm
> generating an email to send, I currently have to use Velocity on the
> server side to put the values into the template, then send that.
>
> Is there a simple way to do the same with JSP? Would I be best served
> by on the server side, constructing an HTTP request to a JSP that simply
> pops in the request attributes into the correc place?
>
> High-level of what I want to do:
>
> ActionForward execute(mapping, form, request, response) {
> MyForm myform = (MyForm)form;
>
> Hashtable vals = new Hashtable();
> vals.put("user",form.getUser());
> vals.put("car",form.getCar());
>
> JSPProcessor proc = new JSPProcessor();
> proc.getRequestScope().put("values",vals);
> StringBuffer buff = proc.evaluate("WEB-INF/templates/email.jsp");
>
> MailUtils.mail("[EMAIL PROTECTED]",buff);
> }
>
> Where JSPProcessor is the kind of magic I'm looking for. I don't really
> see anything built into the API spec, so I SUSPECT if there were
> anything available in Tomcat, for instance, it would be implementation
> specific.
>
> Not a HUGE deal, but it's kinda' a pain to have to train new folks on
> how to put together the JSP's AND how to put together the velocity
> templates.
>
> Thanks,
> Will

-- Kris Schneider <mailto:[EMAIL PROTECTED]> D.O.Tech <http://www.dotech.com/>

---------------------------------------------------------------------
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