📄 inserttag.java
字号:
/* */package org.impact.stars.taglib;import javax.servlet.jsp.JspTagException;import javax.servlet.jsp.tagext.TagSupport;import org.impact.stars.control.web.Parameter;import org.impact.stars.control.web.ScreenFlowManager;import org.impact.stars.util.WebKeys;import org.impact.stars.util.Debug;/** * This class is an easy interface to the JSP template or other * text that needs to be inserted. */public class InsertTag extends TagSupport { private boolean directInclude = false; private String parameter = null; private Parameter parameterRef = null; private ScreenFlowManager screenManager; /** * default constructor */ public InsertTag() { super(); } public void setParameter(String parameter){ this.parameter = parameter; } public int doStartTag() throws JspTagException { try{ pageContext.getOut().flush(); } catch (Exception e){ // do nothing } // load the ScreenFlowManager try{ screenManager = (ScreenFlowManager)pageContext.getServletContext().getAttribute(WebKeys.ScreenManagerKey); } catch (NullPointerException e){ throw new JspTagException("Error extracting screenManager from session: " + e); } if ((screenManager != null) && (parameter != null)) { parameterRef = (Parameter)screenManager.getParameter(parameter,pageContext.getSession()); } else { Debug.println("InsertTag: screenManager is null"); } if (parameterRef != null) directInclude = parameterRef.isDirect(); return SKIP_BODY; } public int doEndTag() throws JspTagException { try { if (directInclude && parameterRef != null) { pageContext.getOut().print(parameterRef.getValue()); } else if (parameterRef != null) { if (parameterRef.getValue() != null) pageContext.getRequest().getRequestDispatcher(parameterRef.getValue()).include(pageContext.getRequest(), pageContext.getResponse()); } } catch (Exception ex) { Debug.println("InsertTag:doEndTag caught: " + ex); } return EVAL_PAGE; }}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -