网路冷眼@BlogJava

熙熙攘攘一闲人 以冷静的眼光观察技术
posts - 88, comments - 193, trackbacks - 0, articles - 28
  BlogJava :: 首页 :: 新随笔 :: 联系 :: 聚合  :: 管理

Chapter 13. Activiti Cycle(Activiti Cycle)

Table of Contents

Overview(概要)
Repositories(仓库)
Artifacts and Actions(制品和动作)

Activiti Cycle is a web application that provides a collaborative platform for different stakeholders of BPM projects (Business, developers, IT operations, ...). It combines different repositories like the Activiti Modeler repository, Subversion or your local file system into a single view, which makes it easy to browse all the artifacts that are involved in the process of creating an executable business process. In addition to this, Activiti Cycle provides built in actions like moving artifacts between repositories or downloading different formats of process models, and a plug-in infrastructure for custom actions. Below is a screen shot of Cycle in a default configuration as pre-configured in the demo setup. Please note: Activiti Cycle is still in a "beta" state. With collaborative tools like Activiti Cycle we dont have years of experience yet, like we have with the core engine. Currently most features are already stable, but with adding more use cases and features, we still have to do some tuning of the APIs or database tables. This means, that for example the Plugin-API is still subject to change, which you have to know when you start writing own plugins. Or the database might change without having out-of-the-box database migration scripts ready. But be sure: We work hard on removing the beta status, meaning you will get a stable API and database schema.

Activiti 生命周期管理(Activiti Cycle)是一个Web应用程序,它为BPM项目的不同干系人(业务人员,开发者,IT运营人员,...)提供一个协作平台。它由像Activiti Modeler仓库,Subversion或者本地文件系统之类的不同仓库组合至一个单一视图。这个视图使得浏览所有包含建立可执行业务流程的制品变得容易。此外,Activiti Cycle提供许多内内置功能:在仓库间移动制品,或者下载不同格式的流程模型,和定制动作的插件基础设施。下图是一个在作为示例建立的预配置的缺省配置。请注意:Activiti Cycle仍处在"beta"状态。在Activiti Cycle这样的协同共进的帮助下,我们没有数年经验,但是我们具有核心引擎。尽管目前大多数特性已趋稳定,但是由于不断增加更多的用例和特性,我们仍然不得不整定一些API或者数据库表。这意味著,为了示例而作的Plugin-API仍然遭遇变更。当你开始编写自己的插件时,你不得不知道这些变更。或者,在没有开箱即用的数据库迁移脚步准备好时,数据库也可能变化。但是请确定:我努力移除beta状态,意味着你将得到一个稳定的API和数据库结构。

activiti.cycle

Overview(概要)

Since Activiti Cycle is meant to be used by people with entirely different roles, backgrounds and requirements, it was build with customization and extensibility in mind. However, the plug-in infrastructure which is already present in the current release is just a first step to make it possible to tailor Cycle to your specific needs. Future versions will provide a revised plug-in mechanism, a user interface to configure and plug in repositories, tags to dynamically add meta data to artifacts and a commenting function to directly collaborate on an artifact level. You can find a brief introduction to the initial version of Activiti Cycle and the vision behind it in the article Activiti Cycle explained.

因为Activiti Cycle意欲让完全不同角色,背景和需求的人使用,所以它把可定制性和可扩展性牢记在心。但是,在当前发布当中已具有插件基础设施,只是让裁剪Cycle满足你的需求的第一步。未来的版本将提供一个修订的插件机制,针对配置和插件仓库的用户接口,动态增加元数据到制品的的标签,直接协作到制品级别的注释函数。在这篇文章Activiti Cycle explained你能找到Activiti Cycle初始版本的简介和幕后的愿景。

Repositories(仓库)

activiti.cycle.repositories

The above image shows the Activiti Cycle repository tree. By default it provides access to the repository of the Activiti Modeler and a demo Eclipse workspace, which is located at ${activiti.home}/workspace/activiti-cycle-examples in your local file system. The repositories are plugged in as repository connectors. You'll find the configuration as an XML string in the table CYCLE_CONFIG in the Activiti database, which you can access as described in ???. Here is the default configuration for the user kermit:

上图展示了Activiti Cycle仓库树。缺省地,它提供了对Activiti Modler仓库和演示应用Eclipse工作区(workspace)的访问功能.Eclipse工作区的位置在本地文件夹的${activiti.home}/workspace/activiti-cycle-examples。仓库以仓库连接器的方式进行插拔。你将在Activiti数据库里的 CYCLE_CONFIG 表里发现作为一个XML字符串的配置。你能够访问在 ???.里描述的字段。这里是为用户 kermit的缺省配置。

      ...
<org.activiti.cycle.impl.conf.ConfigurationContainer>
<name>kermit</name>
<linkedConnectors>
<org.activiti.cycle.impl.connector.signavio.SignavioConnectorConfiguration>
<id>Activiti</id>
<name>Activiti Modeler</name>
<signavioBaseUrl>http://localhost:8080/activiti-modeler/</signavioBaseUrl>
<loginRequired>false</loginRequired>
<credentialsSaved>true</credentialsSaved>
<user></user>
<password></password>
</org.activiti.cycle.impl.connector.signavio.SignavioConnectorConfiguration>
<org.activiti.cycle.impl.connector.fs.FileSystemConnectorConfiguration>
<id>Workspace</id>
<name>Eclipse Workspace (File System)</name>
<baseFilePath>/path-to-activiti-home/activiti-5.0.beta2/workspace/activiti-cycle-examples</baseFilePath>
</org.activiti.cycle.impl.connector.fs.FileSystemConnectorConfiguration>
</linkedConnectors> <parentContainers/>
</org.activiti.cycle.impl.conf.ConfigurationContainer>
...

Now, if you want to add, e.g., a Signavio Process Modeler repository, you can simply do this by adding a connector configuration to the XML configuration. If you need a Signavio account, you can register for a free trial at the Signavio web site. Here is an example configuration:

现在,如果你想增加,例如,一个Signavio Process Modeler仓库,你只要通过在XML配置文件增加一个连接器来完成。如果你需要一个Signavio帐号,你能在 Signavio web site网站上注册一个免费的试用号。这里是配置示例。

      ...
<org.activiti.cycle.impl.connector.signavio.SignavioConnectorConfiguration>
<id>Signavio</id>
<name>Signavio</name>
<signavioBaseUrl>https://editor.signavio.com/</signavioBaseUrl>
<loginRequired>true</loginRequired>
<credentialsSaved>true</credentialsSaved>
<user>your user name</user>
<password>secret</password>
</org.activiti.cycle.impl.connector.signavio.SignavioConnectorConfiguration>
...

You may also choose not to save your username and password in the database by setting 'credentialsSaved' to 'false' and leaving 'user' and 'password' empty. Cycle will then ask you for your credentials when it needs them.

通过设置'credenialsSaved'为'false'和'user'和'password' 留空,你也可选择不要将你的用户名和密码保存在数据库里。 当需要证书时,Cycle到时将会向你询问证书。

Another thing you might consider is to add a collection of BPMN examples from the Oryx Project. In order to do this, all you need is the following connector configuration:

你可以考虑的另外的事情是增加一个从Oryx Project.来的BPMN示例。为了达到这个目的,你所需是下面的连接配置:

      ...
<org.activiti.cycle.impl.connector.signavio.OryxConnectorConfiguration>
<id>Signavio</id>
<name>oryx-project.org</name>
<signavioBaseUrl>http://oryx-project.org/</signavioBaseUrl>
<loginRequired>false</loginRequired>
<credentialsSaved>true</credentialsSaved>
<user></user>
<password></password>
</org.activiti.cycle.impl.connector.signavio.OryxConnectorConfiguration>
...

Activiti Cycle also has the capabilities to connect to SVN (Subversion) repositories. The following is an example configuration for the SVN Connector:

Activiti Cycle也具有连接到SVN(Subversion)仓库的能力。如下是SVN Connector的示例配置:

 ...
<org.activiti.cycle.incubator.connector.svn.SvnConnectorConfiguration>
<id>RepositoryId (e.g. ProjectSVN)</id>
<name>Repository Name (My Project SVN)</name>
<repositoryPath>Path to your repository (e.g. http://mycompany.com/svn/projectName)</repositoryPath>
<credentialsSaved>true</credentialsSaved>
<user>user name</user>
<password></password>
<temporaryFileStore>where the connector creates temporary files between commits (e.g. /tmp)</temporaryFileStore>
</org.activiti.cycle.incubator.connector.svn.SvnConnectorConfiguration>
...

Note: there are currently two configuration options for the Activiti Cycle SVN Connector:

注意:针对Activiti Cycle SVN Connector有两种配置选项:

  • SVN is installed on the machine running Activiti and in the local PATH.

    SVN安装在运行在Activiti的机器上,并在本地PATH里面。

  • You need to manually download the SVNKit library and install it. To this end, download the svnkit.jar and copy it to the following location: ${activiti.home}/apps/apache-tomcat-6.X.XX/lib/. (Tomcat restart required.) SVNKit cannot be bundled with Activiti due to licensing restrictions.

    你需要手动下载并安装 SVNKit库,为了这个目的,下载 并拷贝 svnkit.jar 至如下位置:${activiti.home}/apps/apache-tomcat-6.X.XX/lib/.(需要重启Tomcat).SVNKit由于授权限制而不能和Activiti捆绑在一起。

Please note that the SVN Connector is still in incubation and considered experimental.

请注意:SVN Connctor仍处于孵化阶段并认为是实验性的。

Artifacts and Actions(制品和动作)

When you click an item in the repository tree — in Activiti Cycle we refer to them as artifacts — the details are displayed on the right side. Currently, not all files are supported, but we aim to provide useful default views for the most common file types. In addition to the views, there is a set of actions that can be executed on the artifact. We currently distinguish between download links for different content representations, links that open external resources (e.g. the Signavio Modeler) and actions that require input properties.

当你点击仓库树的一个条目--在Activiti Cycle我们称之为制品--细节在右端显示。当前,尽管并不是支持所有文件,但是为了最普通的文件类型,我们计划提供有用的缺省视图。除了视图之外,有一个能够在制品上执行的动作集合。我们当前区分为不同内容表示不同的下载链接和打开外部资源(例如Signavio Modeler)的链接,以及需要输入特性的动作。

activiti.cycle.action.forms


只有注册用户登录后才能发表评论。


网站导航: