1 package com.instantbank.collections.main.web;
2
3 import javax.servlet.jsp.JspException;
4 import javax.servlet.jsp.tagext.TagSupport;
5 import org.w3c.dom.Node;
6
7 public class GetElementValueTag extends TagSupport {
8 private Node element = null;
9
10
11 public void setElement(Node element) {
12 this.element = element;
13 }
14
15
16 public void setId(String id) {
17 this.id = id;
18 }
19
20
21 public int doStartTag() throws JspException {
22 if(element.getNodeType() == Node.ELEMENT_NODE) {
23 String value = getElementText(element);
24 pageContext.setAttribute(id, value);
25 }
26 else {
27 throw new JspException("Node must be an element");
28 }
29 return EVAL_PAGE;
30 }
31
32
33 public void release() {
34 element = null;
35 }
36
37
38 public String getElementText(Node element) {
39 Node child = element.getFirstChild();
40 String text = null;
41
42 if(child != null) {
43 text = child.getNodeValue();
44 }
45
46 return text;
47 }
48 }
49