1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21 package org.apache.struts.util;
22
23 import org.apache.struts.action.ActionMessage;
24
25 /**
26 * Used for specialized exception handling.
27 */
28 public class ModuleException extends Exception {
29 protected String property = null;
30
31 /**
32 * The ActionMessage associated with this exception.
33 *
34 * @since Struts 1.2
35 */
36 protected ActionMessage message = null;
37
38 /**
39 * Construct an module exception with no replacement values.
40 *
41 * @param key Message key for this error message
42 */
43 public ModuleException(String key) {
44 super(key);
45 message = new ActionMessage(key);
46 }
47
48 /**
49 * Construct an module exception with the specified replacement values.
50 *
51 * @param key Message key for this error message
52 * @param value First replacement value
53 */
54 public ModuleException(String key, Object value) {
55 super(key);
56 message = new ActionMessage(key, value);
57 }
58
59 /**
60 * Construct an module exception with the specified replacement values.
61 *
62 * @param key Message key for this error message
63 * @param value0 First replacement value
64 * @param value1 Second replacement value
65 */
66 public ModuleException(String key, Object value0, Object value1) {
67 super(key);
68 message = new ActionMessage(key, value0, value1);
69 }
70
71 /**
72 * Construct an module exception with the specified replacement values.
73 *
74 * @param key Message key for this error message
75 * @param value0 First replacement value
76 * @param value1 Second replacement value
77 * @param value2 Third replacement value
78 */
79 public ModuleException(String key, Object value0, Object value1,
80 Object value2) {
81 super(key);
82 message = new ActionMessage(key, value0, value1, value2);
83 }
84
85 /**
86 * Construct an module exception with the specified replacement values.
87 *
88 * @param key Message key for this error message
89 * @param value0 First replacement value
90 * @param value1 Second replacement value
91 * @param value2 Third replacement value
92 * @param value3 Fourth replacement value
93 */
94 public ModuleException(String key, Object value0, Object value1,
95 Object value2, Object value3) {
96 super(key);
97 message = new ActionMessage(key, value0, value1, value2, value3);
98 }
99
100 /**
101 * Construct an error with the specified replacement values.
102 *
103 * @param key Message key for this message
104 * @param values Array of replacement values
105 */
106 public ModuleException(String key, Object[] values) {
107 super(key);
108 message = new ActionMessage(key, values);
109 }
110
111 /**
112 * Returns the property associated with the exception.
113 *
114 * @return Value of property.
115 */
116 public String getProperty() {
117 return (property != null) ? property : message.getKey();
118 }
119
120 /**
121 * Set the property associated with the exception. It can be a name of the
122 * edit field, which 'caused' the exception.
123 */
124 public void setProperty(String property) {
125 this.property = property;
126 }
127
128 /**
129 * Returns the error associated with the exception.
130 *
131 * @return Value of property error.
132 * @since Struts 1.2
133 */
134 public ActionMessage getActionMessage() {
135 return this.message;
136 }
137 }