01 /*
02 * Copyright 2004 The Apache Software Foundation
03 *
04 * Licensed under the Apache License, Version 2.0 (the "License");
05 * you may not use this file except in compliance with the License.
06 * You may obtain a copy of the License at
07 *
08 * http://www.apache.org/licenses/LICENSE-2.0
09 *
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
15 */
16
17 package javax.servlet.jsp.tagext;
18
19 /**
20 * A validation message from either TagLibraryValidator or TagExtraInfo.
21 * <p>
22 * As of JSP 2.0, a JSP container must support a jsp:id attribute
23 * to provide higher quality validation errors.
24 * The container will track the JSP pages
25 * as passed to the container, and will assign to each element
26 * a unique "id", which is passed as the value of the jsp:id
27 * attribute. Each XML element in the XML view available will
28 * be extended with this attribute. The TagLibraryValidator
29 * can then use the attribute in one or more ValidationMessage
30 * objects. The container then, in turn, can use these
31 * values to provide more precise information on the location
32 * of an error.
33 *
34 * <p>
35 * The actual prefix of the <code>id</code> attribute may or may not be
36 * <code>jsp</code> but it will always map to the namespace
37 * <code>http://java.sun.com/JSP/Page</code>. A TagLibraryValidator
38 * implementation must rely on the uri, not the prefix, of the <code>id</code>
39 * attribute.
40 */
41
42 public class ValidationMessage {
43
44 /**
45 * Create a ValidationMessage. The message String should be
46 * non-null. The value of id may be null, if the message
47 * is not specific to any XML element, or if no jsp:id
48 * attributes were passed on. If non-null, the value of
49 * id must be the value of a jsp:id attribute for the PageData
50 * passed into the validate() method.
51 *
52 * @param id Either null, or the value of a jsp:id attribute.
53 * @param message A localized validation message.
54 */
55 public ValidationMessage(String id, String message) {
56 this .id = id;
57 this .message = message;
58 }
59
60 /**
61 * Get the jsp:id.
62 * Null means that there is no information available.
63 *
64 * @return The jsp:id information.
65 */
66 public String getId() {
67 return id;
68 }
69
70 /**
71 * Get the localized validation message.
72 *
73 * @return A validation message
74 */
75 public String getMessage() {
76 return message;
77 }
78
79 // Private data
80 private String id;
81 private String message;
82 }
|