I've been experimenting with (yet another) scripting language called Jelly. Its kinda like JSP custom tags without the JSP, borrowing ideas from Velocity and XDoclet and its really simple & lightweight & embeddable. I plan on integrating BSF so that JavaScript et al could be embedded inside tags with maybe Velocity as an expression language. Jelly could implement the JSTL tags too if need be. There's some documentation in CVS if folks are interested learning more.
The idea behind Jelly was that XML allows extensible tags (e.g. JSTL, Struts etc) so I wanted a simple way to be able to script complex stuff like making a SOAP call, doing XSLT, JMS messaging, HTTP malarkey along with working with Java beans all in a simple XML language. Though I didn't want to base it on JSP so it could be used anywhere (from Ant or whatever). One objective a bit further down the line was to make a simple SOAP scripting engine that based on a WSDL file or some jelly script to make a new tag to do useful stuff. e.g. <babelfish:translate from="en" to="fr"> using simple XML scripting with SOAP under the covers </babelfish:translate> Well I started looking again at Workflow today and it got me thinking - both efforts are kinda similar though from completely different perspectives. All the Steps are quite close, programatically to the Tags I'd started writing. The major difference is the 'run' methods are execute(Context) and run(Context, Writer) respectively. So Jelly allows scripts to output stuff which Workflow does not right now, other than that, spookily similar. Also both Jelly and Workflow have a Context which is similar to an abstraction of JSP scopes and Activity & Block are similar to the Script stuff in Jelly. Quite what all this means I'm not sure :-) but what could be really useful is if we could have a single API for writing 'Steps' or 'Tags' then both projects could share them. e.g. I'm gonna write a bunch of 'tags' for doing HTTP (using httpclient), JMS (using messenger), SOAP (probably using Axis), XSLT as well as the existing XPath ones and JSTL-like core tags using a pluggable expression languages (which right now is beanshell but will be BSF soon). Ultimately I was gonna try plugin XDoclet tags too then we could mix and match scripting languages, JSTL, various other tags and XDoclet all from one 'declarative XML based script'. It'd be nice to be able to share all this stuff across both Workflow and Jelly. Maybe Jelly scripts could be part (or all) of an activity in Workflow too but thats maybe more complex. Thoughts? James -- To unsubscribe, e-mail: <mailto:[EMAIL PROTECTED]> For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>