Útmutató a jBPM Java használatához

1. Bemutatkozás

Ebben az oktatóanyagban megvitatjuk az üzleti folyamatkezelő (BPM) rendszert és annak Java-ban történő megvalósítását jBPM rendszerként.

2. Üzleti folyamatmenedzsment rendszer

Az üzleti folyamatok menedzsmentjét meghatározhatjuk azon területek egyikeként, amelyek hatóköre a fejlesztésen túl a vállalat minden aspektusára kiterjed.

A BPM láthatóságot biztosít a vállalat funkcionális folyamataival szemben. Ez lehetővé teszi számunkra, hogy iteratív javítás segítségével optimális áramlást találjunk, amelyet folyamatábrával ábrázolunk. A jobb áramlás növeli a nyereséget és csökkenti a költségeket.

A BPM meghatározza saját célkitűzéseit, életciklusát, gyakorlatát és közös nyelvét minden résztvevője, azaz az üzleti folyamatok között.

3. Az jBPM Rendszer

A jBPM egy BPM rendszer megvalósítása a Java-ban. Ez lehetővé teszi számunkra az üzleti folyamatok létrehozását, végrehajtását és az életciklusának figyelemmel kísérését. A jBPM lényege egy Java-ban írt munkafolyamat-motor, amely eszközt nyújt számunkra egy folyamatfolyamat létrehozásához és végrehajtásához a legújabb üzleti folyamatmodellezési notáció (BPMN) 2.0 specifikációk segítségével.

A jBPM elsősorban a futtatható üzleti folyamatra összpontosít. Ezeknek a folyamatoknak elegendő részletük van ahhoz, hogy a munkafolyamat-motoron végrehajthatók legyenek.

Itt van egy grafikus folyamatábra példa a BPMN folyamatmodellünk végrehajtási sorrendjére, amely segít megértésünkben:

  1. A folyamatot a kezdeti kontextus segítségével kezdjük el végrehajtani, amelyet a zöld kezdő csomópont jelöl
  2. Először az 1. feladat fog végrehajtani
  3. Az 1. feladat befejezése után folytatjuk a 2. feladattal
  4. A végrehajtás leáll, amikor találkozik a piros végcsomópontgal

4. IDE Plugins for jBPM Projekt

Lássuk, hogyan kell telepíteni a beépülő modulokat egy jBPM projekt és egy BPMN 2.0 folyamat létrehozásához az Eclipse és az IntelliJ IDEA programokban.

4.1. Eclipse beépülő modul

A jBPM projektek létrehozásához telepítenünk kell egy beépülő modult. Kövessük az alábbi lépéseket:

  1. Ban,-ben Segítség szakaszban kattintson a gombra Telepítse az új szoftvert
  2. Adja hozzá a Drools és a jBPM frissítési webhelyét
  3. Fogadja el a licencszerződés feltételeit, és fejezze be a beépülő modul telepítését
  4. Indítsa újra az Eclipse alkalmazást

Miután az Eclipse újraindul, nekünk kell mennünk Windows -> Beállítások -> Drools -> Drools Flow Nodes:

Az összes lehetőség kiválasztása után rákattinthatunk az „Alkalmazás és bezárás” gombra. Most készen állunk az első létrehozására jBPM projekt.

4.2. IntelliJ IDEA bővítmény

Az IntelliJ IDEA alapértelmezés szerint telepítette a jBPM bővítményt, de ez csak az Ultimate és nem a Közösség opcióban található meg.

Csak kattintással engedélyeznünk kell Konfigurálás -> Beállítások -> Bővítmények -> Telepített -> JBoss jBPM:

Jelenleg nincs BPMN 2.0 folyamattervező ehhez az IDE-hez, bár importálhatjuk * .bpmn fájlokat bármely más tervezőtől, és futtassa őket.

5. Hello World példa

Mocskoljuk be a kezünket egy egyszerű Hello World projekt létrehozásában.

5.1. Hozzon létre egy jBPM Projekt

Új jBPM projekt létrehozásához az Eclipse programban folytatjuk Fájl -> Új -> Egyéb -> jBPM projekt (Maven). Miután megadta projektünk nevét, elérhetjük a célt. Az Eclipse mindent megtesz helyettünk, és letölti a szükséges Maven-függőségeket, hogy létrehozzon egy minta jBPM projektet számunkra.

Ahhoz, hogy ugyanezt létrehozhassuk az IntelliJ IDEA-ban, elmehetünk Fájl -> Új -> Projekt -> JBoss Drools. Az IDE letölti az összes szükséges függőséget, és elhelyezi azokat a lib a projekt mappája.

5.2. Készítse el a Hello World folyamatmodellt

Hozzunk létre egy kis BPM folyamatmodellt, amely a „Hello World” szót nyomtatja ki a konzolba.

Ehhez egy új BPMN fájlt kell létrehoznunk a alatt src / main / resources:

A fájl kiterjesztése .bpmn és megnyílik a BPMN tervezőjében:

A tervező bal oldali panelje felsorolja azokat a csomópontokat, amelyeket korábban kiválasztottunk az Eclipse beépülő modul beállítása során. Ezeket a csomópontokat fogjuk használni a folyamatmodellünk létrehozásához. A középső panel a munkaterület, ahol elkészítjük a folyamatmodelleket. A jobb oldalon található a Tulajdonságok fül, ahol beállíthatjuk egy folyamat vagy csomópont tulajdonságait.

Ebben Helló Világ modellt használjuk:

  • Start Event - szükséges a folyamatpéldány elindításához
  • Szkriptfeladat - engedélyezi a Java-kivonatokat
  • Esemény befejezése - a folyamatpéldány befejezéséhez szükséges

Mint korábban említettük, az IntelliJ IDEA-nak nincs BPMN-tervezője, de importálhatjuk .bpmn az Eclipse-ben vagy egy webdesignban tervezett fájlok.

5.3. Nyújtsa be és hozza létre a Tudásbázist (kbase)

Az összes BPMN fájl betöltődik kbase mint folyamatok. Át kell adnunk a megfelelő folyamatot azonosítók a jBPM motorhoz azok végrehajtása érdekében.

Létrehozzuk a kmodule.xml alatt források / META-INF velünk kbase és BPMN fájlcsomag-deklaráció:

A nyilatkozat megtétele után használhatjuk a KieContainer betölteni a kbase:

KieServices kService = KieServices.Factory.get (); KieContainer kContainer = kService.getKieClasspathContainer (); KieBase kbase = kContainer.getKieBase (kbaseId);

5.4. Hozza létre a jBPM Futásidejű kezelő

Használjuk a JBPMHelper jelen van a org.jbpm.test csomag egy futásidejű környezet mintájának felépítéséhez.

Két dologra van szükségünk a környezet létrehozásához: először egy adatforrás a környezet létrehozásához EntityManagerFactory, másodszor pedig a mi kbase.

JBPMHelper rendelkezik módszerekkel a memóriában lévő H2 kiszolgáló elindítására és az adatforrás beállítására. Ugyanezt felhasználva létrehozhatjuk a EntityManagerFactory:

JBPMHelper.startH2Server (); JBPMHelper.setupDataSource (); EntityManagerFactory emf = Persistence.createEntityManagerFactory (persistenceUnit);

Miután mindent előkészítettünk, létrehozhatjuk a sajátunkat RuntimeEnvironment:

RuntimeEnvironmentBuilder runtimeEnvironmentBuilder = RuntimeEnvironmentBuilder.Factory.get (). NewDefaultBuilder (); RuntimeEnvironment runtimeEnvironment = runtimeEnvironmentBuilder. entitásManagerFactory (emf) .knowledgeBase (kbase) .get ();

Használni a RuntimeEnvironment, létrehozhatjuk a jBPM futásidejű kezelőnket:

RuntimeManager runtimeManager = RuntimeManagerFactory.Factory.get () .newSingletonRuntimeManager (runtimeEnvironment);

5.5. Futtassa a folyamatpéldányt

Végül használjuk a RuntimeManager hogy megkapja a RuntimeEngine:

RuntimeEngine motor = manager.getRuntimeEngine (initialContext);

Használata RuntimeEngine, létrehozunk egy tudásszakaszt és elindítjuk a folyamatot:

KieSession ksession = motor.getKieSession (); ksession.startProcess (processId);

A folyamat elindul és kinyomtatódik Helló Világaz IDE konzolon.

6. Következtetés

Ebben a cikkben bemutattuk a BPM rendszert, a Java megvalósítás - a jBPM - használatával.

Ez egy gyors útmutató a jBPM projekt elindításához. Az itt bemutatott példa a minimális folyamatot használja a folyamat végrehajtásának rövid megértése érdekében, és megtalálható a GitHubon.

A folyamat végrehajtásához egyszerűen le kell futtatnunk a fő metódust a WorkflowProcessMain osztály.