我有一个webapp,它具有用户/组功能和现有的用户/组数据。
我想使用Activiti流程引擎,但似乎Activiti管理用户/组信息本身。
我应该:
RepositoryService
,IdentityService
等的另一个细节,并重新编译?似乎RepositionServiceImpl
在Activiti来源中是硬编码的,setRepositionService()
中没有ProcessEngine
方法。我无法重命名现有的db表,因为还有其他一些应用程序使用它们。
我已阅读用户指南,但未找到有关如何将Activiti与现有应用集成的任何信息。
答案 0 :(得分:8)
我不知道您目前使用的是哪个版本,但我在5.5版中成功使用了您的第二个选项,覆盖了一些Activiti类:
扩展GroupManager
和UserManager
(来自包org.activiti.engine.impl.persistence.entity
),并使用所需的DAO / EntityManager /指向您的数据库的任何方法实现您需要的方法。代码在此处:GroupManager / UserManager。
为群组和用户实施org.activiti.engine.impl.interceptor.SessionFactory.SessionFactory
。在此处查看代码:ActivitiGroupManagerFactory / ActivitiUserManagerFactory。
最后,在您的活动配置中,您必须设置新的SessionFactory类。我使用spring,所以有我的activiti-config bean代码:activiti-config.xml(检查第14行)
希望这在某种程度上有所帮助:)
答案 1 :(得分:2)
您可以查看Lim Chee Kin代码以将activiti与spring security https://github.com/limcheekin/activiti-spring-security集成在一起,也许您可以重复使用Spring安全性的用户/组数据,这样您就可以重用他的代码。