如何以wso2 esb序列获取文件上载时间

时间:2019-01-31 04:42:20

标签: file ftp wso2

我正在使用WSO2入站终结点从FTP服务器获取文件。而且我知道如何找回文件名。现在我的问题是如何使文件上传时间(或上次修改时间)返回?

这是获取文件名的代码。

<property expression="get-property('transport', 'FILE_NAME')" name="ftp.var.filename" 
    xmlns:ns="http://org.apache.synapse/xsd" 
    xmlns:ns2="http://org.apache.synapse/xsd"/>

我认为应该有类似的代码来获取文件的时间戳。

1 个答案:

答案 0 :(得分:0)

使用以下属性,您将能够从入站端点获取轮询文件的最后修改时间。

`<property expression="get-property('transport', 'LAST_MODIFIED')" name="ftp.var.last.modified.time" xmlns:ns="http://org.apache.synapse/xsd"/>`

将其添加到相关序列中以进行进一步处理,下面是一个示例序列,其中记录了文件名和最后修改时间。

<?xml version="1.0" encoding="UTF-8"?>
<sequence name="fileSequence" onError="fault" xmlns="http://ws.apache.org/ns/synapse">
    <log level="custom">
        <property expression="get-property('transport', 'FILE_NAME')"
            name="ftp.var.filename" xmlns:ns="http://org.apache.synapse/xsd"/>
        <property
            expression="get-property('transport', 'LAST_MODIFIED')"
            name="ftp.var.last.modified.time" xmlns:ns="http://org.apache.synapse/xsd"/>
    </log>
</sequence>

请检查其是否满足您的要求,请参考[1]进一步澄清。

[1]-https://github.com/wso2/wso2-synapse/blob/master/modules/transports/core/vfs/src/main/java/org/apache/synapse/transport/vfs/VFSTransportListener.java#L767

相关问题