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