环境搭建
环境使用CentOS6+JDK7+Tomcat7+SQL Server2008
安装JDK
有两种方式,一种是OpenJDK,一种是OracleJDK,两种都是一样的。
这里选择OracleJDK,实测,使用OpenJDK时Tomcat启动略慢,部署帆软报表时Tomcat会自动停止
下载地址:http://download.csdn.net/download/love254443233/9179483
直接解压至/usr/lib/jvm/jdk1.7.0_79
默认安装的路径即为/usr/lib/jvm/jdk1.7.0_79
设置JAVA_HOME
~]# vim /etc/profile
#追加以下内容
export JAVA_HOME=/usr/lib/jvm/jdk1.7.0_79
export JAVA_BIN=$JAVA_HOME/bin
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/sqljdbc41.jar
export PATH=$PATH:$JAVA_HOME/bin
~]# source /etc/profile
安装完成后输入
~]# java -version
java version "1.7.0_79"
Java(TM) SE Runtime Environment (build 1.7.0_79-b15)
Java HotSpot(TM) 64-Bit Server VM (build 24.79-b02, mixed mode)
安装Tomcat
官网下载地址:http://mirrors.tuna.tsinghua.edu.cn/apache/tomcat/tomcat-7/v7.0.75/bin/apache-tomcat-7.0.75.tar.gz
下载后解压到/usr/local/tomcat7
注:本项目使用Tomcat7.0.0,请自行下载。
设置Tomcat的内存
在tomcat7/bin/下新建setenv.sh
#!/bin/bash
CATALINA_PID=$CATALINA_HOME/bin/CATALINA_PID
JAVA_OPTS="-server -Xms512m -Xmx26214m -XX:PermSize=1024m -XX:MaxPermSize=8192m"
JAVA_HOME=/usr/lib/jvm/jdk1.7.0_79
关于如何设置jvm参数,附表如下:
jvm参数说明:
-server 一定要作为第一个参数,启用JDK的server版本,在多个CPU时性能佳
-Xms java Heap初始大小。 默认是物理内存的1/64。
-Xmx java heap最大值。建议均设为物理内存的80%。不可超过物理内存。
-Xmn java heap最小值,一般设置为Xmx的3、4分之一。
-XX:PermSize 设定内存的永久保存区初始大小,缺省值为64M。
-XX:MaxPermSize 设定内存的永久保存区最大大小,缺省值为64M。
-XX:SurvivorRatio=2 生还者池的大小,默认是2。如
-XX:NewSize 新生成的池的初始大小。 缺省值为2M。
-XX:MaxNewSize 新生成的池的最大大小。 缺省值为32M。
+XX:AggressiveHeap 让jvm忽略Xmx参数,疯狂地吃完一个G物理内存,再吃尽一个G的swap。
-Xss 每个线程的Stack大小
-verbose:gc 现实垃圾收集信息
-Xloggc:gc.log 指定垃圾收集日志文件
-XX:+UseParNewGC 缩短minor收集的时间
-XX:+UseConcMarkSweepGC 缩短major收集的时间
-XX:userParNewGC 可用来设置并行收集(多CPU)
-XX:ParallelGCThreads 可用来增加并行度(多CPU)
-XX:UseParallelGC 设置后可以使用并行清除收集器(多CPU)
测试Tomcat
设置catalina环境变量,不设置此步骤也可,每次使用catalina.sh都需要使用全部路径
~]# vim /etc/profile.d/tomcat.sh
CATALINA_BASE=/usr/local/tomcat7
PATH=$CATALINA_BASE/bin:$PATH
export CATAlINA_BASE PATH
~]# source /etc/profile.d/tomcat.sh
#启动Tomcat
~]# catalina.sh start
设置Tomcat自动启动
添加init管理脚本
~]# vim /etc/init.d/tomcat
#!/bin/bash
# Tomcat init script for Linux.
#
# chkconfig: 2345 96 14
# description: The Apache Tomcat servlet/JSP container.
JAVA_HOME=/usr/lib/jvm/java-1.7.0-openjdk-1.7.0.131.x86_64
CATALINA_HOME=/usr/local/tomcat7
export JAVA_HOME CATALINA_HOME
case $1 in
start)
exec $CATALINA_HOME/bin/catalina.sh start ;;
stop)
killall -9 java
sleep 2
exec $CATALINA_HOME/bin/catalina.sh stop;;
restart)
killall -9 java
sleep 2
$CATALINA_HOME/bin/catalina.sh stop
sleep 2
exec $CATALINA_HOME/bin/catalina.sh start ;;
configtest)
exec $CATALINA_HOME/bin/catalina.sh configtest ;;
*)
exec $CATALINA_HOME/bin/catalina.sh * ;;
esac
添加自动启动
~]# chkconfig --add tomcat
~]# chkconfig tomcat on
~]# chkconfig --list | grep tomcat
添加驱动
由于数据库为SQL Server,所以要下载Tomact连接数据库的驱动下载地址(3.0,4.0,4.1等版本依照jre而定)
详细说明:https://www.microsoft.com/zh-CN/download/details.aspx?id=54629
驱动下载:https://download.microsoft.com/download/B/E/3/BE3BA4BD-7F42-4200-A828-815976895A7E/CHS/sqljdbc_4.0.2206.100_chs.tar.gz
下载完成后将下载的压缩包解压,并找到sqljdbc4.jar
复制到/usr/lib/jvm/Java-1.7.0-openjdk-1.7.0.131.x86_64/jre/lib/ext目录下
使用Nginx反代
由于Tomcat用户无法使用80端口,造成每次使用都要加上8080端口,可在前端加Nginx,代理给Tomcat
~]# yum install nginx -y
步骤略
~]# vim /etc/nginx/conf.d/default.conf
location / {
proxy_pass http://127.0.0.1:8080;
}
添加Nginx自动启动
~]# chkconfig --add nginx
~]# chkconfig nginx on
~]# chkconfig --list | grep nginx
下载并部署帆软
直接下载Windows版的即可,在安装后的文件里找到WebReport目录,将此目录放到Tomcat下即可在Linux下运行
帆软下载地址:http://down.finereport.com/FineReport8.0-CN.exe
帆软官网Tomcat服务器部署手册:http://www.finereporthelp.com/help/14/0/1/0.html
这里选择独立部署:
~]# vim /usr/local/tomcat7/conf/server.xml
#找到appBase=webapps处,修改为如下内容
<Host name="localhost" appBase="/webreport"
unpackWARs="true" autoDeploy="true">
<Context path="" docBase="/webreport" debug="0" reloadable="false" > </Context>
修改datasource.xml
修改/webreport/web/WEB-INF/resources/datasource.xml:
~]# vim /webreport/web/WEB-INF/resources/datasource.xml
将所需要的数据库连接配置进去就可以了
检测部署
可以通过浏览报表确定是否部署成功
重新启动Tomcat,启动浏览器,在地址栏输入
http:/10.207.0.27/web/ReportServer,能成功看到部署成功页面,则表明FineReport应用部署Tomcat服务器成功
通过客户端直接设置服务器上的报表 配置过程参考连接:http://help.finereport.com/doc-view-133.html
报表目录共享
为了方便从win下直接上传报表到Linux下,部署了此共享目录
~]# yum install samba -y
~]# chkconfig smb on
~]# vim /etc/samba/smb.conf
[global]
workgroup = WORKGROUP
server string = Samba Server Version %v
log file = /var/log/samba/log.%m
max log size = 50
security = user
load printers = yes
hosts allow = 10.207.
cups options = raw
display charset = UTF-8
unix charset = UTF-8
dos charset = UTF-8
strict locking = no
[public]
comment = This is a public directory
guest ok = no
path = /webreport/web/WEB-INF/reportlets
public = yes
writable = yes
create mask = 0777
directory mask = 0777
valid users = @admin
read list = @admin
write list = @admin
available = yes
browseable = yes
添加用户
~]# useradd admin
~]# passwd admin
~]# smbpasswd -a admin
以后可以通过\\10.207.0.27直接上传或管理/webreport/web/WEB-INF/reportlets此目录下的内容
帆软添加插件
例如Excel流式导出插件
方法1:服务器手动安装
下载的文件com.fr.plugin.export.excel.stream.zip
#第一步
~]# cd /webreport/web/WEB-INF/lib
#将解压到的fr-plugin-stream-excel-3.1.jar插件放到此目录下
#第二步
~]# cd /webreport/web/WEB-INF/plugins
#新建目录plugin-文件名,然后将plugin.xml上传至此目录下
例如:
├── plugin-com.fr.plugin.export.excel.stream
│ └── plugin.xml
重启服务即可
方法2:在线安装
安装后重启即可
帆软注册
将获取的FineReport.lic放在/webreport/web/WEB-INF/resources目录下,重启服务即可。