2

Springマイクロ サービス オーケストレーション用に提供されているサンプルをGITHUBからダウンロードしました

説明に記載されている詳細どおりに機能しますが、現在、独自のワークフローを構築しようとしており、あるアクティビティから他のアクティビティへの呼び出しフロー (コードが実行される) をマップすることができません。

bpnmガイドでは、最初のアクティビティ名がRetrieve Shopping Cart、2番目のアクティビティ名がValidate Addressとして表示されますが、以下のコードから残りの呼び出しでワークフローを開始すると、

public class ShoppingCartRestController {

    @Autowired
    private ProcessEngine camunda;

    @RequestMapping(value = "/{scId}/submit", method = RequestMethod.POST)
    public ResponseEntity<?> placeOrderPOST(@PathVariable("scId") String scId) {
        ProcessContext context = new ProcessContext();
        submitShoppingCart(scId, context);
        if (context.getError() != null) {
            return new ResponseEntity<>(context.getError(), HttpStatus.FORBIDDEN);
        }
        return new ResponseEntity<>(context.getResponse(), HttpStatus.OK);

    }

    private ProcessInstance submitShoppingCart(String scId, ProcessContext context) {
        return camunda.getRuntimeService().startProcessInstanceByKey(//
                "submitShoppingCart", //
                Variables //
                        .putValue(ProcessConstants.VAR_SC_ID, scId).putValue(ProcessConstants.VAR_CTX, context));
    }
}

上記から、アドレスを取得するように委任する方法を取得できず、次にアドレスを検証するように委任するなどしてフローを終了しますか?

そして、プロセスが submitShoppingCart.bpmn からどのようにリンクされているか (このクラスと実際のクラスの名前が一致しませんか?

4

1 に答える 1