<route id="doOperationARoute">
<from uri="timer://MNG?delay=5s&repeatCount=1" />
<setHeader headerName="operationName">
<simple>${type:my.pkg.EnumOperations.OP_A}</simple>
</setHeader>
<log message="${headers}" />
<to uri="bean:myProcessor" />
</route>
package my.pkg;
public enum EnumOperations{
OP_A
}
public class MyProcessor implements Processor{
@Override
public void process(Exchange exc) throws Exception {
//HERE I RECEIVE THE CAST ERROR (String cannot be casted to EnumOperation)
EnumOperations operation=(EnumOperations)exc.getIn().getHeader("operationName");
switch (operation) {
case OP_A:
break;
default:
break;
}
}
}
您可以通过两种方式来实现这一点:
1)在proccessor中获取具有类类型的headr
EnumOperations operation = exc.getIn().getHeader("operationName", EnumOperations.class);
2)如果Camel Proccessor使用bean,则使用@header传递枚举
class Bean {
public void methodName (@Header("operationName") EnumOperations operation){
switch (operation) {
case OP_A:
break;
default:
break;
}
}
我试图得到一个代理工作与蓝图在OSGi(正在通过Karaf)正确,并通过Gradle构建。 我的蓝图文件(名字已经改变,以保护无辜): 我对此感到非常困惑,因为它在抱怨Camel上下文中的标记。我在其他地方使用了完全相同的语法(只是一个不同的包),没有问题。 最后一个“错误”是: RuntimeException:放弃等待服务(ObjectClass=org.apache.camel.CamelC
我是第一次使用Camel。我的试验项目是编写一个应用程序,该应用程序接收HTTP GET请求(使用Jetty)并通过Thrift将请求传递到另一台服务器。然后将收到的答案传递回客户端。(即,如果您愿意,我正在编写超文本传输协议-get请求和Thrift支持的服务器之间的数据交换机或中间件应用程序。) 我有一个完美的非驼峰版本,现在我正在尝试将驼峰等效物组合在一起。目前,我只想将jetty请求写入一
我知道有一些方法可以捆绑应用程序并将其部署在Tomcat或Jetty中。但是,如果我这样做了,最大的问题就变成了如何与Restlet集成。 我做了进一步的挖掘。我举了骆驼附带的一个tomcat例子。然后我试着让它具有RESTLET功能。差不多管用了。现在的问题是参数没有传递到路由。我希望当调用这个服务器:http://x.x.x.x.x:8080/rs/user/?name=Paul时,我会得到:
这似乎应该很简单,原谅我的双关语。我正在尝试在一个spring DSL路由中记录一个camel报头。我已经看到了Java DSL的答案,但我一直在徒劳地寻找如何让它在spring DSL中工作。我试过了: 以及: 以及其他一些排列/变体,但所有这些都只是逐字记录该文本(即,它们不替换实际的标题名称)。 我错过了什么? 更新:这是我的xml文件的大部分:
我使用骆驼与hazelcast组件和面临的问题与交换头,当交换通过hazelcast seda。 我需要轮询目录中的文件,并将交换发送到seda hazelcast队列(以处理集群中的交换)。 这种情况有一个简单的例子。有两个路由,在其他JVM中运行: 首先是轮询文件: 第二个问题是: 当我试图阅读像或其他,我意识到它们是空的。 通过hazelcast seda组件传输交换时,是否可以保存标头?
我想在Camel环境中使用Jetty组件。这是我的spring配置的摘录。xml: 下面是用于返回字符串的代码: 本地地址有效(http://127.0.0.1/enc)但是浏览器没有正确显示字符串(显示为“abcÃö¼ÃŸ”–äääääŒääää‰)。我假设问题是一些编码。如何设置像“utf-8”这样的编码? 我在这里找不到任何提示(http://camel.apache.org/jetty.