// Tag interface
//-------------------------------------------------------------------------
public void doTag(XMLOutput output) throws Exception {
// Try find find the body from the reserved 'org.apache.commons.jelly.body' variable
Script script = (Script) context.getVariable("org.apache.commons.jelly.body");
if (script != null) {
script.run(context, output);
}
else {
// note this mechanism does not work properly for arbitrarily
// nested dynamic tags. A better way is required.
Tag tag = findAncestorWithClass(this, DynamicTag.class);