soufan

            BlogJava :: 首頁 :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理 ::
            22 隨筆 :: 0 文章 :: 0 評論 :: 0 Trackbacks

          使用backing bean來添加UIComponents 到頁面中?

          下面是一個例子:

          jsp1.jsp:

          <%@taglib uri="http://java.sun.com/jsf/core" prefix="f"%>
          <%@taglib uri="http://java.sun.com/jsf/html" prefix="h"%>
          <%@taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
          <html>
          <f:view>
          <head>
          <title>jsp1</title>
            <link rel="stylesheet" type="text/css" href="./style.css" title="Style"/>
          </head>
          <body bgcolor="#ffffff">  TESTING...
            <h:form id="form1">
              <h:panelGrid id="panelgridtest" binding="#{jsp1Bean.component}"/>
            </h:form>
          </body>
          </f:view>
          </html>
          

          ?

          Jsp1Bean.java:

          package?test;
          ?
          import?javax.faces.application.Application;
          import?javax.faces.component.UIComponent;
          import?javax.faces.component.UIPanel;
          import?javax.faces.component.UIViewRoot;
          import?javax.faces.component.html.HtmlInputText;
          import?javax.faces.component.html.HtmlOutputText;
          import?javax.faces.context.FacesContext;
          ?
          public?class?Jsp1Bean
          {
          ????UIComponent?component?=?null;
          ????FacesContext?facesContext?=?FacesContext.getCurrentInstance();
          ????UIViewRoot?uIViewRoot?=?facesContext.getViewRoot();
          ????Application?application?=?facesContext.getApplication();
          ?
          ????public?Jsp1Bean()
          ????{
          ????}
          ?
          ????public?UIComponent?getComponent()
          ????{
          ????????if?(component?==?null)
          ????????{
          ????????????component?=?new?UIPanel();
          ????????}
          ????????return?component;
          ????}
          ?
          ????public?void?setComponent(UIComponent?component)
          ????{
          ????????this.component?=?component;
          ????}
          ?
          ?????//initialization?block
          ????{
          ????????try
          ????????{
          ????????????//outputText1
          ????????????HtmlOutputText?outputText1?=?(HtmlOutputText)?
          ??????????????facesContext.getApplication().createComponent(HtmlOutputText.COMPONENT_TYPE);
          ????????????outputText1.setValue("---the?outputText1?value---");
          ????????????//inputText1
          ????????????HtmlInputText?inputText1?=?(HtmlInputText)
          ????????????????facesContext.getApplication().createComponent(HtmlInputText.COMPONENT_TYPE);
          ????????????inputText1.setValue("---the?inputText1?value---");
          ?
          ????????????//add?outputText1?and?inputText1?to?component?("UIPanel")
          ????????????this.getComponent().getChildren().add(outputText1);
          ????????????this.getComponent().getChildren().add(inputText1);
          ????????}
          ????????catch?(java.lang.Throwable?t)
          ????????{
          ????????????System.out.println("java.lang.Throwable?exception?encountered...t.getMessage()="?+?t.getMessage());
          ????????????t.printStackTrace();
          ????????}
          ????}
          ?
          ????public?String?doAction()
          ????{
          ????????return?"submit";
          ????}
          }

          ?

          faces-config.xml:

          <?xml version="1.0" encoding="UTF-8"?>
          <!DOCTYPE faces-config PUBLIC "-//Sun Microsystems, Inc.//DTD JavaServer Faces Config 1.1//EN"
                                        "http://java.sun.com/dtd/web-facesconfig_1_1.dtd">
          <faces-config>
            <navigation-rule>
              <from-view-id>/jsp1</from-view-id>
              <navigation-case>
                <from-action>submit</from-action>
                <to-view-id>/jsp1</to-view-id>
                <redirect/>
              </navigation-case>
            </navigation-rule>
            <managed-bean>
              <managed-bean-name>jsp1Bean</managed-bean-name>
              <managed-bean-class>test.Jsp1Bean</managed-bean-class>
              <managed-bean-scope>session</managed-bean-scope>
            </managed-bean>
          </faces-config>
          
          posted on 2006-12-19 16:14 soufan 閱讀(244) 評論(0)  編輯  收藏

          只有注冊用戶登錄后才能發(fā)表評論。


          網(wǎng)站導航:
           
          主站蜘蛛池模板: 宽城| 赞皇县| 英山县| 平利县| 澄江县| 安岳县| 阳曲县| 资源县| 同德县| 民权县| 栾川县| 平江县| 正阳县| 乐山市| 巴南区| 思南县| 荥经县| 苍梧县| 卢氏县| 灵宝市| 泰州市| 赤城县| 林西县| 鄯善县| 东方市| 松原市| 呼图壁县| 秦皇岛市| 泸定县| 宝应县| 从化市| 三穗县| 桃园县| 夏津县| 福泉市| 太白县| 文化| 阜新市| 桓台县| 册亨县| 千阳县|