我是骆驼的初学者。我正在尝试下载具有http路径的zip文件,并尝试将文件存储在本地文件系统中。我设法读取了文件,但是没有读取一次并将其下载到本地文件夹中,我的代码陷入了无限循环并创建了文件的许多副本,因此我无法使用OutOfMemoryError。我做了调查,使用计时器组件应该可以解决问题,但是我不知道如何将计时器组件和直接组件一起使用...我在下面尝试了一些代码,但是没有任何反应
这是我的代码:
private static final String ROUTE_ID = "route.DownloadZipFileRoute";
private static final String URI = "direct:getZipFile";
private static final String ZIP_PATH = "/zipFiles";
@Override
public void configure() throws Exception {
rest().get(ZIP_PATH).to(URI);
from("timer:getZipFile?repeatCount=1").to("direct:getZipFile");
from("direct:getZipFile")
.routeId(ROUTE_ID)
.setHeader(Exchange.HTTP_METHOD, constant("GET"))
.to("http://example.zip?bridgeEndpoint=true")
.to("file://D://outputFolder")
.log("file is downloaded ..........");
}