It seems to me that a MailTransformer would be a better, more general
solution to this problem than an XSP (though I don't know much about XSP).
Someone else recently was asking for much the same thing. 

Has anyone written a MailTransformer?


> -----Original Message-----
> From: Noah Mittman [mailto:[EMAIL PROTECTED]]
> Sent: Friday, 15 February 2002 13:24
> To: Cocoon Users
> Subject: maybe running Java within an XSL?
> 
> 
> What would be the best way to approach this functionality?
> 
> I have an XML which acts as source data for a multi-framed web 
> application.
> At some point I want a FORM in one of those HTML pages to 
> send email -- 
> take the to: and from: addresses but use a set of parameters 
> which are 
> nodes in the XML.
> 
> So basically I want, upon submission, for Cocoon to take the 
> parameters, 
> take the necessary nodes  from the XML, send email via 
> javax.mail, and 
> then style a result page based on the success/fail of the send, also 
> using parameters in the source XML.
> 
> Here's an example of what I'd thought I'd do:
> 
> a) Create an XSP by pulling in what is needed from the source XML and 
> the items from the FORM into a <xsp:page> root and a new 
> <apputil:mail> 
> element:
> 
>       <map:match pattern="sendmail.xsp"><!-- the action of 
> the FORM -->
>               <map:generate src="sourcedata.xml" /><!-- our 
> source data -->
>               <map:transform src="sourcedata-to-sendmail.xsl">
>                       <map:parameter 
> name="use-request-parameters" value="true"/>
>               </map:transform>
>               <map:serialize type="xml"/>
>       </map:match>
> 
> So a doc that is like this:
>       <source>
>               <name>Foo</name>
>               <style>bar.css</style>
>               <message>Thanks for making Foo #1 in 
> Lichtenstein.</message>
>       </source>
> Becomes this:
>       <xsp:page>
>               <apputil:mail>
>                       <!-- form bits -->
>                       <name>Foo</name>
>                       <style>bar.css</style>
>                       <message>Thanks for making Foo #1 in 
> Lichtenstein.</message>
>               </apputil>
>       </xsp:page>
> 
> b) have apputil logicsheet ready, which will turn apputil:mail into a 
> <result> element
> 
> c) Execute the XSP and style the result
> 
>       <map:match pattern="mail.xsp">
>               <map:generate type="serverpages" 
> src="cocoon:/sendmail.xsp" />
>               <map:transform src="mail.xsl"/><!-- xsl logic 
> based on the 
> result element -->
>               <map:serialize type="html"/>
>       </map:match>
> 
> It seems like it should be much easier than this, however. Is there a 
> better way?
> Thanks!
> 
> 
> n
> 
> 
> ---------------------------------------------------------------------
> 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]>

Reply via email to