溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

portal開發(fā)與配置技巧集錦(一)

發(fā)布時間:2020-07-13 17:17:26 來源:網(wǎng)絡 閱讀:860 作者:鄭文平Portal 欄目:軟件技術(shù)

 1.1如何為自己留下進入管理界面的后門

1.1.1  問題描述

在主題與皮膚開發(fā)的過程中,不小心刪除了“管理”鏈接,無法再進入到Portal管理界面。這個問題其實挺嚴重的,如果不進入Portal管理界面,就無法卸載已經(jīng)安裝的主題與皮膚,開發(fā)工作就無法進行下去。

1.1.2  解決方案

有兩種方法解決這個問題。

第一種方法:為自己留一個后門。執(zhí)行方法就是上一節(jié)提到的創(chuàng)建URL映射的方式,也就是說,新建一個adminURL映射,然后將adminURL映射到Portal管理界面,這樣萬一損壞了“管理”鏈接,則可以在登錄系統(tǒng)后直接在地址欄輸入:http://hostname:10040/wps/ myportal/admin進入到Portal管理界面。這算是給自己留的后門吧。具體的操作步驟可以參考上一節(jié)創(chuàng)建URL映射的過程。

二種方法:這種方法其實很簡單,就是多打開幾個頁面,其中一個停留在Portal管理界面,而且要保證這個頁面的會話數(shù)據(jù)是有效的(即:Session不要過期)。調(diào)試主題效果時使用其他頁面,這樣萬一主題損壞,則可以立即切換到Portal管理界面,刪除剛剛添加的、損壞的主題。

1.2  獲取登錄用戶信息

1.2.1  問題描述

獲得登錄用戶對象,并取出用戶名、注冊郵箱等用戶信息,在主題與皮膚開發(fā)以及Portlet開發(fā)中都經(jīng)常會用到。如何取出用戶信息?我們通過配置+編碼的方式來實現(xiàn)。

1.2.2  解決方案

第一種方法:標簽+代碼方式。

首先修改IBM/WebSphere/wp_profile/installedApps/[cellname]/wps.ear/wps.war/themes/html/ ThemeName目錄下的Default.jsp文件:

<%@ page session="false" buffer="none" %>改成<%@ page session="true" %>。

然后導入IBM UserJAR,這個包的名字是wp.user.api.jar,可以在IBM/WebSphere/Portal Server/base/wp.user.api/shared/app下找到。

<%@ page import="com.ibm.wps.puma.User" %>

加入如下代碼:

<%

HttpSession mysession=request.getSession();

String loginname="";

if(mysession.getAttribute("com.ibm.wps.util.session_user")!=null){

  com.ibm.wps.puma.User myuser=(com.ibm.wps.puma.User)mysession.getAttribute ("com.ibm.wps.util.session_user");

  loginname=myuser.getFullName();

}

%>

第二種方法Default.jsp里直接引入用戶類包,并在主題里初始化。

參考代碼如下:

<%@ page import ="com.ibm.portal.portlet.service.PortletServiceHome" %>

<%@ page import ="com.ibm.portal.portlet.service.PortletServiceUnavailable Exception" %>

<%@ page import ="com.ibm.portal.puma.User" %>

<%@ page import ="com.ibm.portal.um.PumaHome" %>

<%@ page import ="com.ibm.portal.um.PumaProfile" %>

<%@ page import ="com.ibm.portal.um.exceptions.PumaException" %>

 

<%

  PumaHome home = null;

  Context ctx = new InitialContext();

  PortletServiceHome serviceHome = (PortletServiceHome)ctx.lookup("portlet service/com.ibm.portal.um.portletservice.PumaHome");

 home = (PumaHome)serviceHome.getPortletService(PumaHome.class);

 PumaHome pumaHome = home;

 PumaProfile pumaProfile = pumaHome.getProfile();

 String currentUserName = null;

 User currentUser = (User)pumaProfile.getCurrentUser();

 currentUserName = currentUser.getName();

       out.print(currentUserName );

%> 

1.3  個性化Portlet添加控制板

1.3.1  問題描述

在正常情況下,我們會按照如下的方法使用Portlet添加班來工作。

wpsadmin身份登錄Portal 6.1系統(tǒng),單擊頁面右上角的“展開選用板”按鈕,如圖1-10所示。

portal開發(fā)與配置技巧集錦(一)

1-10  單擊“展開選用板”按鈕

可以看到Portlet選用板被成功初始化,如圖1-11所示,這就是傳說中的Portlet選用板。

portal開發(fā)與配置技巧集錦(一)

1-11  傳說中的Portlet選用板

通過將選用板上的Portlet拖曳到左側(cè)頁面,可以直接將Portlet定制到頁面,并分配給有相關(guān)權(quán)限的用戶使用,如圖1-12所示。

portal開發(fā)與配置技巧集錦(一)

1-12  可以直接將Portlet定制到頁面

Portlet列表中分類選項條目的右側(cè),可以查閱該分類下的所有Portlet,如圖1-13所示。

這時候就有人可能提出問題:這些分類都是默認的,難以識別,能不能按照我的類別分類,并且將我希望提供給用戶的Portlet添加到相應的類別里?

回答是肯定的。以下是解決方法

portal開發(fā)與配置技巧集錦(一)

1-13  Portlet的分類

1.3.2  解決方案

單擊Portlet”選項右側(cè)的三角形按鈕,選擇“配置”,如圖1-14所示。

portal開發(fā)與配置技巧集錦(一)

1-14  選擇“配置”

擊各個類別右側(cè)的三角形按鈕,選擇“刪除類別”,這個類別就被刪除了,如圖1-15所示。

選擇“重命名類別”,還可以給這個類別改名稱。

portal開發(fā)與配置技巧集錦(一)

1-15  可以刪除不想要的類別

單擊“配置”右側(cè)的三角形按鈕,選擇“創(chuàng)建新類別”,就可以創(chuàng)建新的類別了,如圖1-16所示。

portal開發(fā)與配置技巧集錦(一)

1-16  可以創(chuàng)建自己真正需要的類別

單擊創(chuàng)建好的新類別右側(cè)的三角形按鈕,選擇“添加Portlet”,就能為這個類別分配屬于它的Portlet,如圖1-17所示。

portal開發(fā)與配置技巧集錦(一)

1-17  往新創(chuàng)建的類別里添加Portlet

如果你的類別被弄得一塌糊涂,則可以選擇配置右側(cè)的三角形按鈕,選擇“復位成缺省值”,那么你所個性化的所有類別都將被刪除,系統(tǒng)會恢復成剛剛完成安裝時的默認狀態(tài),如圖1-18所示。

portal開發(fā)與配置技巧集錦(一)

1-18  選擇“復位成缺省值” 

這里的介紹比較簡單,還有很多其他的用法,你都可以試試。


向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI