Giter VIP home page Giter VIP logo

snakerflow's Introduction

Introduction

Snaker是一个基于Java的轻量级工作流引擎,适用于企业应用中常见的业务流程。本着轻量、简单、灵巧理念设计,定位于简单集成,多环境支持。

轻量: snaker-core.jar大小208K,代码行数约7000行,强大的扩展支持,不依赖于具体的ORM框架

简单: 表设计简单,流程组件简单[start/end/task/custom/subprocess/decision/fork/join]

灵巧: 暴露大量可扩展接口,支持流程设计器、流程引擎的组件模型自定义

设计器(Web在线/Eclipse插件)

image

Contact

Wiki

License

Apache License Version 2.0 http://www.apache.org/licenses/LICENSE-2.0.html

snakerflow's People

Contributors

snakerflow avatar wendal avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

snakerflow's Issues

解析XML文件类ModelParser不是线程安全的

在项目里发现,在并发情况下,获得的TaskModel可能是错误的,原因是ModelParser类的私有方法parseModel在并发下可能返回错误的节点数据,导致TaskModel不是预想的结果。

本人通过对该方法增加synchronized关键字解决问题。

具体可能与实现有关系,时间关系没有深挖。

该项目停止更新了吗

我用snakerflow 开发了 2个项目 还是停方便简单的了,星星这么多 还是可以继续下去

Snaker entity should be serializable completely.

@snakerflow, I encountered some problem when integrated with snaker and hazelcast which the latter one to be the distributed cache especially for the Process entity. but it was a pity that such could not be
serializable completely. as the process has something to do with the blob content which derived from java.sql but such is not considered to be serializable so it is with the ProcessModel with some other class definition could not be serializable too. I dare say to make it all serializable is not a good idea but it's better to find some more way to make it more distribute. as snake-core has provide some simple cache for improvement.

新的维护项目空间

维护

  • 使用过程中发现snakerflow的作者和维护者联系不到了,但是snakerflow是一个好的工作流引擎,所以想fork 到新的项目中进行维护更新。
  • 欢迎相关喜欢使用snakerflow的开发者一起来维护和贡献。https://github.com/snakerflow-starter

创建实例Order时,Version版本字段没有默认为0

在创建Snaker流程实例时,发现在插入wf_order表的过程中,并没有将Order的version属性赋值,并在插入过程中强制将version赋值为null,导致在后期无法通过version更改实例order,而且在查询该实例order的时候,apache工具类会默认将为null的version赋一个默认的值也就是0,不知道这是否是一个问题还是我没有理解透彻,望解答,谢谢

fork了此工作流,将会重构全部代码,欢迎大家一起参与提交代码及交流,有以下几个可供大家参考

项目地址: https://github.com/mizhousoft/liteworkflow

目前项目还在重构阶段,重构目标:

  1. 最低支持 jdk17;
  2. 持久层使用mybatis框架开发;
  3. 不再支持xml自定义,这种开放方式对于开发人员太多余;
  4. 当前框架的代码业务逻辑有点混乱,目前还在重构中,比如数据模型跟业务混合在一起,开放接口定义不合理;
  5. 开放接口将与业界流行框架对齐,比如flowable;
  6. spring boot ,可以直接集成;
  7. 考虑数据库表重构,将采用JSON字段来替代一些表结构;
  8. 项目license商用友好,大家可以放心商用及更改;
  9. 等等

目前也是5月份才开始接触工作流,对业界工作流开源框架调研了下,感觉都太大了,所以想基于此框架来做开发,第一个版本预计7月底完成,欢迎大家交流沟通

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.