wso2 wso2esb vfs

¿Cómo puedo cambiar vfs FileURI dinámicamente en WSO2 ESB?



wso2esb (2)

Hasta donde yo sé, con ESB 4.8.1, no puede cambiar dinámicamente este parámetro dentro de la mediación (este valor es estático).

Tal vez podrías intentar cambiar dinámicamente esta definición de proxy en tiempo de ejecución:

  • usando servicios de administración (ProxyServiceAdmin)
  • o en java o javascript (con mc.getConfiguration (), puede acceder a la configuración de synapse)

Otra solución sería usar una tarea programada:

Tengo este parámetro con un archivo de ruta:

<parameter name="transport.vfs.FileURI">file:///Users/Desktop/test/in</parameter>

Necesito cambiar el valor de FileURI dinámicamente, por ejemplo, usando el valor de una propiedad que se configuró antes. Algo como eso:

<parameter name="transport.vfs.FileURI">get-property(''path'')</parameter>

O eso:

<parameter name="transport.vfs.FileURI" expression="get-property(''path'')"/>

¿Cómo puedo cambiar el valor de FileURI para un valor de propiedad?


En wso2esb4.8.1 cambiamos dinámicamente nuestro punto final vfs.

Ref. De URL de punto final dinámico

Ejemplo: Obtenemos el nombre de archivo por el mediador de propiedades "fname".

<property name="fname" expression="get-property(''transport'',''FILE_NAME'')"/>

Estamos obteniendo el "Camino" dinámicamente por medio de la propiedad.

<property name="path" value="file:///D:/FileFolder/In/"/>

Estamos agregando ruta y nombre de archivo en la propiedad "transport.vfs.ReplyFileName".

<property name="transport.vfs.ReplyFileName" expression="concat(get-property(''path''),get-property(''fname''))" scope="transport"/> <send> <endpoint> <address uri="vfs:file:///D:/Folder/In"/> </endpoint> </send>

"transport.vfs.ReplyFileName" reemplazará el punto final vfs del mediador de envío.

Podemos lograr puntos finales dinámicos. podemos mover nuestro archivo por mediador de propiedades. Podemos cambiar la propiedad fácilmente.