1. 概述
1.1 問題描述
通常在 Tomcat 服務器部署 完成之後,啓動服務器,用戶需要訪問 URL:http://localhost:8080/webroot/decision 方可進入數據決策系統。有時用戶希望可以直接通過 IP 就能訪問數據決策系統。
1.2 解決思路
通過修改端口号并建立虛拟目錄來實現訪問 IP(例如:http://localhost)即可直接進入數據決策系統。
2. 操作步驟
以訪問http://localhost爲例進行介紹。
2.1 修改端口号
如果沒有其他網絡程序占用端口号 80,可以将 Tomcat 服務器的端口号設置爲 80。
80 端口爲默認端口,用戶訪問報表頁面時就不需要再加上 Tomcat 服務器的端口号。
1)打開%tomcat_home%\conf\server.xml文件,修改端口号,如下圖所示:
代碼如下所示:
<Connector port="80" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" />
2)重啓 Tomcat 服務器,訪問http://localhost/webroot/decision即可進入數據決策系統。
2.2 設置歡迎界面
每個 Web 服務器都有默認的歡迎界面,通過修改歡迎界面,以顯示平台頁面。
在%Tomcat_home%\webapps\webroot目錄下新建 a.jsp文件,作爲 Web 服務器的默認主頁。
2.2.1 PC 端和 App 端設置界面
文件下載:a.jsp
「a.jsp」調用 iframe 集成平台産品演示界面,代碼如下所示:
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<html>
<head>
<title>FineReport報表</title>
<link rel="stylesheet" type="text/css" href="/decision/file?path=/com/fr/web/core/css/leaflet.css&type=plain&parser=plain"/>
<meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=1, maximum-scale=1.0, user-scalable=no">
</head>
<body leftmargin="0" topmargin="0" marginwidth="0" marginheight="0">
<iframe id="reportFrame" src="decision" allowfullscreen="true"
name="itemslist" frameborder="0" width="100%" height="100%"></iframe>
</body>
</html>
注:<link rel="stylesheet" type="text/css" href="/decision/file?path=/com/fr/web/core/css/leaflet.css&type=plain&parser=plain"/> 這行代碼用於解決決策系統中圖表工具欄全屏後地圖顯示異常的問題。
重啓 Tomcat 服務器,訪問http://localhost/webroot/a.jsp即可顯示數據決策系統登錄頁面。
2.2.2 HTML5 端設置界面
文件下載:a.jsp
「a.jsp」調用 iframe 集成平台産品演示界面,代碼如下所示:
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<html>
<head>
<title>FineReport報表</title>
<link rel="stylesheet" type="text/css" href="/decision/file?path=/com/fr/web/core/css/leaflet.css&type=plain&parser=plain"/>
<meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=1, maximum-scale=1.0, user-scalable=no">
</head>
<body leftmargin="0" topmargin="0" marginwidth="0" marginheight="0">
<iframe id="reportFrame" src="decision" allowfullscreen="true"
name="itemslist" frameborder="0" width="100%" height="100%"></iframe>
</body>
</html>
注:HTML5 端設置時需要安裝 HTML5 移動端展現插件
2.3 建立虛拟目錄
通過修改配置文件建虛拟目錄。
2.3.1 調整工程路徑
報表工程 webroot 默認放在%Tomcat_home%\webapps目錄下,啓動服務器時會加載該工程。建立虛拟目錄後,啓動 Tomcat 服務器時,通過配置文件會再次加載 webroot 工程。webroot 工程加載兩次,會出現報錯、服務器閃退等情況。
因此用戶需要将%Tomcat_home%\webapps目錄下的 webroot 文件夾移動到 Tomcat 部署目錄以外的位置,并且需要與 Tomcat 工程在相同路徑的磁盤下。
本文将%Tomcat_home%\webapps\webroot文件夾移動到E:\webroot路徑。如下圖所示:
注:不是複制 webroot 而是移動,原%Tomcat_home%\webapps下不應有 webroot 文件。
2.3.2 修改 server.xml 文件
修改%tomcat_home%\conf\server.xml文件,在 server.xml 文件中 host 标簽之間添加上代碼,如下圖所示:
代碼如下所示:
<Context path="" docBase="E:\webroot" debug="0" reloadable="true" />
說明:
參數 | 說明 |
---|---|
path | 虛拟目錄的名字 如果希望輸入 IP 地址就顯示主頁,則該鍵值留爲空 |
docBase | 虛拟目錄的路徑 本文 2.3.1 步驟中設置的 webroot 路徑,本文爲E:\webroot |
debug | 0 |
reloadable | true |
2.3.3 修改 web.xml 文件
1)FineReport 9.0 工程
9.0 工程下有 web.xml 文件,用戶可直接修改代碼。
修改%tomcat_home%\conf\web.xml文件,在 web.xml 文件最下面</web-app>标簽之前,添加一段代碼顯示自定義歡迎界面 a.jsp,代碼如下所示:
<welcome-file-list>
<welcome-file>index.html</welcome-file>
<welcome-file>index.htm</welcome-file>
<welcome-file>a.jsp</welcome-file>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
2)FineReport 10.0 工程
文件下載:web.xml
10.0 工程下沒有 web.xml 文件,用戶需新建 web.xml 文件
在webroot\WEB-INF目錄下新建 web.xml 文件,如下圖所示:
代碼如下所示:
<?xml version="1.0" encoding="UTF-8"?>
<web-app
xmlns="http://java.sun.com/xml/ns/j2ee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"
version="2.4">
<display-name>Template WebApp</display-name>
<mime-mapping>
<extension>msi</extension>
<mime-type>application/x-msi</mime-type>
</mime-mapping>
<welcome-file-list>
<welcome-file>index.html</welcome-file>
<welcome-file>index.htm</welcome-file>
<welcome-file>a.jsp</welcome-file>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
</web-app>
2.4 效果預覽
2.4.1 PC端
重啓 Tomcat 服務器,訪問 http://localhost,(本文訪問本機,因此使用http://localhost,實際訪問地址爲 http://IP 。)即可進入 a.jsp 頁面,即可訪問數據決策系統,如下圖所示:
2.4.2 移動端(HTML5 端訪問)
重啓 Tomcat 服務器,訪問 http://IP ,如下圖所示:
注:App 端訪問請參見本文 3.2 節。
3. 輸入服務器地址
3.1 遠程設計
遠程設計 輸入服務器地址的時候,webroot 需省去,decision 要保留。
選項 | 值 |
---|---|
主機名/IP | 根據實際情況填寫 |
端口号 | 80 |
Web應用 | 空 |
Serverlet | decision |
用戶名\密碼 | 根據實際情況填寫 |
配置工作目錄如下圖所示:
3.2 移動端
App 端、H5 端、微信和釘釘集成環境下,輸入服務器地址的時候,webroot 需要省去,但是 decision 一定要保留。
選項 | 值 |
---|---|
主機名/IP | 根據實際情況填寫 |
端口号 | 80 |
Web應用 | 空 |
Serverlet | decision |
用戶名\密碼 | 根據實際情況填寫 |
配置工作目錄如下圖所示:
4. 注意事項
4.1 IE9 浏覽器下頁面顯示不完全
問題描述
按照上述配置部署好後, IE9 浏覽器下,頁面顯示不完全。
解決方案
将本文2.2 步驟中的 a.jsp 文件代碼修改如下:
<html>
<head>
<title>FineReport</title>
<meta http-equiv="X-UA-Compatible" content="chrome=1,IE=edge"/>
<link rel="stylesheet" type="text/css" href="/decision/file?path=/com/fr/web/core/css/leaflet.css&type=plain&parser=plain"/>
<style type="text/css">
html, body
{
margin: 0px 0px;
width: 100%;
height: 100%;
}
iframe
{
margin: 0px 0px;
width: 100%;
height: 100%;
}
</style>
</head>
<body>
<iframe id="reportFrame" src="decision" name="itemslist" frameborder="0"></iframe>
</body>
</html>