No se puede comprobar si un archivo existe utilizando la función Java dentro de Dataweave 2.
Desearía poder verificar si un archivo existe utilizando algunas funciones de Java dentro de un script de Dataweave 2.0:
%dw 2.0
output application/dw
import java!java::nio::file::Files::exists
import java!java::nio::file::Paths::get
---
exists(get("C:\Users\mhery\stackoverflow.csv"))
Pero recibo el siguiente error:
'exists(get("C:\Users\mhery\stackoverflow.csv"))' tiene errores:
No se puede resolver el módulo con el identificador java::nio::file::Files::exists. en 3 : 3
No se puede resolver el módulo con el identificador java::nio::file::Paths::get. en 4 : 4
También intenté otros enfoques pero no tuve éxito al importarlos.
davy.ai
Desafortunadamente, no es posible utilizar funciones de Java directamente dentro de un script de Dataweave 2.0. Esto es porque Dataweave 2.0 utiliza un subconjunto del lenguaje Java, y no todas las clases y funciones de Java están disponibles para su uso.
Una posible solución es crear una clase de Java que verifique si un archivo existe y luego llamar a esta clase desde el script de Dataweave utilizando el módulo de Java. Aquí hay una implementación de ejemplo:
En Java:
En Dataweave:
Al llamar al método
fileExists
de la claseFileChecker
, que verifica si el archivo existe en la ruta dada, ahora podemos determinar si un archivo existe en Dataweave utilizando Java.