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

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

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

    Junky's IT Notebook

    統計

    留言簿(8)

    積分與排名

    WebSphere Studio

    閱讀排行榜

    評論排行榜

    Liferay的授權與內容管理(轉)

    Liferay的授權與內容管理

     

    本節主要內容是Liferay的授權操作以及內容管理,在介紹授權早作的同時將結合上一篇的內容,探討程序背后的執行流程,也會凸現出在進行自己的portlet開發時所要注意的權限相關代碼,為portlet的開發打下基礎。

     

     liferay-portal-4.1.2的權限管理主要有2部分構成:

    1.user的部門歸屬

    2.對單個portlet的授權

     

    超級用戶登陸系統后,將進入超級用戶的管理界面,管理界面總共有GuestPrivateCMSSupport 四層組成,即在Myplace中的4種視圖, 現對其進行介紹.

    Guest視圖:主要管理普通用戶的所訪問的主頁內容,在此視圖中可以管理展現在主頁上的各個portlet,管理portlet中展現的內容以及portlet的展現形式以及方位。Portlet的內容管理放在稍后的視圖中詳細講解,portlet的方位以及顯示形式后可以通過頁面上直接的拖放進行設置。

          默認情況下,我們所列的portlet就是匿名用戶所看到的門戶,在每個portlet的設置中,我們還看到了權限的設置,可以將這個portlet的配置,查看等權限(每個portlet的權限不相同,每個都有配置、查看權限,但是有個復雜的portlet如用戶管理的就有更多的如添加用戶、刪除用戶等權限)授予用戶,這里權限的授予分6級,直接授予用戶,授予組織、授予地點、授予用戶群、授予社群和授予客人(用戶群和社群是自定義的)。Liferay的用戶機制為公司—地點—組織—個人,所以授予某一高級的組,下掛的用戶將都會自動獲得權限。在我的應用中,我將WIKI加入了門戶首頁,同時將察看與刪除授予匿名用戶,所以,首頁就擁有了一個大家參與修改的區域WIKI了!

    Private 視圖:這個是超級用戶的私人界面,這里特別分析了幾個簡單portlet的權限管理的實現。

    HelloWorldPortlet位置Test>helloworld 這個portlet是最簡單的一個展示,而且僅僅只有view的功能,所以這個權限管理就是能否在用戶的視圖中顯示就行了,代碼中的權限代碼無,只是由layout調用HelloWorldPortlet。注:這里是通過設置直接調用HelloWorldPortlet,沒有經過Struts框架,所以代碼直接繼承GenericPortlet,不能由路徑訪問。

    Announcements位置,這個portlet中訪問路徑由struts配置文件指定,這個portlet代碼ViewAction繼承PortletActionPortletAction繼承的是Struts Action.portlet.xml中,

    <name>view-action</name>

    <value>/wiki/view</value>

    指定了這個portletview所調用的路徑,portal容器會根據struts的配置調用指定的Action。在進行action調用時,很顯然通過了Liferay擴展的PortalRequestProcessor(上一篇提到),也就進行了權限檢查。配置Announcements的路徑在liferayportlet.xml中配置,為/announcements/edit_configuration,同樣這也是一個struts路徑,她的權限管理也同view一樣,在PortalRequestProcessor中完成。

    IFramePortlet這個portlet也是一個簡單標簽的使用例子。在這個portlet中,與HelloWorldPortlet相同,也沒有Struts的路徑配置,而是直接在portlet.xml中定義了接受請求的Action,所繼承的StrutsPortlet由于不是由struts Action而是GenericPortlet擴展而來,所以在訪問的時候沒有通過PortalRequestProcessor,所以其內部明確調用了liferay的權限管理代碼:

    PermissionChecker checker =

                 PermissionThreadLocal.getPermissionChecker();

     

    由上面我們所分析的幾個簡單的portlet來看,以后在進行portlet開發時有2種選擇,當邏輯比較少時,我們可以象IFramePortlet一樣,通過對StrutsPortlet的繼承完成。當業務邏輯比較復雜時(多個路徑),采用Struts進行路徑配置時,最好同Announcements一樣,通過繼承PortletAction來將自身開發的portlet納入liferay的權限管理框架中。

     

    CMS視圖:明顯,這個層進行文檔管理,用過Guest視圖就可以知道門戶的所有的新聞文章都在journal中進行管理,對它的使用網上有很多很有用的文章,多用幾次也就熟悉了,強大的文本、圖像編輯功能可以就近使用而不再用自己編碼,肯定也是很愉快的了:)

     

    Support視圖:這個視圖也是其他用戶(非管理員用戶)登陸后的定制頁面,由管理員進行定制,主要操作和上面一致。

    posted on 2007-05-31 13:55 junky 閱讀(1150) 評論(0)  編輯  收藏 所屬分類: portal

    主站蜘蛛池模板: 四虎国产精品永久免费网址| jyzzjyzz国产免费观看| 99久久免费观看| 亚洲国产成人高清在线观看| 国产精品免费久久| 亚洲中文久久精品无码| jyzzjyzz国产免费观看| 国产亚洲精品美女久久久| 中国毛片免费观看| 亚洲AV人无码综合在线观看| 久久九九全国免费| 亚洲酒色1314狠狠做| **真实毛片免费观看| 亚洲国产精品美女| 国产精品免费观看久久| 亚洲天堂男人影院| 全免费一级午夜毛片| 国产成人高清亚洲一区久久| 全黄性性激高免费视频| 一级免费黄色大片| 在线精品亚洲一区二区小说| 成人性生交大片免费看好| 久久久久亚洲精品无码蜜桃| 国产在线观看麻豆91精品免费 | a级毛片在线免费| 久久精品国产亚洲av麻豆小说 | 久久成人无码国产免费播放| 亚洲综合网美国十次| 特级淫片国产免费高清视频| 四虎影视在线看免费观看| 亚洲av无码一区二区三区乱子伦| 麻豆国产精品免费视频| 国产亚洲综合视频| 亚洲色欲久久久综合网| 精品国产无限资源免费观看| 精品亚洲成a人在线观看| 亚洲成熟xxxxx电影| 在线观看免费为成年视频| 成人免费ā片在线观看| 亚洲日韩中文字幕天堂不卡| 四虎影视永久免费观看网址|