<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 閱讀(1160) 評論(0)  編輯  收藏 所屬分類: portal

    主站蜘蛛池模板: 深夜特黄a级毛片免费播放| 亚洲中文字幕无码中文字| eeuss影院www天堂免费| 国产午夜无码视频免费网站| 亚洲无人区码一二三码区别图片| 黄色成人网站免费无码av| 亚洲成a人片在线不卡| 免费中文熟妇在线影片| 亚洲日韩精品无码AV海量| 夫妻免费无码V看片| 99亚洲乱人伦aⅴ精品| 亚洲国产综合久久天堂| 一级片在线免费看| 中文字幕在线亚洲精品| 免费福利电影在线观看| 亚洲视频在线免费看| 黄页网站免费观看| 亚洲精品乱码久久久久久蜜桃图片 | 亚洲国产综合在线| 亚洲免费综合色在线视频| 日韩国产精品亚洲а∨天堂免| 免费欧洲毛片A级视频无风险| 日本永久免费a∨在线视频| 亚洲人成人无码网www国产| 国产麻豆成人传媒免费观看| 亚洲酒色1314狠狠做| 免费黄色毛片视频| 精品一区二区三区高清免费观看 | 亚洲高清美女一区二区三区| 性短视频在线观看免费不卡流畅| 亚洲人配人种jizz| 亚洲福利精品电影在线观看| 日本免费一区二区久久人人澡| 亚洲成人黄色在线| 亚洲AⅤ视频一区二区三区| 久久国产免费一区| 亚洲啪啪免费视频| 亚洲va中文字幕无码| 13一14周岁毛片免费| 羞羞网站免费观看| 亚洲视频一区调教|