makotan _at_ gmail dot com

サンプル解説

testフォルダのexample/org/seasar/buri/testに動作確認と実際に使うことを前提にしたサンプルがあります。
とりあえず、BaoTest.javaを開いてtestNomalOrderTxを表示
このテストは通販サイトの注文を受け付けた後の流れを想定して作りました

顧客が注文します。
注文は即出荷作業へ移り ※出荷作業中
出荷商品がすべて準備完了したとき請求処理に入ります。 ※出荷終了
この時点で顧客は注文の取り消しが出来なくなります。
請求処理をした後、入金確認した地点で注文は終了になります。※終了
顧客はいつでも注文の状態を知ることが出来ます。

XPDLファイルはorderBao.xpdlです
重要なのはユーザの作業としてはこれだけしか存在していないことです
注文のエントリー orderBao_.order(orderInfoDto1);
商品一つめ準備 shippingItemBao_.endShipping(shippingItemDto);
商品二つめ準備 shippingItemBao_.endShipping(shippingItemDto);
請求処理 billBao_.bill(billDto);
入金の確認 billBao_.checkPayment(billDto);
注文がどういう状態にあるか、どの商品が準備できたか or 準備できてないのか、未請求はどれか、未入金はどれかなどの一切の状態をぶりが管理しています。

その為、dbフォルダにあるexample_derby.sql(このサンプル用のcreateTable文)には一切状態フラグが入ってないのが確認できると思います。
って事で次はorderBao.xpdlみたいなXPDLの作り方へ進む予感