📄 webworktagsupport.java
字号:
/* * WebWork, Web Application Framework * * Distributable under Apache license. * See terms of license at opensource.org */package webwork.view.taglib;import webwork.util.ServletValueStack;import webwork.util.BeanUtil;import webwork.action.ValidationEditorSupport;import javax.servlet.jsp.PageContext;import javax.servlet.jsp.tagext.Tag;import javax.servlet.jsp.tagext.TagSupport;import java.io.ByteArrayOutputStream;import java.io.PrintWriter;import java.beans.PropertyEditor;/** * Base class for tags. * * @author Rickard 謆erg (rickard@dreambean.com) * @version $Revision: 1.8 $ */public abstract class WebWorkTagSupport extends TagSupport{ protected ServletValueStack stack; // BodyTagSupport overrides -------------------------------------- public void setPageContext(PageContext aPageContext) { super.setPageContext(aPageContext); stack = null; } public void setParent(Tag aTag) { super.setParent(aTag); stack = null; } // Protected ----------------------------------------------------- protected ServletValueStack getStack() { if (stack == null) stack = ServletValueStack.getStack(pageContext); else { // Set the pageContext in the stack to make sure that the context // is the correct one, since the same stack is used for the whole // request, which can mean several different pageContexts stack.setContext(pageContext); } return stack; } protected Object findValue(String aName) { return getStack().findValue(aName); } /** * Will return the string value of the object. If the object * has a ValidationEditor then its getAsText() will be called * which by default calls toString() unless you override it. */ protected String findString(String aName) { String result = null; Object value = getStack().findValue(aName); if (value!=null) { result = BeanUtil.toStringValue(value); } return result; } protected String toString(Throwable t) { ByteArrayOutputStream bout = new ByteArrayOutputStream(); PrintWriter wrt = new PrintWriter(bout); t.printStackTrace(wrt); wrt.close(); return bout.toString(); } public void release() { stack = null; }}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -