Hi Terry,
I had a similar problem and used XSP with a couple of Java classes to generate the XML. Try sticking something like this in your XSP:
<xsp:logic>
BusinessObject1 busOb = new BusinessObject1();
busOb.setSomething(request.getParameter("something"));
// do whatever else you need with the request object
Document doc = null;
try
{
DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
factory.setNamespaceAware(true);
DocumentBuilder builder = factory.newDocumentBuilder();
ByteArrayInputStream in = new ByteArrayInputStream(busOb.toString().getBytes("UTF8"));
doc = builder.parse(new InputSource(in));
}
catch (Throwable t)
{
// do something with the error
}
</xsp:logic>
<xsp:expr>doc.getDocumentElement()</xsp:expr>
Hope that helps.
Adam
Terry Brick wrote:
Hello,
I've just started using Cocoon (2.1) and so far I'm loving it. The problem is that probably less
than 50% of my XML will be static. The rest will be dynamic generated from SQL interaction, etc. I want to do all (or most) of my business logic in regular ol' Java classes and just spit out the
XML in the right places. Ideally, I would like something like this...
<doc>
<title>My Title</title>
<content>
<mynamespace:generate class="com.mycompany.businessobject1"/>
</content>
</doc>
Where the businessobject1.toString() representation is used to fill in that section with XML and where businessobject1 has access to the servlet context, request parameters, etc. Anyway, I don't require it to be exactly as shown above, I'm just trying to illustrate my basic requirements and am wondering what's the right approach in Cocoon. It's probably obvious to existing users in the doc, but I'm just starting out and am having a hard time getting some aspects of Cocoon. Do I simply need to write a custom generator? I don't want to script things, but do I just need to use XSP to instantiate my class (but I need the servlet request object)? Could somebody please point me in the right direction?
Thanks!
__________________________________
Do you Yahoo!?
Friends. Fun. Try the all-new Yahoo! Messenger.
http://messenger.yahoo.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]
