# EcologyPluginLite **Repository Path**: Blithe0306/ecology-plugin-lite ## Basic Information - **Project Name**: EcologyPluginLite - **Description**: Ecology数据处理外挂项目,避免在工作时间重启Ecology,此项目为轻量版,旨在减少框架使用,启动快速 - **Primary Language**: Java - **License**: MulanPSL-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 4 - **Created**: 2024-01-15 - **Last Updated**: 2024-01-15 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # EcologyPluginLite #### 介绍 Ecology数据处理外挂项目,此项目为轻量版,旨在减少框架使用,启动快速。 外挂主要优点: 1. 避免在工作时间重启Ecology,开发不影响客户使用,不影响项目人员实施搭建。 2. 可以实现多个开发人员同时开发,各自重启不受影响。 3. 可以直接debug线上环境(有内网可以直接debug,云服务器可以通过内网穿透实现在本地debug)。 #### 软件架构 基于JDK1.8+tomcat7开发,使用了Hutool5.7.19、Jersey2.1.7 #### 安装 war包部署,需要配置context为"/" #### 配置 1. 配置数据库 classpath目录下的db.setting修改为Ecology数据库的连接信息,连接池信息参考注释根据服务器配置自行修改 2. 配置classpath目录下的ecology.setting(可选,此配置用于访问Ecology标准API,实现提交、退回、干预、创建OA流程等) 修改EcologyHost为Ecology访问地址 在Ecology数据库执行以下SQL: INSERT INTO ECOLOGY_BIZ_EC(ID,APPID,NAME) VALUES('EcologyPluginLite','6EC751A6-728A-5A88-B5D1-54B3C14722D7','Ecology扩展程序'); 运行com.dengcj.elp.service.util.EcologyApiUtil 根据控制台输出报文中的secrit和spk数据配置到此文件中 #### ecology相关配置 1. 下载resource/ecologyfile/ecology.zip并解压到ecology。该压缩包内文件结构如下: ecology ├── classbean ├──── com ├────── dengcj ├──────── ecology ├────────── request ├──────────── CommonNodeActionForPlugin.class ├── WEB-INF ├──── prop ├────── EcologyPlugin.properties 2. 修改EcologyPlugin.properties配置文件中的NodeActionApi为对应的EcologyPlugin项目IP和端口号 #### 开始开发 1. 节点附加操作业务类开发请参考com.dengcj.epl.service.ecology.workflow.action.TemplateAction 2. 发布RestAPI、定时任务等请参考《DeveloperGuide.md》 #### 配置节点前、后附加操作 在Ecology中的流程节点配置添加节点前或节点后添加自定义操作,类名固定为com.dengcj.ecology.request.CommonNodeActionForPlugin 添加pluginclass参数,参数值为EcologyPlugin中对应的业务类路径(包名+类名) 如果有多个人共同开发需求,可启动多个EcologyPlugin,在自定义接口中添加pluginurl参数指定对应的项目地址,则该自定义接口不会请求 EcologyPlugin.properties中配置的项目地址,以pluginurl参数指定的为准 #### 常见问题 1. 找不到数据库驱动类。 解决办法:把项目中的驱动类复制到tomcat的lib目录 #### 参与贡献 1. Fork 本仓库 2. 新建 Feat_xxx 分支 3. 提交代码 4. 新建 Pull Request