KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > com > icesoft > faces > webapp > IncludeTag


1 /*
2  * Version: MPL 1.1/GPL 2.0/LGPL 2.1
3  *
4  * "The contents of this file are subject to the Mozilla Public License
5  * Version 1.1 (the "License"); you may not use this file except in
6  * compliance with the License. You may obtain a copy of the License at
7  * http://www.mozilla.org/MPL/
8  *
9  * Software distributed under the License is distributed on an "AS IS"
10  * basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See the
11  * License for the specific language governing rights and limitations under
12  * the License.
13  *
14  * The Original Code is ICEfaces 1.5 open source software code, released
15  * November 5, 2006. The Initial Developer of the Original Code is ICEsoft
16  * Technologies Canada, Corp. Portions created by ICEsoft are Copyright (C)
17  * 2004-2006 ICEsoft Technologies Canada, Corp. All Rights Reserved.
18  *
19  * Contributor(s): _____________________.
20  *
21  * Alternatively, the contents of this file may be used under the terms of
22  * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"
23  * License), in which case the provisions of the LGPL License are
24  * applicable instead of those above. If you wish to allow use of your
25  * version of this file only under the terms of the LGPL License and not to
26  * allow others to use your version of this file under the MPL, indicate
27  * your decision by deleting the provisions above and replace them with
28  * the notice and other provisions required by the LGPL License. If you do
29  * not delete the provisions above, a recipient may use your version of
30  * this file under either the MPL or the LGPL License."
31  *
32  */

33
34 package com.icesoft.faces.webapp;
35
36 import javax.faces.component.UIComponent;
37 import javax.faces.el.ValueBinding;
38 import javax.faces.webapp.UIComponentTag;
39
40 public class IncludeTag extends UIComponentTag {
41
42     public String JavaDoc getComponentType() {
43         return ("javax.faces.Output");
44     }
45
46     public String JavaDoc getRendererType() {
47         return ("com.icesoft.faces.component.Include");
48     }
49
50     private String JavaDoc page;
51
52     public void setPage(String JavaDoc page) {
53         this.page = page;
54     }
55
56     protected void setProperties(UIComponent component) {
57
58         super.setProperties(component);
59
60         if (page != null) {
61             if (isValueReference(page)) {
62                 ValueBinding vb =
63                         getFacesContext().getApplication().
64                                 createValueBinding(page);
65                 component.setValueBinding("page", vb);
66             } else {
67                 component.getAttributes().put("page", page);
68             }
69         }
70
71         component.getAttributes().put("escape", "false");
72         //This should trick parser into regarding dynamic
73
//but the parser is using the wire, so this is too
74
//late. The workaround is that the converter sets this.
75
//isDynamic is arbitrary, what is detected is the expression
76
//syntax in the value.
77
//component.getAttributes().put("isDynamic", "#{}");
78

79     }
80 }
81
82
Popular Tags