Semantic-workflow Quick Start

Documents Home

About Cheap Workflow

The general information of cheap engine.

Semantic-workflow Denpendcies

  1. Semantic-transact: for sql handling.TODO: Quick Start
  2. Semantic-DA: for semantics and JDBC datasources handling.TODO: Quick Start
  3. Semantic-jserv(Optional): running on a serverlet context.TODO: Quick Start
  4. anclient(Optional): for accessed web service over a protocal based on json. See Anclient quickstart

Quick Start

If you are planning to use semantic workflow in a servlet, there is a sample project, samentic-jserv, showing how to use it.

To run semantic-workflow, you need configure some information, and start / deploy the maven project.

Note:The following table explains how to configure it in sematic-jserv.
Semantic-workflow is designed to run without a servlet context, but how to run and configure it in an independent java application is still to be tested.

Remarks
workflow-meta.xml

This configuration file specifying the table meta data.

For x-table sturcture see semetic-* common module: xtable(TODO)


xtable: semantics - some business semantics should been handled when cheap engine modifying business form, details, etc.
id: configure id (must be identical) smtc: one of semantic type, see javadoc for semantics-DA/smtype.
table: table name
pk: primary key
args: arguments, see the javadoc.
example: keep user's finger print when modifying business data.

            <s> <id>01</id>
                <smtc>o-t</smtc>
                <tabl>tasks</tabl>
                <pk>taskId</pk>
                <args>oper,opertime</args>
            </s>
                


xtable: right-ds - commands' rights (privilege).

In the sample project, semantic-workflow is configured using dataset to handle commands rights, based on a relationship table, oz_wfrights. To see the example table, use a sqlite client open the test dababase file located in src/test/res/workflow-test.db

sk: semantics id (must be identical)
mysql: sql providing rights for the commands, used for mysql db.
orcl,ms2k,sqlit: seam as mysql
s-tree: not used, for keep compatible to dataset
example: keep user's finger print when modifying business data.

                <mysql> SELECT cmd, rightFilter from oz_wfcmds c join oz_wfnodes n on c.nodeId = n.nodeId and n.wfId = '%1$s' and n.nodeId = '%2$s' </mysql>
                <mysql> SELECT cmd, rightFilter from oz_wfcmds c join oz_wfnodes n on c.nodeId = n.nodeId and n.wfId = '%1$s' and n.nodeId = '%2$s' </sqlite>