当前位置: 首页 > 知识库问答 >
问题:

将Apache Camel示例从Spring DSL转换为Java DSL

柴衡
2023-03-14

我试图将Spring DSL中的驼峰路线转换为Java DSL中的等效路线。大多数翻译我都搞定了,但有一件事我就是不知道怎么做:更改标题。

以下是示例:

Spring DSL:

<bean id="service" class="org.apache.camel.example.service.Reporting" />
<camelContext xmlns="http://camel.apache.org/schema/spring">
    <route id="mina1">
        <from uri="mina:tcp://localhost:9991" />
        <setHeader headerName="minaServer">
            <constant>localhost:9991</constant>
        </setHeader>
        <bean ref="service" method="updateReport" />
        <to uri="direct:messageSender1" />
    </route>
</camelContext>

Java DSL:

public void configure() throws Exception {
    from("mina:tcp://localhost:9991")
    .setHeader(Exchange.HTTP_METHOD, constant("localhost:9991"))
    .beanRef("camel_examples.loadbalancer_failover_javadsl.service.Reporting", "updateReport")
    .to("direct:messageSender1");
}

最后,使用头的bean方法:

public Report updateReport(@Body Report report, @Header("minaServer") String name) {

    report.setReply("Report passed by MINA servers running on: " + name);
    return report;
}

现在,在使用Spring DSL的示例中,一切正常。但在使用JavaDSL的示例中,我无法正确设置标题。这根本不会发生。我知道这是因为这句话setHeader(Exchange.HTTP_方法,常量(“localhost:9991”),可能是交换。HTTP_方法部分,但老实说,我也不知道该放什么。我还尝试了Exchange。HTTP_URI,结果是一样的。

我的翻译有什么问题?

共有1个答案

阎元徽
2023-03-14

试试这个

.exchange.getIn().setHeader("minaServer", constant("localhost:9991"))
 类似资料:
  • 问题内容: 我正在尝试为Erlang编写Golang驱动程序,可通过Erlang端口访问。 我从Erlang C端口示例开始,该示例运行良好: http://www.erlang.org/doc/tutorial/c_port.html 现在,我正在尝试将C代码移植到Golang。只是尝试使用“ \ n”作为分隔符来回显简单的“ Hello World \ n”消息。 所以我的Golang代码如下

  • 我遇到了一个问题,使用颠簸转换将平面 JSON 转换为嵌套 JSON。而且我对颠簸转型很陌生。输入和输出详细信息如下。 我的输入: 预期产量

  • 本文向大家介绍django 将model转换为字典的方法示例,包括了django 将model转换为字典的方法示例的使用技巧和注意事项,需要的朋友参考一下 平常的开发过程中不免遇到需要把model转成字典的需求,尤其是现在流行前后端分离架构,Json格式几乎成了前后端之间数据交换的标准,这种model转dict的需求就更多了,本文介绍日常使用的方法以供参考 以上就是本文的全部内容,希望对大家的学习

  • 问题内容: 好的,所以我试图用“,”分割字符串,它们不在’[‘或’]’内部。我有一个适用于JavaScript的RegEx,但无法将其转换为Java语法。 JS RegEX: 例句: 它在http://refiddle.com上运行良好,但是当我尝试在Java中(在Eclipse下)使用RegEx时,出现错误消息: 索引10附近的未封闭字符类,(?![^ [] *]) 我所做的就是删除开头的“ /

  • 很好的一天, 我想更改一些程序代码(主要是SQL代码),因为数据库已经从DB2更改为Oracle。 这里有一个例子,我成功地改变了,但我不是真的了解它,我无法从谷歌找到它。 以下是原始SQL查询代码(使用DB2): 以下是我编辑后的SQL查询代码(成功从Oracle获取数据): 当我分析时,如果我没有将rownum更改为rownum1,我会得到错误,错误是ORA-00923:FROM关键字未在预期

  • 线程“main”java.lang.nosuchmethoderror中出现异常:com.fasterxml.jackson.core.jsonFactory.createparser(ljava/net/URL;)lcom/fasterxml/jackson/core/jsonParser;在com.fasterxml.jackson.databind.objectmapper.readtree