欧美三区_成人在线免费观看视频_欧美极品少妇xxxxⅹ免费视频_a级毛片免费播放_鲁一鲁中文字幕久久_亚洲一级特黄

Liferay Portal額外研究(四):修改用戶登錄后

系統(tǒng) 2308 0
? Liferay 在用戶第一次登陸后,都會(huì)為其產(chǎn)生一個(gè)默認(rèn)的私有首頁 Layout。?在 Liferay早期版本,可以在系統(tǒng)管理員管理界面中,配置默認(rèn)的group layout。但是在4.1版本中已經(jīng)沒有這個(gè)功能,所以默認(rèn)情況下,新注冊(cè)的用戶,在登陸后,首先看到的其私有place都是一樣的內(nèi)容,而這些內(nèi)容都是liferay提供的。
?
??? 對(duì)我們自定的 Company來說,這肯定是不合適的,我們需要自己定義用戶登錄后,默認(rèn)顯示的內(nèi)容和布局。
?
??? 后來在Liferay forum中,找到了一篇帖子,給了解決此種問題的解決辦法:在portlet-ext.properties中配置一個(gè) default.user.layout.group 屬性(自定義的),用于指明默認(rèn)的layout-group。在 ServicePreAction 類的擴(kuò)展修改 addDefaultLayouts 操作,滿足特定的需求應(yīng)用。這種擴(kuò)展的方式就是,將指定layout-group拷貝給用戶第一默認(rèn)的,這樣就不會(huì)再使用liferay默認(rèn)的了。—— 當(dāng)然這樣的方式是比較簡(jiǎn)單的,可能在系統(tǒng)實(shí)施過程中,有比這更加復(fù)雜的需求。

?
新建默認(rèn)的 Community
首先,通過新增一個(gè)新的 Community,命名為User_Default,并新增一個(gè)private的page與內(nèi)容.
?
配置默認(rèn)的 Community
首先在 ext項(xiàng)目的 ext-ejb目錄下,修改portal-ext.properties文件,增加如下設(shè)置:
?
default.user.layout.group =User_Default

然后通過 build,將portal-ext.properties移動(dòng)到 ext項(xiàng)目的
??? ext\servers\tomcat\webapps\ROOT\WEB-INF\classes 目錄下。
?
構(gòu)造 LayoutCopy類
public ? class ?LayoutCopy? ... {
????
????
private ? static ?Log?_log? = ?LogFactory.getLog(LayoutCopy. class );
????
????
private ?User?user;

????
private ?String?ownerId;

???
private ?Group?userGroup;
???
public ?LayoutCopy(User?user)? ... {
???????
super ();

???????
this .user? = ?user;

????????
this .ownerId? = ?getOwnerId(user.getGroup().getGroupId(),? false );
???????
this .userGroup? = ?user.getGroup();
???}


???
public ? void ?copyDefaultUserLayout(HttpServletRequest?httpReq)
???????????
throws ?SystemException,?PortalException? ... {
??????
// ?set?in?the?portal-ext.properties:
???????
// ?default.user.layout.group=Default?User
???????
// ?and?create?then?group/community?"Default?User"?
???????
// ?CWPPropsUtil.DEFUALT_USER_LAYOUT_GROUP?=?"default.user.layout.group"
???????Group?group? = ?GroupLocalServiceUtil.getGroup(user.getCompanyId(),
???????????????PropsUtil.get(
" default.user.layout.group " ));

???????
try ? ... {
???????????String?groupOwnerId?
= ?getOwnerId(group.getGroupId(),? true );
???????????List?privateLayouts?
= ?LayoutLocalServiceUtil
???????????????????.getLayouts(groupOwnerId);

???????????
for ?(Iterator?itr? = ?privateLayouts.iterator();?itr.hasNext();)? ... {
???????????????Layout?layout?
= ?(Layout)?itr.next();
???????????????Layout?newLayout?
= ?copyLayout(layout);
???????????????copyPreferences(httpReq,?newLayout,?layout);
???????????}

???????}
? catch ?(PortalException?e)? ... {
???????????_log.error(
" Cannot?copy?private?layouts " ,?e);
???????}
? catch ?(Exception?e)? ... {
???????????_log.error(
" Cannot?copy?public?layouts " ,?e);
???????}


???????
try ? ... {
???????????String?groupOwnerId?
= ?getOwnerId(group.getGroupId(),? false );
???????????List?publicLayouts?
= ?LayoutLocalServiceUtil
???????????????????.getLayouts(groupOwnerId);

???????????
for ?(Iterator?itr? = ?publicLayouts.iterator();?itr.hasNext();)? ... {
???????????????Layout?layout?
= ?(Layout)?itr.next();
???????????????Layout?newLayout?
= ?copyLayout(layout);
???????????????copyPreferences(httpReq,?newLayout,?layout);
???????????}

???????}
? catch ?(PortalException?e)? ... {
???????????_log.error(
" Cannot?copy?public?layouts " ,?e);
???????}
? catch ?(Exception?e)? ... {
???????????_log.error(
" Cannot?copy?public?layouts " ,?e);
???????}


???}


???
public ? void ?resetLayout(HttpServletRequest?httpReq)? throws ?SystemException,?PortalException? ... {
???????String?ownerId?
= ?getOwnerId(user.getGroup().getGroupId(),? false );
???????LayoutLocalServiceUtil.deleteLayouts(ownerId);
???????PortletPreferencesLocalServiceUtil.deletePortletPreferences(ownerId);

???????ownerId?
= ?getOwnerId(user.getGroup().getGroupId(),? true );
???????LayoutLocalServiceUtil.deleteLayouts(ownerId);
???????PortletPreferencesLocalServiceUtil.deletePortletPreferences(ownerId);

???????copyDefaultUserLayout(httpReq);
???}


???
public ?Layout?copyLayout(Layout?groupDefaultLayout)? throws ?SystemException,
???????????PortalException?
... {
???????Layout?layout?
= ?LayoutLocalServiceUtil.addLayout(
???????????????userGroup.getGroupId(),?user.getUserId(),?groupDefaultLayout
??????????????????????.isPrivateLayout(),?groupDefaultLayout
???????????????????????.getParentLayoutId(),?groupDefaultLayout.getName(user
???????????????????????.getLocale()),?groupDefaultLayout.getType(),
???????????????groupDefaultLayout.isHidden(),?
null );

???????LayoutLocalServiceUtil.updateLayout(layout.getLayoutId(),?layout
????????.getOwnerId(),?groupDefaultLayout.getTypeSettings());
???????layout?
= ?LayoutLocalServiceUtil.updateLookAndFeel(layout.getLayoutId(),
???????????????layout.getOwnerId(),?groupDefaultLayout.getThemeId(),

Liferay Portal額外研究(四):修改用戶登錄后的默認(rèn)布局和內(nèi)容


更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號(hào)聯(lián)系: 360901061

您的支持是博主寫作最大的動(dòng)力,如果您喜歡我的文章,感覺我的文章對(duì)您有幫助,請(qǐng)用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長(zhǎng)非常感激您!手機(jī)微信長(zhǎng)按不能支付解決辦法:請(qǐng)將微信支付二維碼保存到相冊(cè),切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對(duì)您有幫助就好】

您的支持是博主寫作最大的動(dòng)力,如果您喜歡我的文章,感覺我的文章對(duì)您有幫助,請(qǐng)用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長(zhǎng)會(huì)非常 感謝您的哦!!!

發(fā)表我的評(píng)論
最新評(píng)論 總共0條評(píng)論
主站蜘蛛池模板: 精品国产乱码久久久久久丨区2区 | 久久国产免费看 | 欧美亚洲欧美区 | av一区二区三区 | 美女福利视频国产免费观看 | 国产激情一级毛片久久久 | 午夜激情av | 久久久美女| 国产在线视频色综合 | 黄片毛片一级 | www.夜色.com| 日日操视频 | 午夜影院在线观看 | 欧美特级| 欧美一级夜夜爽 | 国产精品尤物在线 | 麻豆高清免费国产一区 | 日本AAA片爽快视频 波多在线 | 国产欧美日韩在线播放 | 日本特级黄色录像 | 天天干天天草 | 在线观看av网站永久 | 999毛片 | 欧美一区二区三区网站 | 一区二区三区久久 | 日日操日日操 | www久久久久 | 亚洲精品久久久久中文字幕欢迎你 | 国产精品久久嫩一区二区免费 | 91福利免费体验区观看区 | 国产精品色综合久久 | 狠狠色欧美亚洲狠狠色www | 欧美爽爽爽高清免费视频 | 在线不卡视频 | 第三级视频在线观看 | 91国内精品久久久久免费影院 | 欧美一级三级 | 亚洲一二三区精品 | 人人看人人看 | 91视频区 | 国产在线视频一区二区 |