国产一级a片免费看高清,亚洲熟女中文字幕在线视频,黄三级高清在线播放,免费黄色视频在线看

打開APP
userphoto
未登錄

開通VIP,暢享免費電子書等14項超值服

開通VIP
Portlet應(yīng)用開發(fā)實例
目的:
       開發(fā)一個符合JSR-168標(biāo)準(zhǔn)的Portlet應(yīng)用,將其部署到Jetspeed2上。熟悉Portlet應(yīng)用的開發(fā)過程和了解Jetspeed2對Portlet應(yīng)用的支持情況。
 
背景資料:
       JSR-168標(biāo)準(zhǔn):由Java Community Process(JCP)于2003年10月7日發(fā)布的Portlet Specification 1.0最終版本。定義了Portlet應(yīng)用的標(biāo)準(zhǔn)接口。獲得業(yè)界的廣泛支持。
 
內(nèi)容:
       1、Portlet應(yīng)用代碼
       本文中的介紹的Portlet應(yīng)用是由IBM developerworks提供的一個簡單Hello World示例。包括了doView方法顯示一個jsp頁面。使用Portlet中的processAction方法處理jsp中From表單提交的數(shù)據(jù),并把得到的數(shù)據(jù)放到一個Java Bean中,該Java Bean又被放到PortletSession中供jsp文件調(diào)用。具體說明和源碼下載可參見:
 
       2、編輯打包
       在編輯時需要兩個標(biāo)準(zhǔn)類庫:portlet-api-1.0.jar和pluto-1.0.1.jar。
       注意:在打包時不要將這兩個類庫包含進去。因為在Tomcat/shared/lib里已經(jīng)有了,不然就會報Cannot create Portlet instance錯誤。
       使用JDK的jar命令把項目文件打包成web archive 文件。
 
       3、發(fā)布
       將打包生成的HelloWorld.war文件拷貝到/jetspeed/WEB-INF/deploy目錄下即可。系統(tǒng)會自動部署到Portal中。
 
       4、調(diào)用
       在頁面編輯狀態(tài)下,點擊新增Portlet會出現(xiàn)“Portlet選擇器”。里面會新增一個“HelloWorld portlet”應(yīng)用。選中后確定就可將其添加到頁面中。
 
       除此之外還有個更簡單的辦法可以顯示portlet。在/jetspeed/WEB-INF/pages目錄下的default-page.psml文件中增加一個fragment定義。
<fragment id="dp-19" type="portlet" name="HelloWorld::HelloWorldPortlet">
           <property name="row" value="6"/>
           <property name="column" value="0"/>
</fragment>
       其中:
           id 為任意項
           name 為${portlet.application.id}和${portlet.name}的組合。
           ${portlet.application.id}是實際的war文件名;${portlet.name}為在portlet.xml中定義的<portlet-name>。
          row ,column為頁面中的位置。
 
       5、錯誤及解決方法
       將應(yīng)用部署到頁面后發(fā)現(xiàn)不能正常顯示,報Portlet is Not Available錯誤。
經(jīng)過對日志分析,原來jetspeed2不支持PropertyManager容器服務(wù)。在代碼里使用了renderRequest.getProperty("wps.markup")獲得這個初始化參數(shù)的值。
       修改程序通過初始化來獲得參數(shù)的值。
private static String defaultMarkupSource = "";
 
    /**
     * Initialize portlet configuration.
     */
    public void init(PortletConfig config) throws PortletException
      {
        super.init(config);
 
        defaultMarkupSource = config.getInitParameter("wps.markup");
      }
 
private static String getJspFilePath(RenderRequest request, String jspFile)
      {
        //String markup = request.getProperty("wps.markup");
        String markup = defaultMarkupSource;
 
        if (markup == null)
          {
            markup = getMarkup(request.getResponseContentType());
          }
 
        return JSP_FOLDER + markup + "/" + jspFile + "." +
        getJspExtension(markup);
      }
 
       重新編譯部署,應(yīng)用即可正常顯示。
 
總結(jié):
       Jetspeed2.0支持JSR-168標(biāo)準(zhǔn),Portlet應(yīng)用可方便地部署到Jetspeed2.0上,操作非常便捷。應(yīng)用可正常運行。不足之處就是不支持Property Manager服務(wù),造成一些Portlet應(yīng)用的移植困難。
 
參考資料:
       楊江,《Hello World,一個簡單的JSR 168 portlet》,

本站僅提供存儲服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊舉報
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
Portal實現(xiàn)原理
基于 Struts 2 構(gòu)建 WebSphere Portal 上的 Portlet 應(yīng)用
liferay 配置文件說明
Portal Framework介紹 - 神話大牛
有話好好說: 幾種開源Portal的簡單介紹分析
PORTAL門戶平臺(27個)
更多類似文章 >>
生活服務(wù)
分享 收藏 導(dǎo)長圖 關(guān)注 下載文章
綁定賬號成功
后續(xù)可登錄賬號暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點擊這里聯(lián)系客服!

聯(lián)系客服