0
對於我的彈簧集成流程中的錯誤處理,我希望在服務激活器中接收異常,該服務激活器從聚合器接收輸入,以處理消息集合。當完整的集合被作爲消息有效載荷發送時拋出異常。相反,我想將拋出異常的實際項目作爲錯誤消息的內容。彈簧集成修改錯誤消息有效載荷
public Collection<File> move(Collection<File> files){
...
//process all files
for(File file : files){
if(file.getName().equals("file-2.done")){
throw new RuntimeException("SOMETHING WENT WRONG");
}
... process the file
}
我的異常處理程序預計將檢索導致錯誤
File file = (File) message.getPayload().getFailedMessage().getPayload();
但在這種情況下,集合發送的有效載荷不是一個單一的文件的文件。任何幫助,將不勝感激。
還好說是有道理的,但在這種情況下,集合將被框架傳入,然後還會指定失敗的文件並在異常處理程序中檢索它。這是這個想法嗎?基本上,這聽起來像我們不能修改異常消息的有效負載,但可以添加更多。 – adeelmahmood
正確;但這不是開銷;對象(集合)已經存在; 'ErrorMessage'只是獲取對它的引用。 –