KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > apache > strutsel > taglib > bean > ELIncludeTagBeanInfo


1 /*
2  * $Id: ELIncludeTagBeanInfo.java 54933 2004-10-16 17:04:52Z germuska $
3  *
4  * Copyright 1999-2004 The Apache Software Foundation.
5  *
6  * Licensed under the Apache License, Version 2.0 (the "License");
7  * you may not use this file except in compliance with the License.
8  * You may obtain a copy of the License at
9  *
10  * http://www.apache.org/licenses/LICENSE-2.0
11  *
12  * Unless required by applicable law or agreed to in writing, software
13  * distributed under the License is distributed on an "AS IS" BASIS,
14  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15  * See the License for the specific language governing permissions and
16  * limitations under the License.
17  */

18
19 package org.apache.strutsel.taglib.bean;
20
21 import java.beans.PropertyDescriptor JavaDoc;
22 import java.beans.IntrospectionException JavaDoc;
23 import java.beans.SimpleBeanInfo JavaDoc;
24 import java.util.ArrayList JavaDoc;
25
26 /**
27  * This is the <code>BeanInfo</code> descriptor for the
28  * <code>org.apache.strutsel.taglib.bean.ELIncludeTag</code> class. It is
29  * needed to override the default mapping of custom tag attribute names to
30  * class attribute names.
31  *<p>
32  * This is because the value of the unevaluated EL expression has to be kept
33  * separately from the evaluated value, which is stored in the base class. This
34  * is related to the fact that the JSP compiler can choose to reuse different
35  * tag instances if they received the same original attribute values, and the
36  * JSP compiler can choose to not re-call the setter methods, because it can
37  * assume the same values are already set.
38  */

39 public class ELIncludeTagBeanInfo extends SimpleBeanInfo JavaDoc
40 {
41     public PropertyDescriptor JavaDoc[] getPropertyDescriptors()
42     {
43         ArrayList JavaDoc proplist = new ArrayList JavaDoc();
44
45         try {
46             proplist.add(new PropertyDescriptor JavaDoc("anchor", ELIncludeTag.class,
47                                                 null, "setAnchorExpr"));
48         } catch (IntrospectionException JavaDoc ex) {}
49         try {
50             proplist.add(new PropertyDescriptor JavaDoc("forward", ELIncludeTag.class,
51                                                 null, "setForwardExpr"));
52         } catch (IntrospectionException JavaDoc ex) {}
53         try {
54             proplist.add(new PropertyDescriptor JavaDoc("href", ELIncludeTag.class,
55                                                 null, "setHrefExpr"));
56         } catch (IntrospectionException JavaDoc ex) {}
57         try {
58             proplist.add(new PropertyDescriptor JavaDoc("id", ELIncludeTag.class,
59                                                 null, "setIdExpr"));
60         } catch (IntrospectionException JavaDoc ex) {}
61         try {
62             proplist.add(new PropertyDescriptor JavaDoc("name", ELIncludeTag.class,
63                                                 null, "setNameExpr"));
64         } catch (IntrospectionException JavaDoc ex) {}
65         try {
66             proplist.add(new PropertyDescriptor JavaDoc("page", ELIncludeTag.class,
67                                                 null, "setPageExpr"));
68         } catch (IntrospectionException JavaDoc ex) {}
69         try {
70             proplist.add(new PropertyDescriptor JavaDoc("transaction",
71                                                 ELIncludeTag.class,
72                                                 null, "setTransactionExpr"));
73         } catch (IntrospectionException JavaDoc ex) {}
74
75         PropertyDescriptor JavaDoc[] result =
76             new PropertyDescriptor JavaDoc[proplist.size()];
77         return ((PropertyDescriptor JavaDoc[]) proplist.toArray(result));
78     }
79 }
80
Popular Tags