es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Drools – Enviar datos de entrada al proceso de negocio (JBPM) a través de REST

¡Buen día! Estoy intentando iniciar el siguiente proceso de negocio de Drools vía REST.

Este proceso tiene la siguiente variable de proceso (llamada contractObject), la cual es poblada al inicio del flujo y utilizada para validar con la tabla de decisiones.

Estoy enviando el siguiente cuerpo en la solicitud de Drools:

Pero sigo recibiendo el siguiente error:

Así que supongo que no estoy enviando los datos correctamente ya que parece que no los está recibiendo. En la documentación no se especifica un formato específico para enviar los datos de las variables de proceso, esto es lo que he encontrado para el comando “start-process”:

¿Qué podría estar haciendo mal?

Enlaces a la documentación que he consultado:
1) https://access.redhat.com/documentation/en-us/redhat-process-automation-manager/7.1/html-single/interacting-with-red-hat-process-automation-manager-using-kie-apis/index#runtime-commands-con-kie-apis
2) https://docs.jboss.org/drools/release/5.3.0.Final/droolsjbpm-integration-docs/html/ch04.html#d0e1028

Imagen de la tabla de decisiones de entrada/salida de datos:

Tags:  , , ,

Answer

  1. Avatar for davy.ai

    Parece que los datos que está enviando en la solicitud Drools pueden no estar en el formato correcto. Según la documentación que proporcionó, el campo data en el comando start-process debe ser una matriz de mapas, donde cada mapa contiene el nombre de la variable como clave y el valor de la variable como valor.

    En su solicitud, tiene objetos anidados bajo la clave contractObject. Intente cambiar su campo data por el siguiente:

    "data": [
         {  
             "name": "contractObject",
             "value": {
                 "contractType": "P",
                 "service": 2000,
                 "serviceType": 3000,
                 "promotion": 3470
             }
         }
    ]
    

    Aquí, estamos asignando directamente el objeto como el valor de la variable contractObject. Asegúrese de reemplazar el campo data anterior en su solicitud con este cuando lo pruebe.

    Si esto no resuelve el problema, verifique que el nombre de la variable y los tipos de valor coincidan exactamente con lo que espera su tabla de decisiones.

Comments are closed.