Vous êtes sur la page 1sur 12

CONTENIDO

1. Objetivo del documento ............................................................................................ 2


2. Audiencia .............................................................................................................. 2
3. Requerimientos de instalación .................................................................................... 3
3.1 Requerimientos de instalación .............................................................................. 3
3.2 Protocolos de integración ................................................................................... 3
3.3 Arquitectura de solución ..................................................................................... 3
3.4 Tecnología para almacenamiento de reglas .............................................................. 3
4. DESCRIPCIÓN PROCESO INTEGRACIÓN CON WEBMETHODS .................................................... 4
4.1 Selección de reglas a implementar con OpenRules-webMethods ..................................... 4
4.2 Instalación de Open Rules ................................................................................... 5
Descarga de software ...................................................................................... 5
Creación de paquete en webMethods .................................................................. 6
Copia de librerías OpenRules en servidor de webMethods .......................................... 6
4.3 Creación de artefactos para regla de negocio ........................................................... 7
Generación de proyecto java que contiene los parámetros de entrada/salida de la regla
seleccionada .......................................................................................................... 7
Creación de servicio en webMethods que ejecuta la regla ......................................... 8
Creación de archivos Excel que contienen la regla .................................................. 8
4.4 Pruebas de ejecución de regla de negocio ............................................................. 10
Prueba 1 ................................................................................................... 10
Prueba 2 ................................................................................................... 10
Prueba 3 ................................................................................................... 11
Prueba 4 ................................................................................................... 11
Prueba 5 ................................................................................................... 12
1. OBJETIVO DEL DOCUMENTO
El objetivo de este documento es describir los resultados de un ejercicio de crear dos reglas de negocio
utilizando el rule engine open source llamado “Open Rules” con webMethods.

2. AUDIENCIA
Este documento está dirigido a las personas encargadas de analizar los diferentes rule engines en relación
a su integración con webMethods y con vista en implementar los proyectos que contienen reglas de
negocio.
3. REQUERIMIENTOS DE INSTALACIÓN

3.1 Requerimientos de instalación

- Java 2 Standard Edition: J2SE Development Kit release 1.6 or higher


- Apache Ant 1.6 or higher
- Eclipse SDK (optional, for complex project management only)
- MS Excel or OpenOffice or Google Docs (for rules and forms editing only)

3.2 Protocolos de integración

Supported protocols through web services: Yes


Supported Java integration protocols We provide a Java API.

3.3 Arquitectura de solución

3.4 Tecnología para almacenamiento de reglas

La forma de almacenamiento más común es file system. En la documentación se menciona soporte para
RDBMS y se hace referencia a la DB Java Derby, pero no hace mención de otra DB
4. DESCRIPCIÓN PROCESO INTEGRACIÓN CON WEBMETHODS

4.1 Selección de reglas a implementar con OpenRules-webMethods

Se seleccionaron dos reglas de negocio contenidas en el documento “Definición de validaciones


y reglas de negocio del sector Autos v2_0”. En ambas reglas la entrada es el tipo de solicitud y
la salida es el rol a asignar y el motivo. El diferenciador es la variable de entrada “máximo de
días naturales retroactivos” para la 1era regla y “máximo de días naturales por anticipado” para
la 2da regla.

Las reglas se ejecutaran en secuencia ( Regla 1  Regla 2 ) en Open Rules, devolviendo el rol a
asignar y el motivo.

Regla 1:

Regla 2:
4.2 Instalación de Open Rules

Descarga de software

Se debe descargar la versión actual del software Open Rules


http://openrules.com/download_complete.htm. Una vez completado el registro y hecho el
pago, se descarga un zip con el software Open Rules.

Se deben descomprimir los archivos zip, y en la carpeta descomprimida se puede ver que contiene
un gran número de ejemplos, además de las librerías principales en la carpeta
“openrules.config”.
Creación de paquete en webMethods

De manera que se pueda empaquetar de forma ordenada la funcionalidad de OpenRules, se crea


un nuevo paquete en el Integration Server de webMethods, de nombre “OpenRulesWm”, además
de crearse algunos folders estándar.

Copia de librerías OpenRules en servidor de webMethods

Se debe copiar lo siguiente en el servidor de webMethods:

Origen Destino
Librerías generales de OpenRules: Jars Carpeta librería del paquete de wM
contenidos en carpeta lib, del folder OpenRulesWm (code/jars)
“openrules.config”
Configuración general y plantilla de reglas: Carpeta resources de paquete OpenRulesWm
carpeta “openrules.config”
Librería específica de la regla ejemplo: Jar del Carpeta librería del paquete de wM
proyecto anterior OpenRulesWm (code/jars)
Archivos Excel específicos del ejemplo: Carpeta resources de paquete OpenRulesWm
carpeta “rules” de la regla DecisionHelloJava
4.3 Creación de artefactos para regla de negocio

Generación de proyecto java que contiene los parámetros de entrada/salida de la regla


seleccionada

De manera que la regla definida en el archivo Excel pueda almacenar las entradas y salidas en
un objeto, se define una clase java para la entrada y una para la salida. Después se genera un
jar con el proyecto y este se incorpora a las librerías.
La clase java Poliza contiene los parámetros de entrada (tipo solicitud, máximo de días naturales
retroactivos y máximo días naturales anticipados).
Y la clase Response, contiene los parámetros de salida de la regla ( motivo, rol y result).
Creación de servicio en webMethods que ejecuta la regla

Se crea un Java Service llamado “OpenRulesWm.java:invokeMapfreGralRule” para invocar la


regla definida en el Excel, esto haciendo uso de las librerías provistas por OpenRules.

En el servicio se definen los inputs/outputs de la regla, para luego hacer uso de la clase principal
“com.openrules.ruleengine.Decision” para indicar que regla se está consumiendo, setear los
parámetros necesarios y luego ejecutar la regla. Finalmente, se setean los resultados de la misma
en los parámetros de salida.

Creación de archivos Excel que contienen la regla

a) Archivo Rules/main/ DecisionGral.xls

En este archivo se define la secuencia de subreglas a ejecutarse, se definen RN0001 y RN0002.


b) Archivo Rules/include/ GlossaryGral.xls

En este archivo se relacionan las variables de entrada/salida del set de reglas.

c) Archivo Rules/include/ RulesGral.xls

En este archivo se definen tal cual las reglas RN0001 y RN0002.


4.4 Pruebas de ejecución de regla de negocio

Prueba 1

Prueba 2
Prueba 3

Prueba 4
Prueba 5

Vous aimerez peut-être aussi