out = pc.popBody();
}
}
tempResult = footag.doEndTag();
tempObject = pc.getAttribute("myFoo");
} finally {
footag.release();
}
FooResult myFoo = (FooResult) tempObject;
if (tempResult == SKIP_PAGE) {
goto endOfPage; // pseudo code
}
and the evaluation of 
...
 is essentially the same:
bartag.setPageContext(pc);
bartag.setParent(footag);
bartag.setId( myBar );
try {
if (bartag.doStartTag() == EVAL_BODY_TAG) {
try {
out = pc.pushBody();
bartag.setBodyContent(out);
bartag.doInitBody();
repeat3:
EVAL chunk3;
if (bartag.doAfterBody() == EVAL_BODY_TAG) {
goto repeat3; // pseudo code
}
} finally {
out = pc.popBody();
}
}
tempResult = bartag.doEndTag();
tempObject = pc.getAttribute("myBar");
} finally {
bartag.release();
}
BarResult myBar = (BarResult) tempObject;
if (tempResult == SKIP_PAGE) {
goto endOfPage; // pseudo code
}
143
JavaServer Pages 1.1 Specification  
November 30, 1999




JSP Web Hosting JavaServer Pages Specifications JSP Hosting




 
TotalRoute.net Business web hosting division of Vision Web Hosting Inc. All rights reserved.