1 /*
2 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
3 *
4 * Copyright 1997-2007 Sun Microsystems, Inc. All rights reserved.
5 *
6 * The contents of this file are subject to the terms of either the GNU
7 * General Public License Version 2 only ("GPL") or the Common Development
8 * and Distribution License("CDDL") (collectively, the "License"). You
9 * may not use this file except in compliance with the License. You can obtain
10 * a copy of the License at https://glassfish.dev.java.net/public/CDDL+GPL.html
11 * or glassfish/bootstrap/legal/LICENSE.txt. See the License for the specific
12 * language governing permissions and limitations under the License.
13 *
14 * When distributing the software, include this License Header Notice in each
15 * file and include the License file at glassfish/bootstrap/legal/LICENSE.txt.
16 * Sun designates this particular file as subject to the "Classpath" exception
17 * as provided by Sun in the GPL Version 2 section of the License file that
18 * accompanied this code. If applicable, add the following below the License
19 * Header, with the fields enclosed by brackets [] replaced by your own
20 * identifying information: "Portions Copyrighted [year]
21 * [name of copyright owner]"
22 *
23 * Contributor(s):
24 *
25 * If you wish your version of this file to be governed by only the CDDL or
26 * only the GPL Version 2, indicate your decision by adding "[Contributor]
27 * elects to include this software in this distribution under the [CDDL or GPL
28 * Version 2] license." If you don't indicate a single choice of license, a
29 * recipient has the option to distribute your version of this file under
30 * either the CDDL, the GPL Version 2 or to extend the choice of license to
31 * its licensees as provided above. However, if you add GPL Version 2 code
32 * and therefore, elected the GPL Version 2 license, then the option applies
33 * only if the new code is made subject to such option by the copyright
34 * holder.
35 */
36 package javax.faces.component.html;
37
38 import java.io.IOException;
39 import java.util.List;
40 import java.util.ArrayList;
41 import java.util.Arrays;
42
43 import javax.faces.context.FacesContext;
44 import javax.el.MethodExpression;
45 import javax.el.ValueExpression;
46
47
48 /*
49 * ******* GENERATED CODE - DO NOT EDIT *******
50 */
51
52
53 /**
54 * <p>Represents an HTML <code>input</code> element
55 * of type <code>text</code>.</p>
56 * <p>By default, the <code>rendererType</code> property must be set to "<code>javax.faces.Text</code>".
57 * This value can be changed by calling the <code>setRendererType()</code> method.</p>
58 */
59 public class HtmlInputText extends javax.faces.component.UIInput {
60
61
62
63 private static final String[] OPTIMIZED_PACKAGES = {
64 "javax.faces.component",
65 "javax.faces.component.html"
66 };
67
68 public HtmlInputText() {
69 super();
70 setRendererType("javax.faces.Text");
71 }
72
73
74 /**
75 * <p>The standard component type for this component.</p>
76 */
77 public static final String COMPONENT_TYPE = "javax.faces.HtmlInputText";
78
79
80 private java.lang.String accesskey;
81 /**
82 * <p>Return the value of the <code>accesskey</code> property.</p>
83 * <p>Contents: Access key that, when pressed, transfers focus
84 * to this element.
85 */
86 public java.lang.String getAccesskey() {
87 if (null != this.accesskey) {
88 return this.accesskey;
89 }
90 ValueExpression _ve = getValueExpression("accesskey");
91 if (_ve != null) {
92 return (java.lang.String) _ve.getValue(getFacesContext().getELContext());
93 } else {
94 return null;
95 }
96 }
97
98 /**
99 * <p>Set the value of the <code>accesskey</code> property.</p>
100 */
101 public void setAccesskey(java.lang.String accesskey) {
102 this.accesskey = accesskey;
103 handleAttribute("accesskey", accesskey);
104 }
105
106
107 private java.lang.String alt;
108 /**
109 * <p>Return the value of the <code>alt</code> property.</p>
110 * <p>Contents: Alternate textual description of the
111 * element rendered by this component.
112 */
113 public java.lang.String getAlt() {
114 if (null != this.alt) {
115 return this.alt;
116 }
117 ValueExpression _ve = getValueExpression("alt");
118 if (_ve != null) {
119 return (java.lang.String) _ve.getValue(getFacesContext().getELContext());
120 } else {
121 return null;
122 }
123 }
124
125 /**
126 * <p>Set the value of the <code>alt</code> property.</p>
127 */
128 public void setAlt(java.lang.String alt) {
129 this.alt = alt;
130 handleAttribute("alt", alt);
131 }
132
133
134 private java.lang.String autocomplete;
135 /**
136 * <p>Return the value of the <code>autocomplete</code> property.</p>
137 * <p>Contents: If the value of this attribute is "off", render "off" as the value
138 * of the attribute. This indicates that the browser should
139 * disable its autocomplete feature for this component. This is
140 * useful for components that perform autocompletion and do not
141 * want the browser interfering. If this attribute is not set or the value
142 * is "on", render nothing.
143 */
144 public java.lang.String getAutocomplete() {
145 if (null != this.autocomplete) {
146 return this.autocomplete;
147 }
148 ValueExpression _ve = getValueExpression("autocomplete");
149 if (_ve != null) {
150 return (java.lang.String) _ve.getValue(getFacesContext().getELContext());
151 } else {
152 return null;
153 }
154 }
155
156 /**
157 * <p>Set the value of the <code>autocomplete</code> property.</p>
158 */
159 public void setAutocomplete(java.lang.String autocomplete) {
160 this.autocomplete = autocomplete;
161 }
162
163
164 private java.lang.String dir;
165 /**
166 * <p>Return the value of the <code>dir</code> property.</p>
167 * <p>Contents: Direction indication for text that does not inherit directionality.
168 * Valid values are "LTR" (left-to-right) and "RTL" (right-to-left).
169 */
170 public java.lang.String getDir() {
171 if (null != this.dir) {
172 return this.dir;
173 }
174 ValueExpression _ve = getValueExpression("dir");
175 if (_ve != null) {
176 return (java.lang.String) _ve.getValue(getFacesContext().getELContext());
177 } else {
178 return null;
179 }
180 }
181
182 /**
183 * <p>Set the value of the <code>dir</code> property.</p>
184 */
185 public void setDir(java.lang.String dir) {
186 this.dir = dir;
187 handleAttribute("dir", dir);
188 }
189
190
191 private java.lang.Boolean disabled;
192 /**
193 * <p>Return the value of the <code>disabled</code> property.</p>
194 * <p>Contents: Flag indicating that this element must never receive focus or
195 * be included in a subsequent submit. A value of false causes
196 * no attribute to be rendered, while a value of true causes the
197 * attribute to be rendered as disabled="disabled".
198 */
199 public boolean isDisabled() {
200 if (null != this.disabled) {
201 return this.disabled;
202 }
203 ValueExpression _ve = getValueExpression("disabled");
204 if (_ve != null) {
205 return (java.lang.Boolean) _ve.getValue(getFacesContext().getELContext());
206 } else {
207 return false;
208 }
209 }
210
211 /**
212 * <p>Set the value of the <code>disabled</code> property.</p>
213 */
214 public void setDisabled(boolean disabled) {
215 this.disabled = disabled;
216 }
217
218
219 private java.lang.String label;
220 /**
221 * <p>Return the value of the <code>label</code> property.</p>
222 * <p>Contents: A localized user presentable name for this component.
223 */
224 public java.lang.String getLabel() {
225 if (null != this.label) {
226 return this.label;
227 }
228 ValueExpression _ve = getValueExpression("label");
229 if (_ve != null) {
230 return (java.lang.String) _ve.getValue(getFacesContext().getELContext());
231 } else {
232 return null;
233 }
234 }
235
236 /**
237 * <p>Set the value of the <code>label</code> property.</p>
238 */
239 public void setLabel(java.lang.String label) {
240 this.label = label;
241 }
242
243
244 private java.lang.String lang;
245 /**
246 * <p>Return the value of the <code>lang</code> property.</p>
247 * <p>Contents: Code describing the language used in the generated markup
248 * for this component.
249 */
250 public java.lang.String getLang() {
251 if (null != this.lang) {
252 return this.lang;
253 }
254 ValueExpression _ve = getValueExpression("lang");
255 if (_ve != null) {
256 return (java.lang.String) _ve.getValue(getFacesContext().getELContext());
257 } else {
258 return null;
259 }
260 }
261
262 /**
263 * <p>Set the value of the <code>lang</code> property.</p>
264 */
265 public void setLang(java.lang.String lang) {
266 this.lang = lang;
267 handleAttribute("lang", lang);
268 }
269
270
271 private java.lang.Integer maxlength;
272 /**
273 * <p>Return the value of the <code>maxlength</code> property.</p>
274 * <p>Contents: The maximum number of characters that may
275 * be entered in this field.
276 */
277 public int getMaxlength() {
278 if (null != this.maxlength) {
279 return this.maxlength;
280 }
281 ValueExpression _ve = getValueExpression("maxlength");
282 if (_ve != null) {
283 return (java.lang.Integer) _ve.getValue(getFacesContext().getELContext());
284 } else {
285 return Integer.MIN_VALUE;
286 }
287 }
288
289 /**
290 * <p>Set the value of the <code>maxlength</code> property.</p>
291 */
292 public void setMaxlength(int maxlength) {
293 this.maxlength = maxlength;
294 handleAttribute("maxlength", maxlength);
295 }
296
297
298 private java.lang.String onblur;
299 /**
300 * <p>Return the value of the <code>onblur</code> property.</p>
301 * <p>Contents: Javascript code executed when this element loses focus.
302 */
303 public java.lang.String getOnblur() {
304 if (null != this.onblur) {
305 return this.onblur;
306 }
307 ValueExpression _ve = getValueExpression("onblur");
308 if (_ve != null) {
309 return (java.lang.String) _ve.getValue(getFacesContext().getELContext());
310 } else {
311 return null;
312 }
313 }
314
315 /**
316 * <p>Set the value of the <code>onblur</code> property.</p>
317 */
318 public void setOnblur(java.lang.String onblur) {
319 this.onblur = onblur;
320 handleAttribute("onblur", onblur);
321 }
322
323
324 private java.lang.String onchange;
325 /**
326 * <p>Return the value of the <code>onchange</code> property.</p>
327 * <p>Contents: Javascript code executed when this element loses focus
328 * and its value has been modified since gaining focus.
329 */
330 public java.lang.String getOnchange() {
331 if (null != this.onchange) {
332 return this.onchange;
333 }
334 ValueExpression _ve = getValueExpression("onchange");
335 if (_ve != null) {
336 return (java.lang.String) _ve.getValue(getFacesContext().getELContext());
337 } else {
338 return null;
339 }
340 }
341
342 /**
343 * <p>Set the value of the <code>onchange</code> property.</p>
344 */
345 public void setOnchange(java.lang.String onchange) {
346 this.onchange = onchange;
347 handleAttribute("onchange", onchange);
348 }
349
350
351 private java.lang.String onclick;
352 /**
353 * <p>Return the value of the <code>onclick</code> property.</p>
354 * <p>Contents: Javascript code executed when a pointer button is
355 * clicked over this element.
356 */
357 public java.lang.String getOnclick() {
358 if (null != this.onclick) {
359 return this.onclick;
360 }
361 ValueExpression _ve = getValueExpression("onclick");
362 if (_ve != null) {
363 return (java.lang.String) _ve.getValue(getFacesContext().getELContext());
364 } else {
365 return null;
366 }
367 }
368
369 /**
370 * <p>Set the value of the <code>onclick</code> property.</p>
371 */
372 public void setOnclick(java.lang.String onclick) {
373 this.onclick = onclick;
374 handleAttribute("onclick", onclick);
375 }
376
377
378 private java.lang.String ondblclick;
379 /**
380 * <p>Return the value of the <code>ondblclick</code> property.</p>
381 * <p>Contents: Javascript code executed when a pointer button is
382 * double clicked over this element.
383 */
384 public java.lang.String getOndblclick() {
385 if (null != this.ondblclick) {
386 return this.ondblclick;
387 }
388 ValueExpression _ve = getValueExpression("ondblclick");
389 if (_ve != null) {
390 return (java.lang.String) _ve.getValue(getFacesContext().getELContext());
391 } else {
392 return null;
393 }
394 }
395
396 /**
397 * <p>Set the value of the <code>ondblclick</code> property.</p>
398 */
399 public void setOndblclick(java.lang.String ondblclick) {
400 this.ondblclick = ondblclick;
401 handleAttribute("ondblclick", ondblclick);
402 }
403
404
405 private java.lang.String onfocus;
406 /**
407 * <p>Return the value of the <code>onfocus</code> property.</p>
408 * <p>Contents: Javascript code executed when this element receives focus.
409 */
410 public java.lang.String getOnfocus() {
411 if (null != this.onfocus) {
412 return this.onfocus;
413 }
414 ValueExpression _ve = getValueExpression("onfocus");
415 if (_ve != null) {
416 return (java.lang.String) _ve.getValue(getFacesContext().getELContext());
417 } else {
418 return null;
419 }
420 }
421
422 /**
423 * <p>Set the value of the <code>onfocus</code> property.</p>
424 */
425 public void setOnfocus(java.lang.String onfocus) {
426 this.onfocus = onfocus;
427 handleAttribute("onfocus", onfocus);
428 }
429
430
431 private java.lang.String onkeydown;
432 /**
433 * <p>Return the value of the <code>onkeydown</code> property.</p>
434 * <p>Contents: Javascript code executed when a key is
435 * pressed down over this element.
436 */
437 public java.lang.String getOnkeydown() {
438 if (null != this.onkeydown) {
439 return this.onkeydown;
440 }
441 ValueExpression _ve = getValueExpression("onkeydown");
442 if (_ve != null) {
443 return (java.lang.String) _ve.getValue(getFacesContext().getELContext());
444 } else {
445 return null;
446 }
447 }
448
449 /**
450 * <p>Set the value of the <code>onkeydown</code> property.</p>
451 */
452 public void setOnkeydown(java.lang.String onkeydown) {
453 this.onkeydown = onkeydown;
454 handleAttribute("onkeydown", onkeydown);
455 }
456
457
458 private java.lang.String onkeypress;
459 /**
460 * <p>Return the value of the <code>onkeypress</code> property.</p>
461 * <p>Contents: Javascript code executed when a key is
462 * pressed and released over this element.
463 */
464 public java.lang.String getOnkeypress() {
465 if (null != this.onkeypress) {
466 return this.onkeypress;
467 }
468 ValueExpression _ve = getValueExpression("onkeypress");
469 if (_ve != null) {
470 return (java.lang.String) _ve.getValue(getFacesContext().getELContext());
471 } else {
472 return null;
473 }
474 }
475
476 /**
477 * <p>Set the value of the <code>onkeypress</code> property.</p>
478 */
479 public void setOnkeypress(java.lang.String onkeypress) {
480 this.onkeypress = onkeypress;
481 handleAttribute("onkeypress", onkeypress);
482 }
483
484
485 private java.lang.String onkeyup;
486 /**
487 * <p>Return the value of the <code>onkeyup</code> property.</p>
488 * <p>Contents: Javascript code executed when a key is
489 * released over this element.
490 */
491 public java.lang.String getOnkeyup() {
492 if (null != this.onkeyup) {
493 return this.onkeyup;
494 }
495 ValueExpression _ve = getValueExpression("onkeyup");
496 if (_ve != null) {
497 return (java.lang.String) _ve.getValue(getFacesContext().getELContext());
498 } else {
499 return null;
500 }
501 }
502
503 /**
504 * <p>Set the value of the <code>onkeyup</code> property.</p>
505 */
506 public void setOnkeyup(java.lang.String onkeyup) {
507 this.onkeyup = onkeyup;
508 handleAttribute("onkeyup", onkeyup);
509 }
510
511
512 private java.lang.String onmousedown;
513 /**
514 * <p>Return the value of the <code>onmousedown</code> property.</p>
515 * <p>Contents: Javascript code executed when a pointer button is
516 * pressed down over this element.
517 */
518 public java.lang.String getOnmousedown() {
519 if (null != this.onmousedown) {
520 return this.onmousedown;
521 }
522 ValueExpression _ve = getValueExpression("onmousedown");
523 if (_ve != null) {
524 return (java.lang.String) _ve.getValue(getFacesContext().getELContext());
525 } else {
526 return null;
527 }
528 }
529
530 /**
531 * <p>Set the value of the <code>onmousedown</code> property.</p>
532 */
533 public void setOnmousedown(java.lang.String onmousedown) {
534 this.onmousedown = onmousedown;
535 handleAttribute("onmousedown", onmousedown);
536 }
537
538
539 private java.lang.String onmousemove;
540 /**
541 * <p>Return the value of the <code>onmousemove</code> property.</p>
542 * <p>Contents: Javascript code executed when a pointer button is
543 * moved within this element.
544 */
545 public java.lang.String getOnmousemove() {
546 if (null != this.onmousemove) {
547 return this.onmousemove;
548 }
549 ValueExpression _ve = getValueExpression("onmousemove");
550 if (_ve != null) {
551 return (java.lang.String) _ve.getValue(getFacesContext().getELContext());
552 } else {
553 return null;
554 }
555 }
556
557 /**
558 * <p>Set the value of the <code>onmousemove</code> property.</p>
559 */
560 public void setOnmousemove(java.lang.String onmousemove) {
561 this.onmousemove = onmousemove;
562 handleAttribute("onmousemove", onmousemove);
563 }
564
565
566 private java.lang.String onmouseout;
567 /**
568 * <p>Return the value of the <code>onmouseout</code> property.</p>
569 * <p>Contents: Javascript code executed when a pointer button is
570 * moved away from this element.
571 */
572 public java.lang.String getOnmouseout() {
573 if (null != this.onmouseout) {
574 return this.onmouseout;
575 }
576 ValueExpression _ve = getValueExpression("onmouseout");
577 if (_ve != null) {
578 return (java.lang.String) _ve.getValue(getFacesContext().getELContext());
579 } else {
580 return null;
581 }
582 }
583
584 /**
585 * <p>Set the value of the <code>onmouseout</code> property.</p>
586 */
587 public void setOnmouseout(java.lang.String onmouseout) {
588 this.onmouseout = onmouseout;
589 handleAttribute("onmouseout", onmouseout);
590 }
591
592
593 private java.lang.String onmouseover;
594 /**
595 * <p>Return the value of the <code>onmouseover</code> property.</p>
596 * <p>Contents: Javascript code executed when a pointer button is
597 * moved onto this element.
598 */
599 public java.lang.String getOnmouseover() {
600 if (null != this.onmouseover) {
601 return this.onmouseover;
602 }
603 ValueExpression _ve = getValueExpression("onmouseover");
604 if (_ve != null) {
605 return (java.lang.String) _ve.getValue(getFacesContext().getELContext());
606 } else {
607 return null;
608 }
609 }
610
611 /**
612 * <p>Set the value of the <code>onmouseover</code> property.</p>
613 */
614 public void setOnmouseover(java.lang.String onmouseover) {
615 this.onmouseover = onmouseover;
616 handleAttribute("onmouseover", onmouseover);
617 }
618
619
620 private java.lang.String onmouseup;
621 /**
622 * <p>Return the value of the <code>onmouseup</code> property.</p>
623 * <p>Contents: Javascript code executed when a pointer button is
624 * released over this element.
625 */
626 public java.lang.String getOnmouseup() {
627 if (null != this.onmouseup) {
628 return this.onmouseup;
629 }
630 ValueExpression _ve = getValueExpression("onmouseup");
631 if (_ve != null) {
632 return (java.lang.String) _ve.getValue(getFacesContext().getELContext());
633 } else {
634 return null;
635 }
636 }
637
638 /**
639 * <p>Set the value of the <code>onmouseup</code> property.</p>
640 */
641 public void setOnmouseup(java.lang.String onmouseup) {
642 this.onmouseup = onmouseup;
643 handleAttribute("onmouseup", onmouseup);
644 }
645
646
647 private java.lang.String onselect;
648 /**
649 * <p>Return the value of the <code>onselect</code> property.</p>
650 * <p>Contents: Javascript code executed when text within this
651 * element is selected by the user.
652 */
653 public java.lang.String getOnselect() {
654 if (null != this.onselect) {
655 return this.onselect;
656 }
657 ValueExpression _ve = getValueExpression("onselect");
658 if (_ve != null) {
659 return (java.lang.String) _ve.getValue(getFacesContext().getELContext());
660 } else {
661 return null;
662 }
663 }
664
665 /**
666 * <p>Set the value of the <code>onselect</code> property.</p>
667 */
668 public void setOnselect(java.lang.String onselect) {
669 this.onselect = onselect;
670 handleAttribute("onselect", onselect);
671 }
672
673
674 private java.lang.Boolean readonly;
675 /**
676 * <p>Return the value of the <code>readonly</code> property.</p>
677 * <p>Contents: Flag indicating that this component will prohibit changes by
678 * the user. The element may receive focus unless it has also
679 * been disabled. A value of false causes
680 * no attribute to be rendered, while a value of true causes the
681 * attribute to be rendered as readonly="readonly".
682 */
683 public boolean isReadonly() {
684 if (null != this.readonly) {
685 return this.readonly;
686 }
687 ValueExpression _ve = getValueExpression("readonly");
688 if (_ve != null) {
689 return (java.lang.Boolean) _ve.getValue(getFacesContext().getELContext());
690 } else {
691 return false;
692 }
693 }
694
695 /**
696 * <p>Set the value of the <code>readonly</code> property.</p>
697 */
698 public void setReadonly(boolean readonly) {
699 this.readonly = readonly;
700 }
701
702
703 private java.lang.Integer size;
704 /**
705 * <p>Return the value of the <code>size</code> property.</p>
706 * <p>Contents: The number of characters used to determine
707 * the width of this field.
708 */
709 public int getSize() {
710 if (null != this.size) {
711 return this.size;
712 }
713 ValueExpression _ve = getValueExpression("size");
714 if (_ve != null) {
715 return (java.lang.Integer) _ve.getValue(getFacesContext().getELContext());
716 } else {
717 return Integer.MIN_VALUE;
718 }
719 }
720
721 /**
722 * <p>Set the value of the <code>size</code> property.</p>
723 */
724 public void setSize(int size) {
725 this.size = size;
726 handleAttribute("size", size);
727 }
728
729
730 private java.lang.String style;
731 /**
732 * <p>Return the value of the <code>style</code> property.</p>
733 * <p>Contents: CSS style(s) to be applied when this component is rendered.
734 */
735 public java.lang.String getStyle() {
736 if (null != this.style) {
737 return this.style;
738 }
739 ValueExpression _ve = getValueExpression("style");
740 if (_ve != null) {
741 return (java.lang.String) _ve.getValue(getFacesContext().getELContext());
742 } else {
743 return null;
744 }
745 }
746
747 /**
748 * <p>Set the value of the <code>style</code> property.</p>
749 */
750 public void setStyle(java.lang.String style) {
751 this.style = style;
752 handleAttribute("style", style);
753 }
754
755
756 private java.lang.String styleClass;
757 /**
758 * <p>Return the value of the <code>styleClass</code> property.</p>
759 * <p>Contents: Space-separated list of CSS style class(es) to be applied when
760 * this element is rendered. This value must be passed through
761 * as the "class" attribute on generated markup.
762 */
763 public java.lang.String getStyleClass() {
764 if (null != this.styleClass) {
765 return this.styleClass;
766 }
767 ValueExpression _ve = getValueExpression("styleClass");
768 if (_ve != null) {
769 return (java.lang.String) _ve.getValue(getFacesContext().getELContext());
770 } else {
771 return null;
772 }
773 }
774
775 /**
776 * <p>Set the value of the <code>styleClass</code> property.</p>
777 */
778 public void setStyleClass(java.lang.String styleClass) {
779 this.styleClass = styleClass;
780 }
781
782
783 private java.lang.String tabindex;
784 /**
785 * <p>Return the value of the <code>tabindex</code> property.</p>
786 * <p>Contents: Position of this element in the tabbing order
787 * for the current document. This value must be
788 * an integer between 0 and 32767.
789 */
790 public java.lang.String getTabindex() {
791 if (null != this.tabindex) {
792 return this.tabindex;
793 }
794 ValueExpression _ve = getValueExpression("tabindex");
795 if (_ve != null) {
796 return (java.lang.String) _ve.getValue(getFacesContext().getELContext());
797 } else {
798 return null;
799 }
800 }
801
802 /**
803 * <p>Set the value of the <code>tabindex</code> property.</p>
804 */
805 public void setTabindex(java.lang.String tabindex) {
806 this.tabindex = tabindex;
807 handleAttribute("tabindex", tabindex);
808 }
809
810
811 private java.lang.String title;
812 /**
813 * <p>Return the value of the <code>title</code> property.</p>
814 * <p>Contents: Advisory title information about markup elements generated
815 * for this component.
816 */
817 public java.lang.String getTitle() {
818 if (null != this.title) {
819 return this.title;
820 }
821 ValueExpression _ve = getValueExpression("title");
822 if (_ve != null) {
823 return (java.lang.String) _ve.getValue(getFacesContext().getELContext());
824 } else {
825 return null;
826 }
827 }
828
829 /**
830 * <p>Set the value of the <code>title</code> property.</p>
831 */
832 public void setTitle(java.lang.String title) {
833 this.title = title;
834 handleAttribute("title", title);
835 }
836
837
838 private Object[] _values;
839
840 public Object saveState(FacesContext _context) {
841 if (_values == null) {
842 _values = new Object[29];
843 }
844 _values[0] = super.saveState(_context);
845 _values[1] = accesskey;
846 _values[2] = alt;
847 _values[3] = autocomplete;
848 _values[4] = dir;
849 _values[5] = disabled;
850 _values[6] = label;
851 _values[7] = lang;
852 _values[8] = maxlength;
853 _values[9] = onblur;
854 _values[10] = onchange;
855 _values[11] = onclick;
856 _values[12] = ondblclick;
857 _values[13] = onfocus;
858 _values[14] = onkeydown;
859 _values[15] = onkeypress;
860 _values[16] = onkeyup;
861 _values[17] = onmousedown;
862 _values[18] = onmousemove;
863 _values[19] = onmouseout;
864 _values[20] = onmouseover;
865 _values[21] = onmouseup;
866 _values[22] = onselect;
867 _values[23] = readonly;
868 _values[24] = size;
869 _values[25] = style;
870 _values[26] = styleClass;
871 _values[27] = tabindex;
872 _values[28] = title;
873 return _values;
874 }
875
876
877 public void restoreState(FacesContext _context, Object _state) {
878 _values = (Object[]) _state;
879 super.restoreState(_context, _values[0]);
880 this.accesskey = (java.lang.String) _values[1];
881 this.alt = (java.lang.String) _values[2];
882 this.autocomplete = (java.lang.String) _values[3];
883 this.dir = (java.lang.String) _values[4];
884 this.disabled = (java.lang.Boolean) _values[5];
885 this.label = (java.lang.String) _values[6];
886 this.lang = (java.lang.String) _values[7];
887 this.maxlength = (java.lang.Integer) _values[8];
888 this.onblur = (java.lang.String) _values[9];
889 this.onchange = (java.lang.String) _values[10];
890 this.onclick = (java.lang.String) _values[11];
891 this.ondblclick = (java.lang.String) _values[12];
892 this.onfocus = (java.lang.String) _values[13];
893 this.onkeydown = (java.lang.String) _values[14];
894 this.onkeypress = (java.lang.String) _values[15];
895 this.onkeyup = (java.lang.String) _values[16];
896 this.onmousedown = (java.lang.String) _values[17];
897 this.onmousemove = (java.lang.String) _values[18];
898 this.onmouseout = (java.lang.String) _values[19];
899 this.onmouseover = (java.lang.String) _values[20];
900 this.onmouseup = (java.lang.String) _values[21];
901 this.onselect = (java.lang.String) _values[22];
902 this.readonly = (java.lang.Boolean) _values[23];
903 this.size = (java.lang.Integer) _values[24];
904 this.style = (java.lang.String) _values[25];
905 this.styleClass = (java.lang.String) _values[26];
906 this.tabindex = (java.lang.String) _values[27];
907 this.title = (java.lang.String) _values[28];
908 }
909
910
911 private void handleAttribute(String name, Object value) {
912 List<String> setAttributes = null;
913 String pkg = this.getClass().getPackage().getName();
914 if (Arrays.binarySearch(OPTIMIZED_PACKAGES, pkg) >= 0) {
915 setAttributes = (List<String>) this.getAttributes().get("javax.faces.component.UIComponentBase.attributesThatAreSet");
916 if (setAttributes == null) {
917 setAttributes = new ArrayList<String>(6);
918 this.getAttributes().put("javax.faces.component.UIComponentBase.attributesThatAreSet", setAttributes);
919 }
920 if (value == null) {
921 setAttributes.remove(name);
922 } else if (!setAttributes.contains(name)) {
923 setAttributes.add(name);
924 }
925 }
926 }
927
928 }