viernes, 16 de septiembre de 2016

Eliminar Archivo usando File Adapter en OSB 12c


En algunos casos, se puede llegar a precisar eliminar un archivo desde OSB en un flujo (Pipeline). Esta caracterísitca no está soportada por el asistente gráfico (wizard) del File Adapter en JDeveloper 12c.

Estas opciones para eliminar archivos, no están disponibles en la especificación de interacción
“FileReadInteractionSpec” ubicado dentro del archivo JCA del Adaptador.
 
Configurando un File Adapter con la opción DELETE

1)_ Crear en el proyecto OSB un nuevo File Adapter y darle un nombre.

2)_ Seleccionar "Define from operation and Schema (specified later)" desde las opciones.

3)_ Establecer como JNDI: eis/FileAdapter

4)_ Elegir la opción "Synchronous Read File" y asignarle 'Delete' al "Operation Name"


 5)_ Elegir la opción "Physical Path" (Path físico) y setear 'path' como valor:


6)_ Elegir como 'File Name' un nombre de archivo genérico que borrará, como por ejemplo: file.zip


7)_ Marcar la opción "Native Format translation is not required (Schema is Opaque)"


8)_ Una vez creado el Adaptador, editar el arcihvo .JCA y cambiar el nombre de la clase del elemento <interaction-spec> y dejar dicho elemento con las siguientes propiedades: (tener en cuenta lo marcado con color rojo)


Como se puede apreciar, el nombre de la clase del elemento <interaction-spec> cambia... como así también sus propiedades.


¿Como pasar el Path y el Archivo dinamicamente a través de un flujo en OSB?

9)_  En el flujo del Pipeline en OSB, agregar un componente Transport Header en la llamada al Business Service del Adaptador:

Y asignarle al Transport Header la siguiente configuración:


Es importante asignar las propiedades jca.file.* con esos nombres. De ello depende que el Business Service del Adaptador interprete su contenido.

Luego de esto, ya se podria deployar y probar el servicio para comprobar su funcionamiento.

Adjunto un archivo .JAR con el proyecto para que puedan importarlo en su JDeveloper y puedan ver mas a detalle todo el contenido.

  

No hay comentarios:

Publicar un comentario