soufan

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

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

          下面是一個(gè)例子:

          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)站導(dǎo)航:
           
          主站蜘蛛池模板: 南乐县| 绥宁县| 武穴市| 璧山县| 泊头市| 上林县| 沁水县| 读书| 汾阳市| 长岭县| 绥芬河市| 左贡县| 洛川县| 罗田县| 政和县| 西丰县| 三河市| 南川市| 夏津县| 桐城市| 白朗县| 余干县| 铁岭县| 西充县| 秦皇岛市| 宝兴县| 徐水县| 遂溪县| 宜川县| 乌兰察布市| 牡丹江市| 象州县| 商南县| 黔东| 霍州市| 神池县| 鄂托克前旗| 梓潼县| 万盛区| 灵川县| 宁津县|