diff --git a/src/main/java/com/fr/io/ExportApi.java b/src/main/java/com/fr/io/ExportApi.java index 353b9a6..6b40bd7 100644 --- a/src/main/java/com/fr/io/ExportApi.java +++ b/src/main/java/com/fr/io/ExportApi.java @@ -18,6 +18,7 @@ import com.fr.io.exporter.TextExporter; import com.fr.io.exporter.WordExporter; import com.fr.io.exporter.excel.stream.StreamExcel2007Exporter; import com.fr.main.impl.WorkBook; +import com.fr.module.ModuleRole; import com.fr.module.tool.ActivatorToolBox; import com.fr.report.ReportActivator; import com.fr.report.RestrictionActivator; @@ -30,22 +31,19 @@ import java.io.FileOutputStream; import java.util.HashMap; import java.util.Map; - public class ExportApi { - /** - * 这段静态代码块仅在main函数测试时使用, - * 实际生产环境中一般使用web容器,集成帆软后帆软服务会自动启动,不再需要下面的静态代码,直接写导出的业务逻辑即可。 - * web集成注意事项: - * 1、集成环境需要依赖【当前使用jdk对应版本的】tools.jar,一般从jdk中直接复制即可; - * 2、帆软服务自动启动成功后,使用的工作目录自动识别为web应用下的WEB-INF目录,所以需要把下面代码中envpath指向的工作目录拷贝到集成环境下web应用的WEB-INF目录, - * 这样才能沿用原先帆软的配置及模板。如果集群环境,会自动使用文件服务器的模板。 - * 3、可以访问集成环境的地址: ip:port/应用名/decision 。如果能成功访问且不需要初始化配置则代表帆软服务启动成功 - */ - static { - Module preModule = ModuleContext.getModule(ReportActivator.class); - boolean running = preModule != null && preModule.isRunning(); - if (!running) { + public static void main(String[] args) { + /** + * 以下这段if判断仅在main函数测试时使用, + * 实际生产环境中一般使用web容器,集成帆软后帆软服务会自动启动,不再需要下面的if判断,直接写导出的业务逻辑即可。 + * web集成注意事项: + * 1、集成环境需要依赖【当前使用jdk对应版本的】tools.jar,一般从jdk中直接复制即可; + * 2、帆软服务自动启动成功后,使用的工作目录自动识别为集成应用下的WEB-INF目录,所以需要把下面代码中envpath指向的工作目录拷贝到集成环境下web应用的WEB-INF目录 + * (正式发布时需要拷贝生产环境的帆软WEB-INF,如果有的话),这样才能沿用原先帆软的配置及模板。如果是集群环境,会自动使用文件服务器的模板。本地测试时envpath需要指向【单机非集群】的帆软工程 + * 3、可以访问集成环境的地址: ip:port/应用名/decision 。如果能成功访问且不需要初始化配置则代表帆软服务启动成功 + */ + if (!ModuleRole.Root.isPresent()) { /**定义报表运行环境,用于执行报表*/ com.fr.module.Module module = ActivatorToolBox.simpleLink( new BaseDBActivator(), @@ -66,9 +64,6 @@ public class ExportApi { I18nResource.getInstance(); module.start(); } - } - - public static void main(String[] args) { /**输出模板*/ try { // 定义输出的模板路径,以reportlets为根目录