-4

我正在尝试创建一个托管在“mina:tcp://localhost:9991”的示例应用程序,它将一条非常简单的消息发送到托管在“mina:tcp://localhost:9990”的服务器。

现在诚然,我在理解如何做到这一点时遇到了一些问题。我的第一种方法是创建一个名为 Message 的类,它有两个字段:String orderString host. 但是,我对如何做到这一点感到非常困惑。

首先,我尝试基于 ReportGenerator 遵循负载均衡器示例,并创建一个 MessageGenerator 类,该类可以创建一条消息并返回它:

但是,有一个问题,我需要参数来创建我的消息,从示例创建报告时不会发生这种情况:

//Message constructor
public Message(String order, String host){
    //constructor stuff
}

通过阅读 Camel in Action 我知道如何使用 bean 来调用没有参数的方法,但是我仍然不明白我应该如何使用它们来调用具有多个参数的方法(我是否被迫使用处理器?)

然后我意识到,也许我让事情变得有点复杂,并且有一种更简单的方式来发送消息。所以我尝试了另一种方法,导致一小部分代码无法正常工作。我为此创建了一个单独的问题:

显然我做错了什么,我不明白。所以,我有两个问题:

  1. Manning 的Camel in Action定义了使用 bean 的 Easy way 和 Hard way ,但我不明白使用带参数的 beans 的简单方法。有人可以提供一个例子吗?
  2. 有没有办法在不涉及使用 bean 的情况下发送由 Camel 中的多个字段组成的消息(一种简单的方法,没有处理器)?如果是这样,怎么做?
4

1 回答 1

3

在 Camel 中有几种发送消息的方法。根据骆驼论坛提供的帮助,最好的两个是:

  1. 使用链接到 POJOS 和路由的 bean(例如:http ://camel.apache.org/loadbalancing-mina-example.html )
  2. 使用生产者模板(文档:http ://camel.apache.org/producertemplate.html )

希望有一天它可以帮助某人。

于 2013-11-10T18:39:59.227 回答