27.2. ビジネスプロセスを実行する要求の例
有効なプロセス定義インスタンスを作成したら、パブリック KIE API と内部 KIE API の組み合わせを使用してこれを実行できます。プロセスを実行するには、KieBase
の作成に使用する Resource
を作成します。KieBase
を使用して、プロセスを実行するために KieSession
を作成できます。
以下の例は ProcessBuilderFactory.toBytes
プロセスを使用して ByteArrayResource
リソースを作成します。
プロセスを実行する要求の例
// Build resource from Process KieResources resources = ServiceRegistry.getInstance().get(KieResources.class); Resource res = resources .newByteArrayResource(factory.toBytes(process)) .setSourcePath("/tmp/processFactory.bpmn2"); // source path or target path must be set to be added into kbase // Build kie base from this resource using KIE API KieServices ks = KieServices.Factory.get(); KieRepository kr = ks.getRepository(); KieFileSystem kfs = ks.newKieFileSystem(); kfs.write(res); KieBuilder kb = ks.newKieBuilder(kfs); kb.buildAll(); // kieModule is automatically deployed to KieRepository if successfully built. KieContainer kContainer = ks.newKieContainer(kr.getDefaultReleaseId()); KieBase kbase = kContainer.getKieBase(); // Create kie session using KieBase KieSessionConfiguration conf = ...; Environment env = ....; KieSession ksession = kbase.newKieSession(conf,env); // execute process using same process Id that is used to obtain ProcessBuilder instance ksession.startProcess(processId)