Activiti6 通过覆盖标准会话工厂不使用来自定义身份管理?



当我使用 activit6 时我是初学者,我遵循以下代码

<bean id="processEngineConfiguration" class="...SomeProcessEngineConfigurationClass">
...
<property name="customSessionFactories">
    <list>
        <bean class="com.mycompany.MyGroupManagerFactory"/>
        <bean class="com.mycompany.MyUserManagerFactory"/>
    </list>
</property>
...

public class MyCompanyGroupManager extends GroupEntityManager {
private static Logger log = LoggerFactory.getLogger(MyCompanyGroupManager.class);
@Override
public List<Group> findGroupsByUser(String userId) {
    log.debug("findGroupByUser called with userId: " + userId);
    return super.findGroupsByUser(userId);
}
@Override
public List<Group> findGroupByQueryCriteria(GroupQueryImpl query, Page page) {
    log.debug("findGroupByQueryCriteria called, query: " + query + " page: " + page);
    return super.findGroupByQueryCriteria(query, page);
}
@Override
public long findGroupCountByQueryCriteria(GroupQueryImpl query) {
    log.debug("findGroupCountByQueryCriteria called, query: " + query);
    return super.findGroupCountByQueryCriteria(query);
}
@Override
public Group createNewGroup(String groupId) {
    throw new UnsupportedOperationException();
}
@Override
public void deleteGroup(String groupId) {
    throw new UnsupportedOperationException();
}

}

但是我发现一些API不是无效的,例如不存在GroupIdentityManager类。除了GroupEntityManager更新界面,我应该实现什么自定义身份管理?非常感谢

我在github中找到了答案

解决方案如下:

  1. 实现GroupDataManager接口。或者,扩展MybatisGroupDataManager.class

  2. ProcessEngineConfigurationImpl.setGroupDataManager(GroupDataManager groupDataManager)

最新更新