第1章 数据库脚本导入

要使用任务调度功能,首先需要导入相关的数据库表。报表的任务调度分为新、旧两个版本,旧版本调度功能使用quartz 1.6版本,新版调度功能使用quartz 2,且新老调度功能不兼容。

新用户直接执行scheduler_new(quartz).sql,导入新版本调度功能的数据库表即可。

如果已使用并且继续使用旧调度功能,不需执行任何操作。

如果使用新调度功能并且已导入旧quartz表,请先删除旧表(执行scheduler_drop_old_table.sql脚本)再执行scheduler_new(quartz).sql。

第2章 任务调度配置

2.1 unieap-schedular.properties配置

应用系统集成调度模块后,需要打开WEB-INF\conf\unieap\newscheduler目录下的unieap-schedular.properties文件,这个文件是调度模块的主配置文件,需要修改数据源配置部分,配置为支撑数据源。

升级操作:如果应用系统没有集成调度模块,则不需要修改此文件。与原系统中对应文件进行比较,如果不相同,核对不相同部分是否为原系统特别配置修改的,如果不是(即为新版本新增或修改的内容),则拷贝内容到相应位置;否则无需拷贝。

#========================================== 
# Configure JobStore 
#========================================== 
#org.quartz.jobStore.class = org.quartz.simpl.RAMJobStore 
org.quartz.jobStore.class = org.quartz.impl.jdbcjobstore.JobStoreTX 
org.quartz.jobStore.driverDelegateClass =org.quartz.impl.jdbcjobstore.oracle.OracleDelegate
org.quartz.jobStore.useProperties = false 
org.quartz.jobStore.dataSource = JobConnection 
org.quartz.jobStore.tablePrefix = QRTZ_ 
org.quartz.jobStore.isClustered = false 

#========================================== 
# Configure Connections 
#========================================== 
org.quartz.dataSource.JobConnection.connectionProvider.class=com.neusoft.unieap.scheduler.impl.JDBCQuartzConnectionProvider
org.quartz.dataSource.JobConnection.connectionName=UNIEAP

需要关注的文件参数说明如下:

参数名 说明
org.quartz.jobStore.driverDelegateClass JobStore使用的数据库驱动代理类。默认的设置适用于Oracle数据库,对于其他数据库,需要改为相应的代理类,如Sql Server要使用org.quartz.impl.jdbcjobstore.MSSQLDelegate。如果没有合适的代理类,就使用org.quartz.impl.jdbcjobstore.StdJDBCDelegate,例如Mysql数据库。
org.quartz.jobStore.tablePrefix 指定调度模块使用的数据库表名的前缀。如果与其他表冲突,可以改为其他值,注意数据库中用到的表的名称要同步更改。
org.quartz.jobStore.isClustered 是否在集群环境中使用调度模块。如果报表应用是在集群中部署的,那么此处要改为true。
org.quartz.dataSource.JobConnection.connectionName 指定connection-config.xml配置文件中的连接名称。

当用户使用调度模块时,同时需要将报表信息通过邮件形式发送给其它人员,就需要一个发送邮箱,请打开WEB-INF\conf\unieap\report\mail.properties文件,输入邮箱地址。 文件参数说明如下:

参数名 说明
host 邮件服务器
from 邮箱名
userName 用户名
password 密码
enderShowName 邮件显示发件人名称
useDefault 是否使用默认配置:
true:不需要配置用户名、密码(对于不需要指定用户名、密码的邮件服务器,此项配置为true);
false:需要配置用户名、密码;
security 连接安全设置:
None:无安全配置
SSL/TLS:使用SSL/TLS安全
STARTTLS:使用STARTTLS安全
port 发送邮件服务器端口
protocols SSL协议名称,如果存在多个协议,中间使用空格间隔
如:SSLv3 TLSv1
isDebug 是否使用调试模式(该配置用于二次开发中问题的诊断,通常情况下无需配置):
True:使用调试模式
False:关闭调试模式
如果使用调试模式,则控制台可以查看发送邮件的详细信息。

如果邮件服务器为SSL加密传输,则需要配置数字签名证书,证书的配置方法如下:

将服务器提供的数字签名证书SomeCA.cer复制到%JAVA_HOME%\jre\lib\security目录下

使用命令行进入目录 cd %JAVA_HOME%\jre\lib\security 执行如下命令

keytool -import -alias cacerts -keystore .\cacerts -file SomeCA.cer –trustcacerts

提示输入密码,SUN_JDK默认的密码为changeit;会弹出提示,‘是否信任这个认证?’确认后,即可使用SSL密文邮件服务器发送邮件。

2.2 web.xml配置

将下面servlet配置增加到应用系统的web.xml文件中。

<servlet>
<servlet-name>configSchedular</servlet-name>
<servlet-class>com.neusoft.unieap.scheduler.server.ConfigSchedular</servlet-class>
<init-param>
<param-name>config-file</param-name>
<param-value>/WEB-INF/conf/unieap/scheduler/unieap-schedular.properties</param-value>
</init-param>
<init-param>
<param-name>shutdown-on-unload</param-name>
<param-value>true</param-value>
</init-param>
<init-param>
<param-name>start-schedular-on-load</param-name>
<param-value>true</param-value>
</init-param>
<load-on-startup>0</load-on-startup>
</servlet>
<servlet>
<servlet-name>schedular-exchange</servlet-name>
<servlet-class>com.neusoft.unieap.scheduler.server.CommandProxy</servlet-class>
<init-param>
<param-name>commands</param-name>
<param-value>/WEB-INF/conf/unieap/scheduler/unieap-schedularCommand.properties</param-value>
</init-param>
</servlet>

对应的mapping部分内容如下:

<servlet-mapping>
<servlet-name>configSchedular</servlet-name>
<url-pattern>/configSchedular</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>schedular-exchange</servlet-name>
<url-pattern>/schedular-exchange</url-pattern>
</servlet-mapping>

第3章 关闭任务调度模块

如果不需要使用调度功能,可以将其关闭,方法是在UniEAP Report报表引擎应用WEB-INF根目录下的web.xml文件中如下servlet映射:(也就是2.2节中配置的内容)

 <!-- scheduler Mapping -->
    <servlet-mapping>
        <servlet-name>configSchedular</servlet-name>
        <url-pattern>/configSchedular</url-pattern>
    </servlet-mapping>
    <servlet-mapping>
        <servlet-name>schedular-exchange</servlet-name>
        <url-pattern>/schedular-exchange</url-pattern>
    </servlet-mapping>

相关的servlet配置也一并删除:

<!-- scheduler Configuration -->
    <servlet>
        <servlet-name>configSchedular</servlet-name>
        <servlet-class>com.neusoft.unieap.newscheduler.server.ConfigSchedular</servlet-class>
        <init-param>
            <param-name>config-file</param-name>
            <param-value>/WEB-INF/conf/unieap/newscheduler/unieap-schedular.properties</param-value>
        </init-param>
        <init-param>
            <param-name>shutdown-on-unload</param-name>
            <param-value>true</param-value>
        </init-param>
        <init-param>
            <param-name>start-schedular-on-load</param-name>
            <param-value>true</param-value>
        </init-param>
        <load-on-startup>20</load-on-startup>
    </servlet> 
    <servlet>
        <servlet-name>schedular-exchange</servlet-name>
        <servlet-class>com.neusoft.unieap.newscheduler.server.CommandProxy</servlet-class>
        <init-param>
            <param-name>commands</param-name>
            <param-value>/WEB-INF/conf/unieap/newscheduler/unieap-schedularCommand.properties</param-value>
        </init-param>
    </servlet>

results matching ""

    No results matching ""

    results matching ""

      No results matching ""