我想將在 hello 目錄中創建的檔案上傳到 azure blob 容器。我能夠在路由 URL 中上傳確切的檔案名。但是,當我放置一個占位符來讀取檔案名時,它不起作用。
在職的:
.to("azure-storage-blob://accName/container?blobName=text.txt&operation=uploadBlockBlob&serviceClient=#serviceClient")
不作業:
.to("azure-storage-blob://accName/container?blobName=${header.CamelFileName}&operation=uploadBlockBlob&serviceClient=#serviceClient")
這是代碼:
@Service
public class SftpWatcherRoute extends RouteBuilder {
@Override
public void configure() {
from("file-watch:hello?events=CREATE&antInclude=**/*.txt&recursive=true")
.routeId("fileWatch")
.log("File Name: ${header.CamelFileName}")
.to("direct:uploadFileToBlob")
.end();
from("direct:uploadFileToBlob")
.routeId("uploadFile")
.log("Azure Blob Triggered: ${header.CamelFileName}")
.to("azure-storage-blob://accName/container?blobName=${header.CamelFileName}&operation=uploadBlockBlob&serviceClient=#serviceClient")
.log("Blob Upload Successful")
.log("${body}")
.end();
}
}
我想閱讀創建的檔案并將其上傳到 azure blob 容器有人可以幫助我嗎?
uj5u.com熱心網友回復:
嘗試使用 簡單的運算式和 收件人串列模式
有了這個,很容易根據訊息頭值動態構造一個 URI
例子:
.to("freemarker://templateHome/${body.templateName}.ftl")//It is in valid
要解決上述問題,我們可以使用toD或收件人串列。
使用 toD
.toD("freemarker://templateHome/${body.templateName}.ftl")
使用收件人串列
.recipientList(simple("freemarker://templateHome/${body.templateName}.ftl"))
有關更多詳細資訊,請參閱此檔案
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/400963.html
標籤:爪哇 弹簧靴 阿帕奇骆驼 azure-blob-storage
