Apache Camel:随机杀死的FTP轮询器

时间:2012-09-17 12:47:48

标签: java ftp apache-camel

我创建了一个带有ftp组件的小型camel项目,用于轮询文件并将它们写入本地文件系统。

我在背景中运行了jar,但最近它自杀了。甚至一天几次。我已经增加了日志级别来调试,但我看不到任何堆栈跟踪或可能表明出现问题的东西。

我也增加了堆和permgem空间,但这不会有任何区别。 这是目前的路线:

    onException(SchemaValidationException.class)
            .handled(true)
            .to("file://" + props.getProperty(RssUtils.ROOT_DIR)
                    + "/errors/SchemaValidationException");

    onException(GenericFileOperationFailedException.class)
            .handled(true)
            .to("file://" + props.getProperty(RssUtils.ROOT_DIR)
                    + "/errors/GenericFileExceptions");

    from(
            "ftp://"
                    + props.getProperty(RssUtils.FTP_URL)
                    + "?username="
                    + props.getProperty(RssUtils.FTP_USER)
                    + "&password="
                    + props.getProperty(RssUtils.FTP_PWD)
                    + "&disconnect=true&delete=true&exclude=((?i).*pdf$)&delay="
                    + props.getProperty(RssUtils.FTP_DELAY))
            .choice()
            .when(xmlPredicate)
            .to("jms:xmlQueue")
    .to("jms:archiveQueue")
            .when(imgPredicate)
            .to("file://" + props.getProperty(RssUtils.ROOT_DIR) + "/img")
            .otherwise()
            .to("file://" + props.getProperty(RssUtils.ROOT_DIR)
                    + "/errors/other");

    from("jms:xmlQueue").to("validator:FtpXmlValidator.xsd")
            .to("xslt://XmlToRssConverter.xsl")
            .process(rssFeedProcessor)
            .to("file://" + props.getProperty(RssUtils.ROOT_DIR) + "/rss/");

from("jms:archiveQueue")
    .to("file://" + props.getProperty(RssUtils.ROOT_DIR) + "/archive/");

是否有人可以发现问题? 或者对解决这个问题有一些建议?

0 个答案:

没有答案