在登錄平臺(tái)時(shí),不希望使用FR默認(rèn)的內(nèi)置登錄界面,想通過(guò)自定義登錄界面實(shí)現(xiàn)登錄操作,內(nèi)置登錄界面如下圖:
登錄界面,獲取到用戶名和密碼的值,發(fā)送到報(bào)表系統(tǒng),報(bào)表服務(wù)帶著這兩個(gè)參數(shù)訪問(wèn)認(rèn)證地址進(jìn)行認(rèn)證。
自定義登錄界面
登錄界面設(shè)置
自定義html登錄頁(yè)面:命名為login.html,并保存在%FR_HOME%\WebReport下,代碼如下:
Dosubmit()是主要的邏輯判斷,實(shí)現(xiàn)的是將對(duì)應(yīng)的值傳給報(bào)表服務(wù)的邏輯實(shí)現(xiàn)過(guò)程。
調(diào)用登錄界面
登錄系統(tǒng),選擇管理系統(tǒng)>外觀配置,在登錄頁(yè)選項(xiàng)中選擇設(shè)置登錄網(wǎng)頁(yè),并輸入自定義登錄頁(yè)面的路徑:login.html,如下圖所示:
總結(jié)
比如說(shuō)若用戶有自己的系統(tǒng),將FR繼承到自己已有系統(tǒng)中,該系統(tǒng)有自己的登錄界面,希望登錄自己系統(tǒng)的同時(shí)也登錄報(bào)表(即將輸入的用戶名密碼也發(fā)送到報(bào)表服務(wù)進(jìn)行認(rèn)證),從而訪問(wèn)報(bào)表時(shí)不需要再次登錄即單點(diǎn)登錄,步驟如下:
1、找到您系統(tǒng)登錄頁(yè)面如login.jsp;
2、在login.jsp頁(yè)面head中引入finereport.js;
3、在login.jsp頁(yè)面JavaScript中定義function如dosubmit,在dosubmit中獲取到輸入的用戶名密碼,并通過(guò)iframe方式或者ajax方式進(jìn)行認(rèn)證。
4、在FineReport平臺(tái)系統(tǒng)中設(shè)置自定義登錄頁(yè)面地址為您系統(tǒng)的登錄地址。
若是OA系統(tǒng)或者報(bào)表系統(tǒng)和項(xiàng)目系統(tǒng)不再同一個(gè)服務(wù)器上,可以進(jìn)行ajax跨域異步單點(diǎn)登錄。
Session傳值
對(duì)于java系統(tǒng)來(lái)說(shuō),可將用戶名與密碼放在session中,把報(bào)表集成在同一環(huán)境下面,報(bào)表可自動(dòng)獲取到用戶名和密碼的值進(jìn)行驗(yàn)證。
還原默認(rèn)登錄界面
如果在決策系統(tǒng)修改了登錄界面后,希望還原成系統(tǒng)默認(rèn)登錄界面,應(yīng)該如何實(shí)現(xiàn)呢?
1)打開(kāi)安裝目錄%FR_HOME%\WebReport\WEB-INF\resources,找到fsconfig.xml
2)刪除loginUrl屬性
右擊fsconfig.xml文件,選擇編輯器打開(kāi),刪除文件中的loginUrl屬性,如下,刪除login.htm:
此時(shí)請(qǐng)務(wù)必關(guān)閉設(shè)計(jì)器,重新開(kāi)啟,再次進(jìn)入數(shù)據(jù)決策系統(tǒng),即可回到默認(rèn)的登錄界面。
還原到默認(rèn)的登錄界面后,如果再需要設(shè)置登錄界面,可以用管理員賬戶登錄,進(jìn)行設(shè)置即可。
posted on 2017-03-21 16:58 喝水居然長(zhǎng)肉 閱讀(115) 評(píng)論(0) 編輯 收藏
Powered by: BlogJava Copyright © 喝水居然長(zhǎng)肉