技术开发 频道

基于Jazz技术构建企业级Web2.0应用(3)

    第四步,为PetStore定义、部署process,并创建Project Area、Team Area

    启动Jazz服务器,在Rational Team Concert中创建一个到到本地存储库的连接。

    在连接中创建一个Process模板"petstore process definition":


    图2. 创建Process模板
 
    在打开的"petstore process definition"中选择"Process Configuration Source",配置如下:

    清单10. PetStore Process定义

<?xml version="1.0" encoding="UTF-8"?>
<process-specification xmlns="http://com.ibm.team.process">
<project-configuration>
        <initialization>
        </initialization>
        <permissions>
            <role id="default">
                <project-operation id="com.ibm.team.process.server.saveProjectArea">
                    <action id="createTeamArea"></action>
                </project-operation>
            </role>
        </permissions>
</project-configuration>
    <team-configuration>
        <permissions>
            <role id="default">
                <operation id="com.ibm.team.process.server.saveTeamArea">
                    <action id="teamArea">
                        <action id="any"/>
                    </action>
                </operation>
                <operation id="com.ibm.petstore.service.buy">
                    <action id="buy"/>
                </operation>
            </role>
        </permissions>
        <behavior>
            <role id="default">
                <operation id="com.ibm.petstore.service.buy">
                    <preconditions>
                    </preconditions>
                    <followup-actions>
                <followup-action id="com.ibm.petstore.service.buyParticipant"
                            name="Buy Pet Participant"
                        description="Buy Pet Participant contains sending a email to notify user pay amount.">
                        </followup-action>
                    </followup-actions>
                </operation>
            </role>
        </behavior>
    </team-configuration>
</process-specification>

    在连接中创建一个Project Area"PetStorePrj",并选择使用process模板"petstore process definition"。


    图3. 选择Process模板

    在"PetStorePrj"中创建一个Team Area"PetStoreUserTeam"。

    注意:由于process定义中已经将执行operation"buy"的权限赋予所有用户(role id="default"),这里无需对PetStoreUserTeam进行额外配置。

执行结果

    用户选择购买某个宠物后,系统将向其发送一封email,图4为log信息。


    图4. 执行结果
 
总结

    Process是Jazz的一个核心构件,它的一个重要作用是为其它构件提供业务流程管理支持。本文详细阐述了Jazz Process中 AOP的一些基本概念和使用方法,并结合PetStore应用介绍了如何在基于Jazz的开发中利用Process机制实现基于AOP的业务流程管理。

参考资源

    关于Jazz Project Area、Team Area及Process等基本概念,请参考Getting Started with Jazz Project Areas and Process

    关于Jazz Process的更多内容请参考Process开发指南

0
相关文章