1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 package examples;
17
18
19 import javax.servlet.jsp.*;
20 import javax.servlet.jsp.tagext.*;
21
22 import java.io.IOException;
23
24 /**
25 * Log the contents of the body. Could be used to handle errors etc.
26 */
27 public class LogTag
28 extends ExampleTagBase
29 {
30 boolean toBrowser = false;
31
32 public void setToBrowser(String value) {
33 if (value == null)
34 toBrowser = false;
35 else if (value.equalsIgnoreCase("true"))
36 toBrowser = true;
37 else
38 toBrowser = false;
39 }
40
41 public int doStartTag() throws JspException {
42 return EVAL_BODY_TAG;
43 }
44
45 public int doAfterBody() throws JspException {
46 try {
47 String s = bodyOut.getString();
48 System.err.println(s);
49 if (toBrowser)
50 bodyOut.writeOut(bodyOut.getEnclosingWriter());
51 return SKIP_BODY;
52 } catch (IOException ex) {
53 throw new JspTagException(ex.toString());
54 }
55 }
56 }
57
58
59
60