问题标签 [spring-integration-ftp]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
spring-boot - 本地删除后未使用 Spring Integration 下载 FTP 文件
我们正在编写一个批处理作业,它将文件作为来自 FTP 的输入,生成一些新文件并将它们写入 S3 存储桶,为此我们使用 Spring Integration。
FTP 中的文件是从数据库中提取的,每晚都会更新。
问题是,当我们第一次启动应用程序时,它很好地连接到了FTP,下载了文件,并上传了生成结果S3。然后我们在本地删除下载的文件,等待FTP中的文件的下一代重新启动该过程。但它永远不会再次下载文件。
任何想法?
提前致谢。
编辑:
enrichHeaders
如果我们正好有 2 个文件,我会使用它来确保触发管道。也许标题没有被删除并且条件总是大于2?也许这是错误的进行方式?
再次感谢。
spring-boot - Spring 集成 DSL FTP
我有 FTP 的 Spring 入站
我在看文件
https://docs.spring.io/spring-integration/reference/html/ftp.html
如果您碰巧有一个或多个文件位于本地目录中,它会在启动与远程 FTP 服务器的通信之前处理这些文件。
以上具体是什么意思?
例如,在我的情况下,本地目录是其他流程将从中获取的目录。例如,我在该目录中有 5 个文件尚未被其他流程拾取。
为什么 FTP 适配器会尝试再次处理它们,它究竟会做什么?我怎么能阻止它?
java-8 - Spring 集成 DSL FTP 问题
我有动态弹簧集成流程
FTP -> 下载文件并放入目录“C:\testing” Transformer 将文件移动到“XYZ”目录
SFTP -> 下载文件并放入目录“C:\testing” Transformer 会将文件移动到“XYZ”目录
现在我看到例如 FTP 已经下载了文件,并且在变压器移动文件之前发生了 SFTP 轮询
SFTP
查看“C:\testing”目录中的文件,因此它也会处理消息,并且由于文件被移动,显然会引发异常
现在是否需要对每个流有不同的 loca 目录?
如果有其他方法
java - Spring Integration DSL 历史问题
我必须动态设置流程。
例子:
springboot 应用程序:
标头不包含历史记录,但如果我不使用 IntegrationContext 并@Bean
直接在方法流上使用,那么我可以看到历史记录。
使用时是否必须启用历史记录IntegrationFlowContext
?
spring - Docker容器中的Spring Integration FTP:不触发流
我花了很多时间弄清楚我的问题出在哪里。我可以在本地运行,我已经在本地构建.jar
并运行了它。
我的集成流程设置如下
我在 application.yml 中设置了数据源和 ftp 信息
当我在本地运行它时,我没有问题。当我使用几个不同的 openjdk 版本(8u181、8u191、11.04)运行gradle build
和运行时,我没有任何问题。.jar
当我使用我的文件在 docker 容器内运行时.jar
,问题就出现了。
我的码头文件
我打开DEBUG
并观看输出。
在本地运行并运行 built .jar
,我可以看到轮询器正在工作,它会触发对已在我的远程数据库 (postgresql) 中创建的 metadataStore 表的 SQL 查询。
在 docker 容器中运行,我没有看到正在运行的 sql 查询。这告诉我其中的某个地方存在问题。
无论在本地运行、运行 build 还是在 docker 容器中运行,控制台中的调试日志都是相同INFO
的 s 和s。有此信息消息可能会有所帮助WARN
.jar
SessionFactory
我通过尝试连接到无效主机来检查是否存在隐藏的连接问题,但我确实在我的 docker 容器中遇到了无效主机的异常。所以我可以自信地说 FTP 连接是有效的并且使用正确的主机和端口运行。
我认为这与轮询器或我的数据源有关。
在这个应用程序内部,我还使用 JDBC 和 JPA 运行 Spring Data Rest,跨不同库使用数据源 bean 会有什么问题吗?
任何帮助或指导将不胜感激。
spring-integration - Spring Integration Mail:在所有数据库插入后发送电子邮件
您好,我有一个集成流程,它逐行拆分文件,将每一行转换为 POJO,然后通过 JDBC 出站网关将该 POJO 插入到数据库中。
一旦文件处理完成,我希望能够发送一封电子邮件。我目前在我的 jdbcOutboundGateway 之后发送到 smtpFlow 通道,但是这是在每次插入数据库后发送一封电子邮件。
这是我当前的流量 DSL
在处理完所有文件后,如何让此流程仅发送一封电子邮件jdbcOutboundGateway
?
这是我的splitFile()
方法
这是我的transformToIndividualScore
方法
java - Spring Integration FTP - InboundChannelAdapter 停止使用新的 FTP 服务器
几年来,我一直在使用 Spring-Integration 4.1.6 连接到旧的 FTP 服务器。FTP 服务器最近被更新的版本(新服务器是 Globalscape EFT Enterprise)替换,我的 int-ftp 入站通道适配器立即停止查找文件。我监视了几个帐户,它们都同时停止工作。
下面是其中一个的配置:
当我调试适配器时,我看到了这个语句:
但是 dev 下面没有名为 dev 的文件夹,只有一个 .csv 文件。
结构是 /path/to/user/dev/file.csv 并且 FTP 服务器配置为在用户执行 PWD 时向用户显示整个路径。
而且我确信当登录发生时,它们被放置在 /path/to/user 文件夹中。
我在本地环境中建立了另一个 FTP 服务器,它运行良好。
某些非标准 FTP 服务器是否存在导致此类问题的问题?
先感谢您
spring - 嵌入 Apache FTP 服务器:无法同时登录 40 个用户
我正在使用这个嵌入式服务器对Spring-integration-ftp进行集成测试。我必须将此 ftp 服务器连接到 40 spring integration ftp 服务我还添加了 ConcurrentLoginPermission 到 50 我仍然收到 SENT:421 已达到最大登录限制。错误这是我为嵌入式服务器编写的代码。
spring-integration-ftp - SftpPersistentAcceptOnceFileListFilter + JdbcMetadataStore 不在 INT_METADATA_STORE 中推送值
我正在编写 sftp-integration-ftp 入站流代码以从 FTP 服务器读取文件,并希望确保如果我的服务的多个实例和从同一输入位置读取文件,那么只有一个处理来自输入目录的文件以避免重复。
代码:'''@Bean public SftpPersistentAcceptOnceFileListFilter getSftpPersistentAcceptOnceFileListFilter(final ConcurrentMetadataStore concurrentMetadataStore) { return new SftpPersistentAcceptOnceFileListFilter( concurrentMetadataStore,"INT_"); }
java - Spring Integration 如何从多个 ftp 服务器和目录中获取文件?
我正在尝试设置从多个 ftp 服务器和目录获取新文件以进行后处理。目前,仅连接集合中的第一台服务器。告诉我我做错了什么。
通过我的实现,我看到没有转换到第二台服务器并且出现错误: 1.LoggingHandler - org.springframework.messaging.MessagingException: nested exception is java.io.UncheckedIOException: IOException when retrieving
FtpConfiguration.java
}
ftp.properties
轮询第一个服务器,获取文件,转到第二个服务器,然后发生错误。如果我更改服务器位置,那么它也会从服务器接收一个文件,它会转到另一个错误,它会转到第一个,它成功获取它。当我最终移动到另一台服务器时,我想从一台服务器上获取所有文件,我可以这样做吗?
堆栈跟踪