kapok

          垃圾桶,嘿嘿,我藏的這么深你們還能找到啊,真牛!

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

          http://e-docs.bea.com/wlp/docs81/ipcguide/howworks.html#1001022

          Understanding Backing Files

          The portal you created in A Simple Example of Establishing IPC uses backing files to achieve communication between two portlets. Backing files allow you to programatically add functionality to a portlet by implementing (or extending) a Java class, which enables preprocessing (for example, authentication) prior to rendering the portal controls.

          What are Backing Files?

          Backing files are simple Java classes that implement the com.bea.netuix.servlets.controls.content.backing.JspBacking interface or extend the com.bea.netuix.servlets.controls.content.backing.AbstractJspBacking interface abstract class. The methods on the interface mimic the controls lifecycle methods (see How Backing Files are Executed) and are invoked at the same time the controls lifecycle methods are invoked.

          Which Controls Support Backing Files?

          At this time, the following controls support backing files:

          • Desktops
          • Books
          • Pages
          • Portlets

          How Backing Files are Executed

          All backing files are executed before and after the JSP is called. In its lifecycle, each backing file calls these methods:

          • init()
          • handlePostBackData()
            • raiseChangeEvents()
          • preRender()
          • dispose()

          On every request, the following occurs:

          1. All init() methods are called on all backing files on an "in order" basis (that is, in the order they appear in the control tree; for more information on the control tree and its lifecycle please see Controls in the white paper). This method gets called whether or not the control (that is, portal, page, book, or desktop) is on an active page.
          2. Next, if the operation is a postback and the control (a portlet, page, or book) is on a visible page, all handlePostbackData() methods are called. In other words if portlet is on a page but its parent page is not active, then this method will not get called.
            • If _nfpb="true" is set in the request parameter of any handlePostbackData() methods called, raiseChangeEvents() is called. This method causes events to fire.
          3. Next, all preRender() methods are called for all controls on an active (visible) page.
          4. Next, the JSPs get called and are rendered on the active page by the <render:beginRender> JSP tag. Rendering is stopped with the <render:endRender> tag.
          5. Finally, the dispose() method gets called on the backing file.

          Thread Safety with Backing Files

          A new instance of a backing file is created per request, so you don't have to worry about thread safety issues. New Java VMs are specially tuned for short-lived objects, so this is not the performance issues it once was in the past. Also, JspContent controls support a special type of backing file that allows you to specify whether or not the backing file is thread safe. If this value is set to true, only one instance of the backing file is created and shared across all requests.




          <?xml version="1.0" encoding="UTF-8"?>
          <portal:root xmlns:netuix="    xmlns:portal="    xmlns:xsi="    <netuix:portlet backingFile="backing.Listening" definitionLabel="portlet_5" title="bPortlet">
                  <netuix:handlePortalEvent event="onMinimize" eventLabel="handlePortalEvent1"
                      filterable="true" fromSelfInstanceOnly="false" onlyIfDisplayed="true" sourceDefinitionLabels="portlet_4">
                      <netuix:invokeBackingFileMethod method="handlePortalEvent"/>
                  </netuix:handlePortalEvent>
                  <netuix:titlebar>
                      <netuix:maximize/>
                      <netuix:minimize/>
                      <netuix:delete/>
                  </netuix:titlebar>
                  <netuix:content>
                      <netuix:jspContent contentUri="/bPortlet.jsp"/>
                  </netuix:content>
              </netuix:portlet>
          </portal:root>




          <A class=bea-portal-button
          href="
          http://localhost:7001/JSR168PortalWebProject/appmanager/jsr168portal/desktop1?_nfpb=true&amp;_windowLabel=T6011&amp;_mode=edit&amp;_pageLabel=P2001">Edit
          </A>

          posted on 2005-04-22 14:52 笨笨 閱讀(460) 評論(0)  編輯  收藏 所屬分類: J2EEALLWeblogic Portal
          主站蜘蛛池模板: 华池县| 安远县| 津南区| 华安县| 阳曲县| 习水县| 德安县| 安塞县| 霞浦县| 中牟县| 十堰市| 西城区| 宜兴市| 浮梁县| 霍山县| 沂源县| 双城市| 山西省| 吐鲁番市| 林甸县| 盐池县| 仁寿县| 汶上县| 出国| 揭阳市| 新巴尔虎右旗| 明溪县| 平阴县| 临沭县| 新竹县| 方城县| 石家庄市| 临夏县| 福安市| 横山县| 襄垣县| 康平县| 岑巩县| 略阳县| 万宁市| 龙川县|