1 package fr.improve.struts.taglib.layout; 2 3 import javax.servlet.jsp.JspException ; 4 import javax.servlet.jsp.PageContext ; 5 import javax.servlet.jsp.tagext.TagSupport ; 6 7 import fr.improve.struts.taglib.layout.util.ParentFinder; 8 9 15 public abstract class LayoutTagSupport extends TagSupport implements LayoutTag { 16 19 public final PageContext getPageContext() { 20 return pageContext; 21 } 22 23 31 public final int doStartTag() throws JspException { 32 ParentFinder.registerTag(pageContext, this); 33 initDynamicValues(); 34 return doStartLayoutTag(); 35 } 36 37 45 public final int doEndTag() throws JspException { 46 try { 47 return doEndLayoutTag(); 48 } finally { 49 reset(); 50 ParentFinder.deregisterTag(pageContext); 51 } 52 } 53 54 public int doStartLayoutTag() throws JspException { 55 return super.doStartTag(); 56 } 57 public int doEndLayoutTag() throws JspException { 58 return super.doEndTag(); 59 } 60 61 64 protected void initDynamicValues() { 65 } 67 68 71 protected void reset() { 72 } 74 } 75 | Popular Tags |