首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何释放文件锁(camel exchange)以在异常(损坏的gz文件)上移动它

如何释放文件锁(camel exchange)以在异常(损坏的gz文件)上移动它
EN

Stack Overflow用户
提问于 2014-08-06 11:06:18
回答 1查看 948关注 0票数 1

我需要实现一个对ZipException作出反应的处理程序,以移除损坏的gz文件,否则路由将不断地重试以解除gz的封送。

问题是,在抛出异常时,这个文件上有一个锁(在linux上,canWrite()返回false),还有Camel锁文件。

是否有一种优雅的Camel方式来表示/配置释放锁的onException (获得写访问权并删除锁文件-如果有)?

目前,我的代码看起来是这样的:

代码语言:javascript
运行
复制
onException(ZipException.class)
    .handled(true)
    .process(corruptedFileProcessor)
    .stop(); 

提前谢谢。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-08-12 16:33:33

下面的路由从srcDir读取gzipped文件,将解压缩文件写入destDir (没有.gz扩展名),当发生ZipException时,将文件发送到errorDir。

代码语言:javascript
运行
复制
from("file://srcDir/?delete=true")
        .onException(ZipException.class)
        .handled(true).useOriginalMessage()
        .to("file://errorDir?autoCreate=true")
        .end()
.unmarshal().gzip()
.to("file://destDir?autoCreate=true&fileName=${file:name.noext}");
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/25158763

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档