java - 如何判断camel中的交换Body属于哪种类型?

标签 java apache-camel

我创建了一个处理器来从外部源下载一些文件。

我这样做,就像这样:

CamelContext context = exchange.getContext();
ProducerTemplate template=context.createProducerTemplate();
Object answer=null;
try {
    answer=template.requestBodyAndHeaders(
        uri,
        "",
        headers);
} catch (Exception e) {
    ....
} finally {
    template.stop();
}

if (answer != null) {
    /* Here I need to know, if it is a file, or an error-message */
}

问题是,请求可以是错误消息(字符串),也可以是流(找到文件时)。

如何检查?

感谢您的帮助

更新:

路线代码很简单:

from("http://domain.de/getDoc?Id=123")
to("file:docs")

最佳答案

也许只是“instanceof”检查会有帮助?

关于java - 如何判断camel中的交换Body属于哪种类型?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42807958/

相关文章:

redis - Camel Redis 组件订阅 channel 不工作

java - Camel KafkaIdempotory是什么及其用途?

Java-开尔文到华氏度的转换方法

java - 如何在JAVA SE中使用依赖注入(inject)?

java - 在 Windows(非 IBM 机器)上安装 IBM JRE

spring - 从 Web 应用程序和 Apache Camel/并使用 MQ,您是否使用 jsessionid 添加 JMS 消息?

Java 即发即忘 CXF Web 服务调用 Camel 应用程序

java - xml 中的 apache Camel 过滤器。在xml中将参数传递给Bean

java - x^n–1 多项式的结果

java - 在JAVA中实例化一个抽象类?