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

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

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

    兩個portlet之間跳轉(zhuǎn)并傳值

    在不同的Portlet之間傳參數(shù),這想這是所有用Liferay的人都想實現(xiàn)的,但在以前的版本中確實做不到。現(xiàn)在的版本可以了,并且很簡單
     
    首先,打開portlet.xml文件,找到你想實現(xiàn)傳值和接收值的portlet片段,在每個片段中加上下面這行代碼:
    <supported-public-render-parameter>參數(shù)名</supported-public-render-parameter>
    然后,在最后面定義這個參數(shù),寫法是這樣的:
    <public-render-parameter>
      <identifier>參數(shù)名</identifier>
      <qname xmlns:x="http://www.liferay.com/public-render-parameters">x:參數(shù)名</qname>
     </public-render-parameter>
    整體是這樣
    <?xml version="1.0"?>

    <portlet-app
        
    version="2.0"
        xmlns
    ="http://java.sun.com/xml/ns/portlet/portlet-app_2_0.xsd"
        xmlns:xsi
    ="http://www.w3.org/2001/XMLSchema-instance"
        xsi:schemaLocation
    ="http://java.sun.com/xml/ns/portlet/portlet-app_2_0.xsd http://java.sun.com/xml/ns/portlet/portlet-app_2_0.xsd"
    >
        
            
    <portlet>
            
    <portlet-name>chartcontroler</portlet-name>
            
    <display-name>ChartControler</display-name>
            
    <portlet-class>
                com.noah.action.ChartControlerPortlet
            
    </portlet-class>
            
    <init-param>
                
    <name>view-jsp</name>
                
    <value>/html/chartcontroler/view.jsp</value>
            
    </init-param>
            
    <expiration-cache>0</expiration-cache>
            
    <supports>
                
    <mime-type>text/html</mime-type>
                
    <portlet-mode>VIEW</portlet-mode>
            
    </supports>
            
    <resource-bundle>content/Language</resource-bundle>
            
    <portlet-info>
                
    <title>ChartControler</title>
                
    <short-title>ChartControlerPortlet</short-title>
                
    <keywords></keywords>
            
    </portlet-info>
            
    <portlet-preferences>
                
    <preference>
                    
    <name>years</name>
                    
    <value>2010,2011,2012</value>
                
    </preference>
            
    </portlet-preferences>
            
    <security-role-ref>
                
    <role-name>administrator</role-name>
            
    </security-role-ref>
            
    <security-role-ref>
                
    <role-name>guest</role-name>
            
    </security-role-ref>
            
    <security-role-ref>
                
    <role-name>power-user</role-name>
            
    </security-role-ref>
            
    <security-role-ref>
                
    <role-name>user</role-name>
            
    </security-role-ref>
            
    <supported-public-render-parameter>currentYear</supported-public-render-parameter>
            
    <supported-public-render-parameter>report</supported-public-render-parameter>
            
    <supported-public-render-parameter>partner</supported-public-render-parameter>
            
    <supported-public-render-parameter>portfolio</supported-public-render-parameter>
        
    </portlet>
        
    <portlet>
            
    <portlet-name>chart</portlet-name>
            
    <display-name>Chart</display-name>
            
    <portlet-class>com.noah.action.ChartPortlet</portlet-class>
            
    <init-param>
                
    <name>view-jsp</name>
                
    <value>/html/chartportlet/view.jsp</value>
            
    </init-param>
            
    <expiration-cache>0</expiration-cache>
            
    <supports>
                
    <mime-type>text/html</mime-type>
                
    <portlet-mode>VIEW</portlet-mode>
            
    </supports>
            
    <resource-bundle>content/Language</resource-bundle>
            
    <portlet-info>
                
    <title>Chart</title>
                
    <short-title>ChartPortlet</short-title>
                
    <keywords></keywords>
            
    </portlet-info>
            
    <security-role-ref>
                
    <role-name>administrator</role-name>
            
    </security-role-ref>
            
    <security-role-ref>
                
    <role-name>guest</role-name>
            
    </security-role-ref>
            
    <security-role-ref>
                
    <role-name>power-user</role-name>
            
    </security-role-ref>
            
    <security-role-ref>
                
    <role-name>user</role-name>
            
    </security-role-ref>
            
    <supported-public-render-parameter>currentYear</supported-public-render-parameter>
            
    <supported-public-render-parameter>report</supported-public-render-parameter>
            
    <supported-public-render-parameter>partner</supported-public-render-parameter>
            
    <supported-public-render-parameter>portfolio</supported-public-render-parameter>
        
    </portlet>
        
        
    <public-render-parameter>
            
    <identifier>currentYear</identifier>
            
    <qname xmlns:x="http://www.liferay.com/public-render-parameters">x:currentYear</qname>
        
    </public-render-parameter>
        
    <public-render-parameter>
            
    <identifier>report</identifier>
            
    <qname xmlns:x="http://www.liferay.com/public-render-parameters">x:report</qname>
        
    </public-render-parameter>
        
    <public-render-parameter>
            
    <identifier>partner</identifier>
            
    <qname xmlns:x="http://www.liferay.com/public-render-parameters">x:partner</qname>
        
    </public-render-parameter>
        
    <public-render-parameter>
            
    <identifier>portfolio</identifier>
            
    <qname xmlns:x="http://www.liferay.com/public-render-parameters">x:portfolio</qname>
        
    </public-render-parameter>
    </portlet-app>
    對參數(shù)進(jìn)行賦值的話,就是在Action中用下面這句話:
    actionResponse.setRenderParameter("參數(shù)名", 參數(shù)值);
    獲取的話,就直接像取其它參數(shù)一下直接獲取:
    在Action中,String 變量 = ParamUtil.getString(request, "參數(shù)名", "默認(rèn)值");
    在JSP中,<%=renderRequest.getParameter("參數(shù)名")%>
     
    整體代碼如下:
    /**
     * 
    @author noah.xiang
     
    */

    public class ChartControlerPortlet extends MVCPortlet {

        @Override
        
    public void processAction(ActionRequest actionRequest,
                ActionResponse actionResponse) 
    throws IOException, PortletException {
            String currentYear 
    = ParamUtil.getString(actionRequest, "currentYear""2010");
            String report 
    = ParamUtil.getString(actionRequest, "report""");
            String partner 
    = ParamUtil.getString(actionRequest, "partner""Bocholter Energie- und Wasserversorgung GmbH");
            String portfolio 
    = ParamUtil.getString(actionRequest, "portfolio""");
            
            actionResponse.setRenderParameter(
    "currentYear", currentYear);
            actionResponse.setRenderParameter(
    "report", report);
            actionResponse.setRenderParameter(
    "partner", partner);
            actionResponse.setRenderParameter(
    "portfolio", portfolio);
            
    //actionResponse.setRenderParameter("jspPage", "/html/chartportlet/view.jsp");
            super.processAction(actionRequest, actionResponse);
        }


        @Override
        
    public void render(RenderRequest request, RenderResponse response)
                
    throws PortletException, IOException {
            String currentYear 
    = ParamUtil.getString(request, "currentYear""2010");
            String report 
    = ParamUtil.getString(request, "report""");
            String partner 
    = ParamUtil.getString(request, "partner""");
            String portfolio 
    = ParamUtil.getString(request, "portfolio""");

            PortletPreferences prefs 
    = request.getPreferences();
            String years 
    = prefs.getValue("years""2010,2011,2012");
            
    //String portfolios = prefs.getValue("portfolios", "Absatzportfolio: A-a,Absatzportfolio: B-b,Absatzportfolio: C-c");
            
    //String partners = prefs.getValue("partners", "");

            //順便說一下,這一行,可以實現(xiàn)通過Session傳值,有興趣的可以研究一下
            request.getPortletSession().setAttribute(DataPoolUtil.SESSION_SHARED_YEAR, currentYear, PortletSession.APPLICATION_SCOPE);

            request.setAttribute(
    "years", years);
            request.setAttribute(
    "portfolios", portfolio);
            request.setAttribute(
    "currentYear", currentYear);
            request.setAttribute(
    "report", report);
            request.setAttribute(
    "partner", partner);
            
    super.render(request, response);
        }

     

    }
     


    眼鏡蛇

    posted on 2011-10-27 18:36 眼鏡蛇 閱讀(3159) 評論(1)  編輯  收藏 所屬分類: Liferay

    評論

    # re: 兩個portlet之間跳轉(zhuǎn)并傳值[未登錄] 2014-09-26 09:07 dd

    ddd  回復(fù)  更多評論   

    <2014年9月>
    31123456
    78910111213
    14151617181920
    21222324252627
    2829301234
    567891011

    導(dǎo)航

    統(tǒng)計

    常用鏈接

    留言簿(6)

    隨筆分類

    隨筆檔案

    文章分類

    文章檔案

    搜索

    最新評論

    閱讀排行榜

    評論排行榜

    主站蜘蛛池模板: 亚洲Av永久无码精品一区二区| 亚洲福利在线观看| 亚洲依依成人亚洲社区| 日本人的色道免费网站| 久久精品国产96精品亚洲| a级毛片黄免费a级毛片| 亚洲精品成人片在线观看精品字幕| 精品国产免费人成网站| 亚洲人成伊人成综合网久久久| 国产一级一毛免费黄片| 亚洲AV无码专区国产乱码电影| 无码精品国产一区二区三区免费| 亚洲avav天堂av在线不卡| 又粗又大又黑又长的免费视频| 国产亚洲sss在线播放| 成人性生活免费视频| 国产亚洲男人的天堂在线观看| 吃奶摸下高潮60分钟免费视频| 一区二区三区免费视频观看| 亚洲精品夜夜夜妓女网| 1000部拍拍拍18勿入免费视频下载| 亚洲欧洲精品一区二区三区| 成人免费无码大片A毛片抽搐 | 国产成人精品日本亚洲专| 免费黄色毛片视频| v片免费在线观看| 亚洲av无码精品网站| 国产卡一卡二卡三免费入口| 色天使亚洲综合一区二区| 亚洲愉拍99热成人精品热久久 | 国产在线一区二区综合免费视频| 亚洲视频免费一区| 精品国产免费观看| 91视频免费网站| 亚洲午夜一区二区三区| 国产精品亚洲综合专区片高清久久久 | 99久久精品免费精品国产| 亚洲AV无码一区二区三区牲色| 亚洲人成色77777在线观看大| 99久热只有精品视频免费看| 亚洲日韩在线中文字幕综合 |