1 22 23 package org.cofax.taglibs; 24 25 import javax.servlet.*; 26 import javax.servlet.jsp.*; 27 import javax.servlet.jsp.tagext.*; 28 import java.util.*; 29 import org.cofax.*; 30 31 38 public class PrintIfTag extends TagSupport { 39 40 private String name = ""; 41 42 private String value = ""; 43 44 47 public void setName(String v) { 48 name = v; 49 } 50 51 54 public String getName() { 55 return (name); 56 } 57 58 61 public void setValue(String v) { 62 value = v; 63 } 64 65 68 public String getValue() { 69 return (value); 70 } 71 72 75 public int doStartTag() throws JspException { 76 77 PackageTag parent = (PackageTag) findAncestorWithClass(this, PackageTag.class); 78 79 while (parent != null) { 80 if (parent.fieldExists(name)) { 81 82 if (parent.getField(name).trim().length() > 0) { 83 if ((value == null) || (value.equals(""))) { 84 return (EVAL_BODY_INCLUDE); 85 } else if (parent.getField(name).equals(value)) { 86 return (EVAL_BODY_INCLUDE); 87 } 88 } 89 } 90 parent = (PackageTag) findAncestorWithClass(parent, PackageTag.class); 91 } 92 93 ServletRequest req = pageContext.getRequest(); 94 CofaxPage cofaxPage = (CofaxPage) req.getAttribute("cofaxPage"); 95 96 HashMap glossary = cofaxPage.getGlossary().getKeyValues(); 97 98 if (glossary.containsKey(name)) { 99 if (glossary.get(name).toString().trim().length() > 0) { 100 if ((value == null) || (value.equals(""))) { 101 return (EVAL_BODY_INCLUDE); 102 } else if (glossary.get(name).toString().equals(value)) { 103 return (EVAL_BODY_INCLUDE); 104 } 105 } 106 } else { 107 } 108 109 return SKIP_BODY; 110 } 111 112 115 public int doEndTag() throws JspException { 116 return EVAL_PAGE; 117 } 118 } 119 | Popular Tags |