<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    kapok

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

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

    摘要http://dev2dev.bea.com.cn/techdoc/wlportal/200409255.html

    WebLogic Portal 8.1 Service Pack 2已經(jīng)面世幾個月了。到本文發(fā)表時,Service Pack 3可能也會面世。我利用該版本完成了幾個WebLogic Portal項目,這期間我碰到了幾個大大小小的問題。

    作者:Kunal Mittal

    WebLogic Portal 8.1 Service Pack 2已經(jīng)面世幾個月了。到本文發(fā)表時,Service Pack 3可能也會面世。我利用該版本完成了幾個WebLogic Portal項目,這期間我碰到了幾個大大小小的問題。

    本文將提供幾個技巧和竅門來解決這些問題,并附上合適的代碼片斷幫助門戶(Portal)開發(fā)人員。請注意這幾個代碼片斷可在BEA新聞組和/或作為BEA WebLogic Portal示例的部分中找到,BEA WebLogic Portal示例是與WebLogic Platform下載一同發(fā)布的。不過 ,我已經(jīng)摘錄了這些代碼片斷中的大部分并對其進行了修改,以適應(yīng)我將要在本文中使用的用例。讓我們開始吧……

    技巧 1:登錄門戶
    BEA
    示例箱提供了幾個登錄例子。選擇登錄類型時,有幾件事情要牢記在心:您想支持使用cookie的自動登錄、使用控制器或備份文件的登錄嗎?有一件事要記著,您在登錄后總是希望更新門戶,這樣才能獲得利益。有兩個示例值得關(guān)注,就是位于指南門戶目錄下的AutoLoginBacking.java LoginBacking.java文件。我喜歡為登錄過程使用備份文件,這樣就可以執(zhí)行自動登錄和其他的登錄核對而無需考慮用戶標(biāo)記的確切頁的URL。表1顯示了AutoLoginBacking.java。我已經(jīng)采用了BEA提供的原始AutoLoginBacking.java,并將其與LoginBacking.java合并。在刪除有關(guān)注銷的cooky時我碰到了一些問題。在本例中您將看到一個完整的工作實現(xiàn)(本文的代碼可在www.sys-con.com/weblogic/sourcec.cfm中找到)。

    技巧2:利用Portlet Maximize Minimize工作

    您將經(jīng)常感覺到有必要控制portlet的最大化和最小化行為。我將為您展示一個代碼片斷,對該代碼片斷進行適當(dāng)?shù)恼{(diào)整,就可用于幾乎所有需要的場景。讓我們先看一下代碼,然后我將討論在何時、何處使用這段代碼。

    首先您需要做的是獲得一個PortletBackingContext

    PortletBackingContext context =
    PortletBackingContext.getPortletBackingContext(request);

    在上下文對象上,您可以做一些事情,比如修改模式(View Mode Edit Mode),或修改狀態(tài)(NormalMinimized Maximized)。您將需要這樣的代碼:

    context.setupModeChangeEvent(WindowCapabilities.VIEW.getName());
    context.setupStateChangeEvent(WindowCapabilities.MAXIMIZED.getName());

    您也可以編程來隱藏按鈕。例如,為了隱藏最大化按鈕,可使用如下代碼:

    context.setCapabilityVisible(WindowCapabilities.MAXIMIZED, getName(), false);

    上面所展示的是您在利用portlet的狀態(tài)、模式和可視性工作時所需要的所有代碼行。我已經(jīng)將其用于備份文件和控制器。例如,考慮如下的用例:

    1.       您有4個頁面,每個頁面有一些portlet。比如說用戶位于Page 1,并且他們將Portlet最大化。接著他們轉(zhuǎn)到Page 2。當(dāng)他們回到Page 1時,默認情況下已經(jīng)最大化的Portlet仍將保持最大化。如果希望恢復(fù)該頁面,那么您需要使用一個位于頁面或Portlet級的備份文件。

    2.       您已經(jīng)在Portlet標(biāo)題欄上啟用了EDIT按鈕。如果您希望編輯頁始終以最大化視圖的方式顯示,那么您仍然需要備份文件。在這種情況下,您需要檢查模式,如果模式為EDIT,那么您需要將porlet最大化,類似地,如果模式為VIEW,則您需要將portlet恢復(fù)到其最初的狀態(tài)。

    3.       您不希望將最大化按鈕顯示給用戶,但您仍然支持上面的兩種用例。在這種情況下,您無法關(guān)閉最大化功能,但是您可以使用上述代碼隱藏圖標(biāo)。

    4.       您也可在控制器的beforeAction() afterAction()方法中使用該代碼,以便控制portlet的行為。

    技巧3:為控制器刷新Action

    Service Pack 2中發(fā)布了一個補丁,每次刷新頁面時,該補丁可強制控制器重新執(zhí)行。沒有該補丁,在刷新時控制器就不會執(zhí)行(補丁編號為CR129301,來自BEA)。本人推薦您下載這個補丁,因為您將幾乎確定無疑地需要它。該補丁有希望成為Service Pack 3的一部分。

    技巧4SR 168 Portlet中的IconUrl

    您無法使用WebLogic Workshop中的iconUrl特性來為JSR 168 portlet設(shè)置標(biāo)題欄中的圖形。您需要編輯weblogic-portlet.xml文件來完成這項工組。請參見下面的代碼片斷。

            <portlet>

                 <portlet-name>myPortlet</portlet-name>

                <supports>

                     <mime-type>text/html</mime-type>

                    <titlebar-presentation>

                            <id>jsr-titlebar</id>

                           <icon-url>window-icon.gif</icon-url>

                   </titlebar-presentation>

               </portlet>

    技巧5DotPortal 與流動模式

    這些模式的基本不同之處在于,您是要從那些在EAR中綁定的XML文件中還是要從數(shù)據(jù)庫中讀取門戶定義。在流動模式中部署,以便為portlet定義權(quán)利是一個不錯的主意。并且,在流動模式中您可以動態(tài)地控制portlet的布局、外觀和感覺以及其他的類似用戶屬性。

    從開發(fā)的觀點來看,這里真正的技巧在于保持所有URL的關(guān)系。在流動模式中,所有的URL都將改變,因此您需要注意這一點。這里有一個代碼片斷,可以使用它檢查您是處于DotPortal還是流動模式。

    <%@ page import="com.bea.netuix.servlets.manager.AppContext"%>

            if (session.getAttribute("DOT_PORTAL") == null)

            {

                AppContext appContext = AppContext.getAppContext(request);

                if (appContext.isDotPortal())

                {

                    session.setAttribute("DOT_PORTAL", new Boolean(true));

                }

                else

                {

                    session.setAttribute("DOT_PORTAL", new Boolean(false));

                }

            }

    結(jié)束語

    本文針對我在建立門戶應(yīng)用程序的過程中碰到的常見問題,提供了一些簡單的技巧和竅門。這些技巧和竅門中有很多與那些應(yīng)該成為Service Pack 3一部分的補丁和bug有關(guān)。其他的則是一些基于您特定的用例的簡單調(diào)整。

    關(guān)于作者

    Kunal MittalWeb服務(wù)和面向服務(wù)的架構(gòu)的實現(xiàn)和策略顧問。他與其他人共同編著和撰寫了幾本JavaWebLogic Web 服務(wù)方面的書籍。(更多

    源代碼

    Source Code - Zip file

    posted on 2005-04-22 22:10 笨笨 閱讀(339) 評論(0)  編輯  收藏 所屬分類: J2EEALLWeblogic Portal
    主站蜘蛛池模板: 亚洲国产成人久久精品软件 | 女人18特级一级毛片免费视频| 亚洲精品美女网站| 亚洲短视频在线观看| 久久亚洲精品无码| 日本不卡在线观看免费v| 国产精品视频永久免费播放| a一级毛片免费高清在线| 猫咪免费观看人成网站在线| 亚洲欧洲精品视频在线观看| 亚洲精品成人网站在线播放| 亚洲精品国产成人中文| 亚洲日韩在线第一页| 国产亚洲精品精品国产亚洲综合| 免费无码黄十八禁网站在线观看| 成全视频免费观看在线看| 光棍天堂免费手机观看在线观看| 日韩国产精品亚洲а∨天堂免| 亚洲视频一区二区三区| 亚洲国产精品综合久久久| 中文字幕亚洲情99在线| 无码亚洲成a人在线观看| 无遮挡a级毛片免费看| 亚洲人成电影网站久久| 天天综合亚洲色在线精品| 精品一区二区三区无码免费直播| 亚洲一卡二卡三卡| 亚洲国产精品无码久久久秋霞1| 亚洲第一成年人网站| 亚洲AV日韩综合一区| 久久国产精品免费一区| 久久久国产精品无码免费专区| 国产男女爽爽爽免费视频 | 91精品免费国产高清在线| 三上悠亚电影全集免费 | 免费99热在线观看| 午夜色a大片在线观看免费| 又黄又爽一线毛片免费观看| 亚洲中文字幕无码久久综合网| 亚洲精品黄色视频在线观看免费资源| 日本高清色本免费现在观看|