1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18 package org.apache.struts2.components;
19
20 import java.util.ArrayList;
21 import java.util.List;
22
23 import javax.servlet.http.HttpServletRequest;
24 import javax.servlet.http.HttpServletResponse;
25
26 import org.apache.struts2.components.Param.UnnamedParametric;
27
28 import com.opensymphony.xwork2.util.ValueStack;
29
30 /***
31 * <!-- START SNIPPET: javadoc -->
32 *
33 * Render field errors if they exists. Specific layout depends on the particular theme.
34 *
35 * <!-- END SNIPPET: javadoc -->
36 *
37 * <p/> <b>Examples</b>
38 *
39 * <pre>
40 * <!-- START SNIPPET: example -->
41 *
42 * <!-- example 1 -->
43 * <s:fielderror />
44 *
45 * <!-- example 2 -->
46 * <s:fielderror>
47 * <s:param>field1</s:param>
48 * <s:param>field2</s:param>
49 * </s:fielderror>
50 * <s:form .... >>
51 * ....
52 * </s:form>
53 *
54 * OR
55 *
56 * <s:fielderror>
57 * <s:param value="%{'field1'}" />
58 * <s:param value="%{'field2'}" />
59 * </s:fielderror>
60 * <s:form .... >>
61 * ....
62 * </s:form>
63 *
64 * <!-- END SNIPPET: example -->
65 * </pre>
66 *
67 *
68 * <p/> <b>Description</b><p/>
69 *
70 *
71 * <pre>
72 * <!-- START SNIPPET: description -->
73 *
74 * Example 1: display all field errors<p/>
75 * Example 2: display field errors only for 'field1' and 'field2'<p/>
76 *
77 * <!-- END SNIPPET: description -->
78 * </pre>
79 *
80 * @s.tag name="fielderror" tld-body-content="JSP" tld-tag-class="org.apache.struts2.views.jsp.ui.FieldErrorTag"
81 * description="Render field error (all or partial depending on param tag nested)if they exists"
82 */
83 public class FieldError extends UIBean implements UnnamedParametric {
84
85 private List errorFieldNames = new ArrayList();
86
87 public FieldError(ValueStack stack, HttpServletRequest request, HttpServletResponse response) {
88 super(stack, request, response);
89 }
90
91 private static final String TEMPLATE = "fielderror";
92
93 protected String getDefaultTemplate() {
94 return TEMPLATE;
95 }
96
97 public void addParameter(Object value) {
98 if (value != null) {
99 errorFieldNames.add(value.toString());
100 }
101 }
102
103 public List getFieldErrorFieldNames() {
104 return errorFieldNames;
105 }
106 }
107