数式Oinone专题 查看更多
-
置顶 Oinone发布版本一览
点击查看更多版本 20250312 为了更好的服务合作伙伴,便于所有发布版本可以有序迭代和升级,我们开始使用LTS(长期存储)版本对长期维护版本和镜像进行维护。 在未来的版本更新中,我们会将历史版本中需要长期保存版本标记为LTS,这个标记一般出现在一个新版本发布后的1-3个月。 LTS表示以下含义: 不再增加任何新特性的支持,这一点同第二位中版本号的维护一致。 不再主动修复高版本发现的已知BUG。 所有版本的修复迭代将统一使用第四位版本号进行维护,同时第三位小版本号不再更新。 版本迭代将长期使用同一篇发布日志进行维护,根据时间倒序追加在文档前。 6.3.x Oinone平台部署及依赖说明(v6.3) 主要特性: 集成设计器新增 MCP 流程设计器优化 版本 发布日志 发布时间 主要更新内容摘要 备注 6.3.0 点击查看 20250905 集成设计器新增 MCP,流程设计器优化 6.2.x Oinone平台部署及依赖说明(v6.2) 主要特性: Oinone 正式开源 工作流节点支持:拖拽、缩放、复制、剪切、粘贴等功能 工作流新增自动审批组件 EIP开放应用支持流控 版本 发布日志 发布时间 主要更新内容摘要 备注 6.2.15 点击查看 20250905 Oinone 正式开源 6.2.0 点击查看 20250609 Oinone 正式开源 6.1.x 主要特性: 新增AI设计器 新增虚拟字段 界面设计器支持下钻 版本 发布日志 发布时间 主要更新内容摘要 备注 6.1.4 点击查看 20250612 新增AI设计器、虚拟字段 LTS 6.1.0 点击查看 20250418 新增AI设计器、虚拟字段 6.0.x 主要特性: 新增涡轮增加启动加速 版本 发布日志 发布时间 主要更新内容摘要 备注 6.0.2 点击查看 20250418 新增涡轮增加启动加速 LTS 6.0.0 点击查看 20250312 新增涡轮增加启动加速 5.7.x 主要特性: 新增打印设计器 新增低无一体 版本 发布日志 发布时间 主要更新内容摘要 备注 5.7.4 点击查看 20250312 新增打印设计器、低无一体 LTS 5.3.x Oinone平台部署及依赖说明(v5.3) 主要特性: 新增微流设计器 版本 发布日志 发布时间 主要更新内容摘要 备注 5.3.9 点击查看 20250312 修复子表格导入导出权限控制异常的问题 LTS 5.3.8 点击查看 20250212 集成设计器支持文件集管理 5.3.7 点击查看 20250124 集成设计器支持文件集管理 5.3.6 点击查看 20250116 弹窗和抽屉新增全屏功能 5.3.5 点击查看 20250107 修复EIP参数转换异常的问题 5.2.x 主要特性: 界面设计器新增与其他设计器结合(调用工作流相关功能、调用集成设计器相关功能等) 流程设计器新增并发节点 数据可视化新增数据库、集成接口数据源 MSSQL(SQLServer)数据库方言支持 KDB(Kingbase8)数据库方言支持 版本 发布日志 发布时间 主要更新内容摘要 备注 5.2.21 点击查看 20250212 修复权限节点加载错误的问题 LTS 5.2.20 点击查看 20250116 修复动作上下文的value配置false不生效 5.2.19 点击查看 20250107 修复EIP参数转换异常的问题 5.2.18 点击查看 20241225 修复日期格式未根据语言配置转换的问题 5.1.x Oinone平台部署及依赖说明(v5.1) 主要特性: 新增元数据多环境在线发布功能 界面设计器新增菜单管理 系统设置新增多首页规则配置 版本 发布日志 发布时间 主要更新内容摘要 备注 5.1.17 点击查看 20241122 修复MQ注册时ConsumerGroup为空导致的异常 LTS 5.1.16 点击查看 20241023 优化sql_record可以无需配置存储路径 5.1.15 点击查看 20240929…
-
动态视图支持权限配置
动态页面在前端自定义之后,目前是没办法通过权限去控制路由页面的权限的,本篇文章将介绍如何解决这个问题。阅读本篇文章之前,应已经实现自定义页面渲染动态视图。参考文章:自定义视图内部渲染动态视图 实现思路: 通过自定义页面里设计的组件api名字,获取配置的路由页面名字。 解析路由页面包含的所有动作,拼接权限节点。 将路由页面的权限节点,拼到自定义视图所在菜单的权限管理上。 效果,路由页面的动作出现在自定义视图所在的菜单权限节点上 代码示例 package pro.shushi.pamirs.top.core.auth; import org.apache.commons.collections4.CollectionUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.core.annotation.Order; import org.springframework.stereotype.Component; import pro.shushi.pamirs.auth.api.entity.node.ActionPermissionNode; import pro.shushi.pamirs.auth.api.entity.node.PermissionNode; import pro.shushi.pamirs.auth.api.extend.load.PermissionNodeLoadExtendApi; import pro.shushi.pamirs.auth.api.loader.visitor.AuthCompileContext; import pro.shushi.pamirs.auth.api.loader.visitor.AuthCompileVisitor; import pro.shushi.pamirs.auth.api.loader.visitor.DslParser; import pro.shushi.pamirs.auth.api.pmodel.AuthResourceAuthorization; import pro.shushi.pamirs.auth.api.utils.AuthAuthorizationHelper; import pro.shushi.pamirs.boot.base.model.Menu; import pro.shushi.pamirs.boot.base.model.View; import pro.shushi.pamirs.boot.base.model.ViewAction; import pro.shushi.pamirs.boot.base.ux.model.UIView; import pro.shushi.pamirs.boot.base.ux.model.UIWidget; import pro.shushi.pamirs.boot.base.ux.model.view.UIField; import pro.shushi.pamirs.boot.web.loader.path.AccessResourceInfo; import pro.shushi.pamirs.boot.web.loader.path.ResourcePath; import pro.shushi.pamirs.boot.web.manager.MetaCacheManager; import pro.shushi.pamirs.meta.annotation.fun.extern.Slf4j; import pro.shushi.pamirs.meta.common.spi.SPI; import pro.shushi.pamirs.top.api.TopModule; import java.util.ArrayList; import java.util.List; import java.util.Map; import java.util.Optional; @Component @Order(88) @SPI.Service @Slf4j public class MyTestNodeLoadExtend implements PermissionNodeLoadExtendApi { @Autowired protected MetaCacheManager metaCacheManager; @Override public List<PermissionNode> buildNextPermissions(PermissionNode selected, List<PermissionNode> nodes) { // 动态页面所属的菜单name List<String> menuNames = new ArrayList<>(); menuNames.add("uiMenu3c094a75bd88461ba0ad780825069b32"); // 自定义组件api名称 List<String> apiNames = new ArrayList<>(); apiNames.add("dynamicView"); List<ActionPermissionNode> newNodes = new ArrayList<>(); for (String menuName : menuNames) { List<ActionPermissionNode> actionPermissionNodes = buildActionPermissionNodes(selected, menuName, apiNames); if (CollectionUtils.isNotEmpty(actionPermissionNodes)) { newNodes.addAll(actionPermissionNodes); } } nodes.addAll(newNodes); return nodes; } private List<ActionPermissionNode> buildActionPermissionNodes(PermissionNode selected, String menuName, List<String> apiNames) { String path = ResourcePath.generatorPath(TopModule.MODULE_MODULE, menuName); if (!path.equals(selected.getPath())) { return null; } Menu menu = metaCacheManager.fetchCloneMenus(TopModule.MODULE_MODULE).stream() .filter(v -> v.getName().equals(menuName)) .findFirst() .orElse(null); if (menu == null) { return null; } menu.fieldQuery(Menu::getViewAction); View mainView = fetchMainView(menu.getViewAction()); if (mainView == null) { return null; }…
-
Oinone平台部署及依赖说明(v6.3)
概述 名词解释 业务工程包:指平台提供的内置基础包和内置功能包。 设计器工程包:指模型设计器、界面设计器、流程设计器等相关依赖包。 父POM:仅声明依赖包版本的pom文件 启动工程POM:仅声明具体依赖包的pom文件,一般不用于指定版本。 业务工程部署 Oinone平台向合作伙伴提供前后端业务工程所需的全部依赖,依赖项的具体说明下面会分别介绍。 设计器部署 Oinone平台向合作伙伴提供了两种设计器部署方式: Docker镜像:支持amd64和arm64两种架构的操作系统。(推荐) JAR包:与Docker镜像中的内容完全一致。 使用JAR包直接启动需要使用Oinone专属启动器,Docker镜像已内置Oinone专属启动器。 PS:如遇到以上部署方式或提供的镜像无法满足部署需求时,请联系Oinone平台售后获取技术支持。 Docker镜像 体验镜像 包括所有设计器。 内置所有所需中间件,包括Mysql、Redis、Zookeeper、RocketMQ。 适用场景:用于快速体验Oinone平台全部功能 docker pull harbor.oinone.top/oinone/oinone-designer-full-v6.3:TAG 前后端一体部署镜像 包括所有设计器。 无内置中间件。 适用场景:用于便捷部署Oinone平台的前后端服务 docker pull harbor.oinone.top/oinone/oinone-designer-mini-v6.3:TAG 前后端一体部署镜像 – 流程设计器 仅包括流程设计器。 无内置中间件。 适用场景:用于便捷部署仅需流程设计器的Oinone平台的前后端服务。 docker pull harbor.oinone.top/oinone/workflow-designer-v6.3:TAG 后端部署镜像 用于前后端分别部署,包括所有设计器。 仅包含后端服务 无内置中间件 适用场景:Kubenetes部署;支持健康检查,前后端分离部署; docker pull harbor.oinone.top/oinone/designer-backend-v6.3:TAG 前端部署镜像 用于前后端分别部署,包括所有设计器。 仅包含前端服务 无内置中间件 适用场景:Kubenetes部署;支持健康检查,前后端分离部署; docker pull harbor.oinone.top/oinone/designer-frontend-v6.3:TAG 镜像拉取 以体验镜像为例,Oinone平台提供多种拉取镜像的方式。 # 获取混合架构镜像,支持amd64和arm64架构的操作系统 docker pull harbor.oinone.top/oinone/oinone-designer-full-v6.3:6.3.0 # 仅获取amd64架构镜像 docker pull harbor.oinone.top/oinone/oinone-designer-full-v6.3:6.3.0-amd64 # 仅获取arm64架构镜像 docker pull harbor.oinone.top/oinone/oinone-designer-full-v6.3:6.3.0-arm64 # 获取最新版镜像(每次拉取自动更新) docker pull harbor.oinone.top/oinone/oinone-designer-full-v6.3 PS:如镜像拉取过慢,可在确定操作系统架构的情况下获取amd64或arm64架构镜像。 JAR包获取 $VERSION:对应镜像版本号 包含所有设计器的后端JAR包下载路径示例 https://oinone-jar.oss-cn-zhangjiakou.aliyuncs.com/install/oinone-designer/pamirs-designer-boot-v6.3-$VERSION.jar https://oinone-jar.oss-cn-zhangjiakou.aliyuncs.com/install/oinone-designer/pamirs-designer-boot-v6.3-latest.jar 仅包含流程设计器的后端JAR包下载路径示例 https://oinone-jar.oss-cn-zhangjiakou.aliyuncs.com/install/workflow-designer/pamirs-workflow-designer-boot-v6.3-$VERSION.jar https://oinone-jar.oss-cn-zhangjiakou.aliyuncs.com/install/workflow-designer/pamirs-workflow-designer-boot-v6.3-latest.jar 前端静态 dist 获取 运行 dist 压缩包下载路径示例 https://oinone-jar.oss-cn-zhangjiakou.aliyuncs.com/install/oinone-designer-frontend/pamirs-designer-frontend-v6.3-$VERSION.tar.gz https://oinone-jar.oss-cn-zhangjiakou.aliyuncs.com/install/oinone-designer-frontend/pamirs-designer-frontend-v6.3-latest.tar.gz 解压缩命令 tar -zxvf pamirs-designer-frontend-v6.3-$VERSION.tar.gz 前端部署资源包下载 pamirs-designer-frontend-resources.zip 目录结构 在获取了前端 dist 压缩包以及部署资源包之后,按照如下所示的目录结构放置对应内容即可: . ├── config │ └── manifest.js ├── css ├── favicon.ico ├── fonts ├── index.html ├── js ├── lib │ └── luckysheet └── static 后端依赖 Oinone平台后端使用Maven管理工具对所有依赖包进行版本管理。 版本说明 下面是在每个版本升级说明中提供的所有依赖版本,最新版本请查看对应的最新升级说明文档。 版本更新日志 <!– 平台基础 –> <oinone-bom.version>6.3.0</oinone-bom.version> <!– 设计器 –> <pamirs.workflow.designer.version>6.3.0</pamirs.workflow.designer.version> <pamirs.model.designer.version>6.3.0</pamirs.model.designer.version> <pamirs.ui.designer.version>6.3.0</pamirs.ui.designer.version> <pamirs.print.designer.version>6.3.0</pamirs.print.designer.version> <pamirs.data.designer.version>6.3.0</pamirs.data.designer.version> <pamirs.dataflow.designer.version>6.3.0</pamirs.dataflow.designer.version> <pamirs.eip.designer.version>6.3.0</pamirs.eip.designer.version> <pamirs.microflow.designer.version>6.3.0</pamirs.microflow.designer.version> <pamirs.ai.designer.version>6.3.0</pamirs.ai.designer.version> <dependencyManagement> <dependencies> <dependency> <groupId>pro.shushi</groupId> <artifactId>oinone-bom</artifactId> <version>${oinone.version}</version> <type>pom</type> <scope>import</scope> </dependency> <dependency> <groupId>pro.shushi.pamirs.designer</groupId> <artifactId>pamirs-model-designer-api</artifactId> <version>${pamirs.model.designer.version}</version> </dependency> <dependency> <groupId>pro.shushi.pamirs.designer</groupId> <artifactId>pamirs-ui-designer-api</artifactId> <version>${pamirs.ui.designer.version}</version> </dependency> <dependency> <groupId>pro.shushi.pamirs.dataflow</groupId> <artifactId>pamirs-dataflow-designer-api</artifactId> <version>${pamirs.dataflow.designer.version}</version> </dependency> <dependency> <groupId>pro.shushi.pamirs.designer</groupId> <artifactId>pamirs-eip-designer-api</artifactId> <version>${pamirs.eip.designer.version}</version> </dependency> </dependencies> </dependencyManagement> 完整功能依赖示例 以下列举了除了设计器相关依赖外的全部依赖管理项,其通常使用在启动工程POM中。…
-
正式版发布:Oinone 6.3.0 版本 集成设计器新增 MCP,流程设计器优化,邀您体验
版本号: 6.3.0 版本发布日期:2025.09.05更新要点:集成设计器新增 MCP,流程设计器优化 6.3.0 版本 GitHub: 后端: https://github.com/oinone/oinone-pamirs 前端: https://github.com/oinone/oinone-kunlun Gitee: 后端: https://gitee.com/oinone/oinone-pamirs 前端: https://gitee.com/oinone/oinone-kunlun 20250911 升级内容 镜像版本升级: 6.3.0 –> 6.3.1 后端版本升级: 6.3.0 –> 6.3.1 前端版本升级 无代码模块加载新增自动解析依赖模块的功能 新增 eip_mcp 模块并调整工程结构 新增根据字段导出功能在使用关联关系字段时支持使用界面设计器配置的选项标题进行导出 修复环境检查在使用系统变量时未正确解析导致业务工程无法正常启动的问题 修复环境历史记录未正确存储的问题 修复oracle数据库在使用虚拟字段时出现无法空指针的问题 修复使用oracle-12c版本时schedule无法正常插入的问题 修复文件集使用local类型的oss无法正常使用的问题 修复数据可视化使用连接器作为数据源时无法正常导出的问题 修复模型设计器专家模式无法正常导入的问题 修复自由下钻在特定情况下显示问题 业务工程修改依赖 <dependency> <groupId>pro.shushi.pamirs.core</groupId> <artifactId>pamirs-eip2-mcp</artifactId> </dependency> 新增启动模块 pamirs: boot: modules: – eip_mcp 升级步骤 由于元数据计算问题导致 mcp 相关表被意外移除,如使用过 mcp 相关功能需要通过 rename 将旧表还原。 设计器更新镜像版本后启动。 启动后发现 mcp 相关表被移除,可通过执行SQL进行恢复。 — 将新表 rename rename table eip_mcp_mcp_server to _d_eip_mcp_mcp_server; rename table eip_mcp_mcp_server_rel_server_tools to _d_eip_mcp_mcp_server_rel_server_tools; rename table eip_mcp_mcp_tool to _d_eip_mcp_mcp_tool; — 将旧表改为新表,此处旧表表名后是时间戳,根据实际情况修改SQL后执行 rename table _d_eip_mcp_server_1757576034834 to eip_mcp_mcp_server; rename table _d_eip_mcp_server_rel_server_tools_1757576034834 to eip_mcp_mcp_server_rel_server_tools; rename table _d_eip_mcp_tool_1757576034834 to eip_mcp_mcp_tool; 重启设计器更新元数据和加载MCP相关数据。 业务工程修改pom和yaml后正常升级启动。 升级可能遇到的问题 启动后出现 mcp 相关数据丢失,且没有新表创建解决方案:在设计器yaml配置文件中新增 eip_mcp 模块 启动后出现 mcp 相关数据丢失。且出现 mcp 相关的新数据库表解决方案:根据升级步骤给出的内容将表数据恢复即可 业务工程启动时出现 eip_mcp 模块找不到。解决方案:检查是否使用 oinone-bom 依赖进行包版本管理 20250905 升级内容 镜像版本升级: 6.3.0 后端版本升级: 6.3.0 前端版本升级 新增 集成接口、开放接口、Oinone Function 能力转化为 MCP Tools 查看文档 新增自由下钻 点击图表或表格中的数据点,查看下一级明细,在钻取菜单或路径导航中切换其他维度,支持交叉分析。 查看文档 新增工作流加签支持配置审批前/审批后/用户自选加签方式 查看文档 新增工作流任务委托 查看文档 新增工作流待办与任务交接 查看文档 新增待办页支持展示流程图 查看文档 新增人工节点退回新增“直达当前节点”、人工节点支持配置条件自动退回 查看文档 新增分支节点支持移动与配置“首个匹配执行”,分支移动的快捷按钮 查看文档 新增流程设计器退回路线显示 查看文档 新增流程设计器支持刷新所有人工节点视图权限 查看文档 新增流程设计器支持历史版本的查看与恢复 查看文档 新增工作流待办支持反悔 查看文档 新增节点交互优化(提供复制、剪切) 查看文档 新增流程设计器提供鸟瞰图 新增流程设计器选择审批/填写人组件支持以公司纬度筛选员工和部门 修复并行节点重命名BUG 修复流程设计器刷新人工节点视图权限保留原有权限配置 修复工作流无法缩放 修复当工作流过小时,缩放区域不是全屏 修复节点详情抽屉按钮点击偏移问题 重构流程设计器添加审批人组件 EIP-JDBC 支持按数据库类型配置连接池参数 修复dubbo配置不生效的问题 修复数据可视化属性面板无法全部折叠或展开的问题 修复集成设计器直接创建开放接口无法正确传参的问题 修复tomcat部署时出现 csrfRefererFilter 不支持异步的问题 修复默认 ScriptEngine 未正确生效的问题 修复 boolean 序列化在使用 NDS 驱动时出现枚举空值的问题 修复数据可视化自定义组件在某些情况下无法正确查询数据的问题…
-
自定义流程设计器审批人公司列表
打开弹窗时会默认选中返回的第一个公司。 依赖: <dependency> <groupId>pro.shushi.pamirs.workflow</groupId> <artifactId>pamirs-workflow-api</artifactId> </dependency> 只显示所有公司 ALL_COMPANY 表示所有公司。 @Order(10) @Component @SPI.Service public class CustomWorkflowCompanyQueryApi implements WorkflowCompanyQueryApi { @Override public Pagination<PamirsCompany> queryPage(Pagination<PamirsCompany> page, IWrapper<PamirsCompany> queryWrapper) { Pagination<PamirsCompany> pageResult = new Pagination<>(); pageResult.setContent(Lists.newArrayList(ALL_COMPANY)); pageResult.setTotalPages(1); return pageResult; } } 不显示所有公司 @Order(10) @Component @SPI.Service public class CustomWorkflowCompanyQueryApi implements WorkflowCompanyQueryApi { @Override public Pagination<PamirsCompany> queryPage(Pagination<PamirsCompany> page, IWrapper<PamirsCompany> queryWrapper) { return new PamirsCompany().queryPage(page, queryWrapper); } } 仅显示特定公司 @Order(10) @Component @SPI.Service public class CustomWorkflowCompanyQueryApi implements WorkflowCompanyQueryApi { private static final Set<String> COMPANY_CODES = Sets.newHashSet("CH0001", "CH0002"); @Override public Pagination<PamirsCompany> queryPage(Pagination<PamirsCompany> page, IWrapper<PamirsCompany> queryWrapper) { Set<String> companyCodes = Sets.newHashSet("CH0001", "CH0002"); LambdaQueryWrapper<PamirsCompany> query = ((QueryWrapper<PamirsCompany>) queryWrapper).lambda(); query.in(PamirsCompany::getCode, COMPANY_CODES); return new PamirsCompany().queryPage(page, queryWrapper); } }
-
前端学习路径
准备工作 环境准备-1h安装基础环境,需要Node和PNPM如果已经安装检查对应版本,体验阶段建议版本保持一致 克隆一个空工程-0.5h全新工程 注意事项-0.5h静态资源解压,如果还没有对应的后端服务。可以使用:https://demo.oinone.top(Oinone演示环境),账号密码:admin/admin 前端基础 1.1.1了解组件-3h– 组件如何开发– 组件如何复用– 组件如何嵌套 1.1.2 更近一步-5h– 构建更复杂的工作台– 如何发起后端请求– 构建一个通用的图表组件 1.1.3 深入了解概念-5h– 通用概念、名词解释– 页面渲染原理– 组件执行原理 1.1.4业务实战-实现通用的甘特图组件-8h– 怎么与第三方结合– 如何在开源组件上接入Oinone, 并复用 1.1.5 业务实战-实现通用的画廊组件-6h–如何更近一步复用–基础学习结束 前端进阶 2.1.1代码和无代码如何结合-4h– 了解无代码如何使用和基础概念 2.1.2使用无代码搭建增删改查-8h– 了解无代码如何使用和基础概念 最后一步 当您实现玩基础和进阶的所有的效果,Oinone的整体使用您已经大致掌握了,接下来您可以找一个当前业务的场景来实现它把!
-
后端学习路径
准备工作 -1h 后端研发环境安装后端研发环境,需要idea和oinone插件,git和maven 设置指南为学习教程进行的一些准备 后端基础 1.1.1整体介绍 -0.5h– 模块(module)定义– 模块(Module)结构– Oinone版本 1.1.2 新建一个应用 -1.5h为创建一个全新的 Oinone 模块奠定基础。从零开始,仅使用让 Oinone 识别我们模块所需的最少元素。包括: — 新建费用管理模块– 定义Oinone的费用模块– 配置启动工程的YAML文件 1.1.3 模型与基础字段 -3h– 对象关系映射ORM– 模型基础字段 1.1.4 安全简介 -3h配置模型的菜单入口和对应角色的权限(访问权限和数据权限) — 菜单入口– 用户与角色– 访问权限配置 1.1.5 界面实操-3h通过配置字段的一些新属性和UX属性改变页面交互 –字段一些新属性–UX属性 1.1.6 基础视图-3h–表格视图–表单视图–详情视图 1.1.7 模型建关系-8h–多对一关系(many2one)–多对多关系(many2many)–一对多关系(one2many) 1.1.8 字段间联动-5h–关系字段属性:domain–UX的一些新属性,包括:compute、constructFun 1.1.9 准备学习行为-3h–单记录操作–批量操作 1.1.10 约束-1h–SQL约束–校验约束–UI交互约束 1.1.11 追加细节 -3h–内联视图–组件widget–表格排序 1.1.12 继承-2h–函数的重写–模型的继承 1.1.13 模块间相互作用-2h–link模块 1.1.14 产品的个性化开发-4h–模块的upstream属性–函数特性,包括扩展点、拦截器 后端进阶 2.1.1 调试工具-1hOinone 提供的调试工具是一款支持在浏览器页面直接进行 页面调试 与 接口调试 的效率工具。 2.1.2 界面设计器-4h界面设计器提供了直观的可视化界面,允许用户通过拖拽和配置组件的方式来构建应用界面,而无需依赖传统的手写大量代码的方式。这种设计器旨在简化界面开发过程,提高开发效率,同时确保界面的美观和易用性。
-
请确认函数是否存在报错排查路径
当函数不存在的时候,可能有的原因如下:先确认引入启动环境: 是否引入distribution-session包?(Y/N) 如果 distribution-session 包被引入,可能的原因如下: 先检查 base_function 根据 namespace 和 fun 检查函数是否存在,如果存在,检查 openLevel 是否包含 API 级别(二进制值为 14/12/8)。 在 base_model_data 中根据 res_id 检查 load_module,同一环境中所有jvm服务,加载模块必须在启动模块或启动模块的依赖模块中。 检查 redis 中 base.Model:${modelModel}:model_model 键值是否存在,如果存在,根据函数关键字尝试搜索。 如果上面三步没有找到问题,且所有元数据都存在。distribution-session 包可能没有引入,确认是否需要使用 distribution-session 包。 如果 distribution-session 包没有被引入,可能的原因如下: 先检查 base_function 根据 namespace 和 fun 检查函数是否存在,如果存在,检查 openLevel 是否包含 API 级别。 在 base_model_data 中根据 res_id 检查 load_module,加载模块必须在启动模块中。
-
集成接口测试功能
API、 WebService、数据库的测试功能
-
后端脚手架生成工程
后端脚手架生成工程 1、使用如下命令来利用项目脚手架生成工程:新建archetype-project-generate.sh 脚本,或者直接下载链接链接:Linux/Unix/Mac下: archetype-project-generate.shWindows: archetype-project-generate.bat archetype-project-generate.sh #!/bin/bash # 项目生成脚手架 # 用于新项目的构建 # 脚手架使用目录 # 本地 local # 本地脚手架信息存储路径 ~/.m2/repository/archetype-catalog.xml archetypeCatalog=local # 以下参数以pamirs-demo为例 # 新项目的groupId groupId=pro.shushi.pamirs.demo # 新项目的artifactId artifactId=pamirs-demo # 新项目的version version=1.0.0-SNAPSHOT # Java包名前缀 packagePrefix=pro.shushi # Java包名后缀 packageSuffix=pamirs.demo # 新项目的pamirs platform version pamirsVersion=4.7.8 # Java类名称前缀 javaClassNamePrefix=Demo # 项目名称 module.displayName projectName=OinoneDemo # 模块 MODULE_MODULE 常量 moduleModule=demo_core # 模块 MODULE_NAME 常量 moduleName=DemoCore # spring.application.name applicationName=pamirs-demo # tomcat server address serverAddress=0.0.0.0 # tomcat server port serverPort=8090 # redis host redisHost=127.0.0.1 # redis port redisPort=6379 # 数据库名 db=demo # zookeeper connect string zkConnectString=127.0.0.1:2181 # zookeeper rootPath zkRootPath=/demo mvn archetype:generate \ -DinteractiveMode=false \ -DarchetypeCatalog=${archetypeCatalog} \ -DarchetypeGroupId=pro.shushi.pamirs.archetype \ -DarchetypeArtifactId=pamirs-project-archetype \ -DarchetypeVersion=4.7.8 \ -DgroupId=${groupId} \ -DartifactId=${artifactId} \ -Dversion=${version} \ -DpamirsVersion=${pamirsVersion} \ -Dpackage=${packagePrefix}.${packageSuffix} \ -DpackagePrefix=${packagePrefix} \ -DpackageSuffix=${packageSuffix} \ -DjavaClassNamePrefix=${javaClassNamePrefix} \ -DprojectName="${projectName}" \ -DmoduleModule=${moduleModule} \ -DmoduleName=${moduleName} \ -DapplicationName=${applicationName} \ -DserverAddress=${serverAddress} \ -DserverPort=${serverPort} \ -DredisHost=${redisHost} \ -DredisPort=${redisPort} \ -Ddb=${db} \ -DzkConnectString=${zkConnectString} \ -DzkRootPath=${zkRootPath} archetype-project-generate.bat @echo off :: 项目生成脚手架 set archetypeCatalog=local set groupId=pro.shushi.pamirs.demo set artifactId=pamirs-demo set version=1.0.0-SNAPSHOT set packagePrefix=pro.shushi set packageSuffix=pamirs.demo set pamirsVersion=4.7.8 set javaClassNamePrefix=Demo set projectName=OinoneDemo set moduleModule=demo_core set moduleName=DemoCore set applicationName=pamirs-demo set serverAddress=0.0.0.0 set serverPort=8090 set redisHost=127.0.0.1 set redisPort=6379 set…