网上有很多这方面的资料,不过大部分都出自一个人的文章,而且应该大部分人是做不成功的。参考了Tyler Zhou的资料。简单测试了一下,成功。by smilingleo
http://tyler-zhou.javaeye.com/blog/163928
liferay集成了jbpm工作流,他是可以先择通过两种组件来调用JBPM的,servicemix和mule,根据Liferay的官方建议,最好选择mule.
1.Liferay官方网站下载liferay-portal-jbpm-web-4.3.2.war,liferay-portal-mule-web-4.3.2.war. 重命名为jbpm-web.war,mule-web.war 。(我测试时,用的Liferay版本是5.0, jbpm-web和mule是4.4.2, 没问题)
2.两个包都放到/webapps下面,liferay启动后会自动的解压,或者用WINRAR也可以解压。
3.webapps/ROOT/WEB-INF/classes/portal-ext.properties增加jbi.workflow.url=http://localhost:8080/mule-web/workflow注意端口号要和自已的相同。
4.如果要修改端口号那么还要修改webapps/mule-web/WEB-INF/mule-config.xml下
<property name="url" value="http://localhost:8080/jbpm-web/servlet" />端口号;
5.webapps/jbpm-web/WEB-INF/classes/hibernate.cfg.xml,先择自已用到的数据库类型并配置, webapps/jbpm-web/WEB-INF/sql下面有各种数据库脚本,选择自已的数据库。by smilingleo
6. 用下面的测试流程定义进行测试。
<?
xml version="1.0" encoding="UTF-8"
?>

<
process-definition
xmlns
="urn:jbpm.org:jpdl-3.1"
name
="Example Process"
>
<
start-state
name
="start"
>
<
task
>
<
assignment
class
="com.liferay.jbpm.handler.IdentityAssignmentHandler"
>
<
companyId
>
liferay.com
</
companyId
>
<
type
>
user
</
type
>
<
name
>
test@liferay.com
</
name
>
</
assignment
>
<
controller
>
<
variable
name
="text:color"
/>
<
variable
name
="text:size"
/>
</
controller
>
</
task
>
<
transition
name
="to_t"
to
="t"
/>
</
start-state
>
<
task-node
name
="t"
>
<
task
name
="t"
>
<
controller
>
<
variable
name
="text:color"
access
="read"
/>
<
variable
name
="text:size"
access
="read"
/>
</
controller
>
<
assignment
class
="com.liferay.jbpm.handler.IdentityAssignmentHandler"
>
<
companyId
>
liferay.com
</
companyId
>
<
type
>
user
</
type
>
<
name
>
test@liferay.com
</
name
>
</
assignment
>
</
task
>
<
transition
name
="to_end"
to
='end'
/>
</
task-node
>
<
end-state
name
="end"
></
end-state
>
</
process-definition
>
7. 在definitions中就可以看到定义的工作流了。点击后面的“Add instance”就可以创建一个工作流实例。
本文介绍如何在Liferay中集成JBPM工作流,并使用Mule作为集成组件。包括下载对应版本的JBPM和Mule插件、配置必要的属性文件、设置数据库连接等步骤,最后通过一个简单的流程定义进行验证。
55

被折叠的 条评论
为什么被折叠?



