\r
private PageInfo pageInfo;\r
\r
- private Vector tagHandlerPoolNames;\r
+ private Vector<String> tagHandlerPoolNames;\r
\r
private GenBuffer charArrayBuffer;\r
\r
out.pushIndent();\r
if (isPoolingEnabled) {\r
for (int i = 0; i < tagHandlerPoolNames.size(); i++) {\r
- out.printin((String) tagHandlerPoolNames.elementAt(i));\r
+ out.printin(tagHandlerPoolNames.elementAt(i));\r
out\r
.print(" = org.apache.jasper.runtime.TagHandlerPool.getTagHandlerPool(");\r
if (ctxt.isTagFile()) {\r
\r
if (isPoolingEnabled) {\r
for (int i = 0; i < tagHandlerPoolNames.size(); i++) {\r
- out.printin((String) tagHandlerPoolNames.elementAt(i));\r
- out.println(".release();");\r
+ out.printin("Tag handler = ");\r
+ out.printin(tagHandlerPoolNames.elementAt(i));\r
+ out.println(";");\r
+ out.println("handler.release();");\r
+ out.println("try {");\r
+ out.pushIndent();\r
+ out.println("org.apache.jasper.runtime.AnnotationProcessor.preDestroy(handler);");\r
+ out.popIndent();\r
+ out.println("} catch (Exception e) {");\r
+ out.pushIndent();\r
+ out.println("log(\"Error processing preDestroy on tag instance of \" ");\r
+ out.println(" + handler.getClass().getName());");\r
+ out.popIndent();\r
+ out.println("}");\r
}\r
}\r
\r
out.print("new ");\r
out.print(tagHandlerClassName);\r
out.println("();");\r
+ out.printin("org.apache.jasper.runtime.AnnotationProcessor.postConstruct(");\r
+ out.print(tagHandlerVar);\r
+ out.println(");");\r
}\r
\r
// includes setting the context\r
} else {\r
out.printin(tagHandlerVar);\r
out.println(".release();");\r
+ out.println("try {");\r
+ out.pushIndent();\r
+ out.printin("org.apache.jasper.runtime.AnnotationProcessor.preDestroy(");\r
+ out.print(tagHandlerVar);\r
+ out.println(");");\r
+ out.popIndent();\r
+ out.println("} catch (Exception e) {");\r
+ out.pushIndent();\r
+ out.println("log(\"Error processing preDestroy on tag instance of \" +");\r
+ out.printin(tagHandlerVar);\r
+ out.println(".getClass().getName());");\r
+ out.popIndent();\r
+ out.println("}");\r
}\r
}\r
if (isTagFile || isFragment) {\r
} else {\r
out.printin(tagHandlerVar);\r
out.println(".release();");\r
+ out.println("try {");\r
+ out.pushIndent();\r
+ out.printin("org.apache.jasper.runtime.AnnotationProcessor.preDestroy(");\r
+ out.print(tagHandlerVar);\r
+ out.println(");");\r
+ out.println("} catch (Exception e) {");\r
+ out.println("log(\"Error processing preDestroy on tag instance of \" +");\r
+ out.printin(tagHandlerVar);\r
+ out.println(".getClass().getName());");\r
+ out.popIndent();\r
+ out.println("}");\r
}\r
\r
if (n.implementsTryCatchFinally()) {\r