¿Cómo agrego y llamar a una clase Java personalizada dentro de un proceso jBPM?

Nenotlep:

Tengo un jBPM local de 7,33 con un proceso simple. En un momento en el proceso, lo que necesito para generar un archivo PDF.

Quiero hacerlo mediante la creación de una clase muy básica de Java que se ejecuta en una tarea. La clase obtendría las variables del ámbito de aplicación de procesos, generar el PDF y guardar la burbuja generada (o ruta de sistema de archivos) como una variable de proceso.

¿Cómo agrego una clase personalizada y luego llamar a esa clase?

Bashir:

Eso es lo que llamamos WorkItemHandler, la clase java será una tarea personalizada jbpm

  1. En primer lugar instalar jbpm en Eclipse

  2. Crear un proyecto jBPM en Eclipse (marque Construir el proyecto con Maven)

  3. crear una clase Java que implementa WorkItemHandler. será en este formato.

    package com.example;
    import org.kie.api.runtime.process.WorkItem;
    
    import java.util.HashMap;
    import java.util.Map;
    
    import org.drools.core.process.instance.WorkItemHandler;
    import org.kie.api.runtime.process.WorkItemManager;
    
    public class WorkItemTest implements WorkItemHandler {
    
        @Override
        public void executeWorkItem(WorkItem workItem, WorkItemManager manager) {
            workItem.getParameters().toString();
    
            /**Input Variables***/
            String stringVar = (String) workItem.getParameter("stringVar");
    
    
            /***
             * 
             * 
             * YOUR CODE
             * 
             */
    
            String msg = "done";
    
            /**Output Variables in a HashMap***/
            Map<String, Object> resultMap = new HashMap<String, Object>();
            resultMap.put("Result", msg); //("name of variable", value)
            manager.completeWorkItem(workItem.getId(), resultMap);
        }
    
        @Override
        public void abortWorkItem(WorkItem workItem, WorkItemManager manager) {
            System.out.println("Aborted ! ");
    
        }
    
    }
    
  4. Construir un archivo jar de este proyecto.

  5. Desde el banco de trabajo, ir a Artefacto, subir el tarro
    clic en este icono, a continuación, artefactosintroducir descripción de la imagen aquí

  6. a partir de la configuración de su proyecto, vaya a las dependencias, y añadir desde el repositorio del artefacto cargado introducir descripción de la imagen aquí

  7. a partir de la configuración de su proyecto, vaya a despliegues / Manipulador de elementos de trabajo y añadir un nuevo artículo Handler trabajo: escribir su nombre y cómo crear una instancia ( new com.example.WorkItemTest())introducir descripción de la imagen aquí

  8. Por último, vaya a la "WorkDefinitions" activos, definir su elemento de trabajo (por lo que se puede ver en la herramienta de diseñador de flujo de trabajo) de la siguiente

  [
    "name" : "WorkItemTest",
    "parameters" : [ //inputs
        "stringVar " : new StringDataType(),
    ],
    "results" : [ //outputs
        "Result" : new ObjectDataType(),
    ],
    "displayName" : "WorkItemTest",
    "icon" : "defaultservicenodeicon.png"
  ]
  1. Ahora usted puede encontrar esta tarea en "Tareas de servicio" de la herramienta de diseñador de flujo de trabajo (antes de actualizar)

Supongo que te gusta

Origin http://43.154.161.224:23101/article/api/json?id=280215&siteId=1
Recomendado
Clasificación