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

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

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

    wuxiren123

    FineReport中如何自定義登錄界面

    在登錄平臺時,不希望使用FR默認的內置登錄界面,想通過自定義登錄界面實現登錄操作,內置登錄界面如下圖:



     

    登錄界面,獲取到用戶名和密碼的值,發送到報表系統,報表服務帶著這兩個參數訪問認證地址進行認證。

    自定義登錄界面

    登錄界面設置

    自定義html登錄頁面:命名為login.html,并保存在%FR_HOME%\WebReport下,代碼如下:

    <html>  
    <head> 
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    <script type="text/javascript" src="ReportServer?op=emb&resource=finereport.js"></script>  
    <script type="text/javascript">  
    function doSubmit() {  
        
    var username = FR.cjkEncode(document.getElementById("username").value); //獲取輸入的用戶名  
        var password = FR.cjkEncode(document.getElementById("password").value);  //獲取輸入的參數  
        jQuery.ajax({  
         url:
    "http://localhost:8075/WebReport/ReportServer?op=fs_load&cmd=sso",//單點登錄的管理平臺報表服務器  
         dataType:"jsonp",//跨域采用jsonp方式  
         data:{"fr_username":username,"fr_password":password},//獲取用戶名密碼  
         jsonp:"callback",  
         timeout:
    5000,//超時時間(單位:毫秒)  
         success:function(data) {  
                
    if (data.status === "success"
        window.location
    =data.url;//認證成功跳轉頁面,因為ajax不支持重定向所有需要跳轉的設置 
                      //登錄成功     
                }
     else if (data.status === "fail"){  
                     alert(
    "用戶名或密碼錯誤");//登錄失敗(用戶名或密碼錯誤)  
                }
      
         }
    ,  
         error:
    function(){  
               alert(
    "超時或服務器其他錯誤");// 登錄失敗(超時或服務器其他錯誤)  
         }
      
    }
    ); 
    }
      
    </script>  
    </head>  
    <body>  
    <p>請登錄</p>  
    <form name="login" method="POST">  
        
    <p>  
            用戶名:  
            
    <input id="username" type="text" />  
        
    </p>  
        
    <p>  
            密 碼:  
            
    <input id="password" type="password" />  
        
    </p>  
        
    <input type="button" value="登錄" onclick="doSubmit()"/>  
    </form>  
    </body>  
    </html>

     Dosubmit()是主要的邏輯判斷,實現的是將對應的值傳給報表服務的邏輯實現過程。

    調用登錄界面

    登錄系統,選擇管理系統>外觀配置,在登錄頁選項中選擇設置登錄網頁,并輸入自定義登錄頁面的路徑:login.html,如下圖所示:



     

    總結

    比如說若用戶有自己的系統,將FR繼承到自己已有系統中,該系統有自己的登錄界面,希望登錄自己系統的同時也登錄報表(即將輸入的用戶名密碼也發送到報表服務進行認證),從而訪問報表時不需要再次登錄即單點登錄,步驟如下:

    1、找到您系統登錄頁面如login.jsp;

    2、在login.jsp頁面head中引入finereport.js;

    3、在login.jsp頁面JavaScript中定義function如dosubmit,在dosubmit中獲取到輸入的用戶名密碼,并通過iframe方式或者ajax方式進行認證。

    4、在FineReport平臺系統中設置自定義登錄頁面地址為您系統的登錄地址。

    若是OA系統或者報表系統和項目系統不再同一個服務器上,可以進行ajax跨域異步單點登錄。

    Session傳值

    對于java系統來說,可將用戶名與密碼放在session中,把報表集成在同一環境下面,報表可自動獲取到用戶名和密碼的值進行驗證。

    還原默認登錄界面

    如果在決策系統修改了登錄界面后,希望還原成系統默認登錄界面,應該如何實現呢?

    1)打開安裝目錄%FR_HOME%\WebReport\WEB-INF\resources,找到fsconfig.xml



     

    2)刪除loginUrl屬性

    右擊fsconfig.xml文件,選擇編輯器打開,刪除文件中的loginUrl屬性,如下,刪除login.htm:



     

    此時請務必關閉設計器,重新開啟,再次進入數據決策系統,即可回到默認的登錄界面。

    還原到默認的登錄界面后,如果再需要設置登錄界面,可以用管理員賬戶登錄,進行設置即可。

    posted on 2017-03-21 16:58 喝水居然長肉 閱讀(117) 評論(0)  編輯  收藏


    只有注冊用戶登錄后才能發表評論。


    網站導航:
     
    主站蜘蛛池模板: 美女视频黄.免费网址| 亚洲电影在线免费观看| 精品免费AV一区二区三区| 亚欧免费视频一区二区三区 | 美女露100%胸无遮挡免费观看| 国产精品色拉拉免费看| 亚洲综合小说久久另类区| 91精品国产免费| 国产精品亚洲精品观看不卡| 欧亚精品一区三区免费| 国产亚洲中文日本不卡二区| 成人午夜18免费看| 亚洲国产高清国产拍精品| 亚洲AⅤ视频一区二区三区| 一级大黄美女免费播放| 亚洲人成人77777网站| 免费无码作爱视频| 亚洲AV日韩AV鸥美在线观看| 亚洲欧洲日产国码无码久久99| 特级做A爰片毛片免费看无码| 国产亚洲精品精华液| 四虎影视成人永久免费观看视频 | 超pen个人视频国产免费观看| 亚洲国产成人精品无码区二本| 国产又大又粗又硬又长免费| 久久久精品视频免费观看 | 亚洲国产一成久久精品国产成人综合 | 精品亚洲国产成人av| 国产成人亚洲影院在线观看| 免费无码又爽又刺激一高潮| 亚洲欧洲精品在线| 日韩免费观看的一级毛片| 四虎一区二区成人免费影院网址| 亚洲高清专区日韩精品| 免费毛片a在线观看67194| 无码毛片一区二区三区视频免费播放 | 国产区在线免费观看| 亚洲天堂一区二区三区四区| 日韩免费无砖专区2020狼| 在线免费观看伊人三级电影| 亚洲国产成人久久99精品|