15.7. 使用简单语言


您可以将 简单 语言与控制总线一起使用,例如停止特定路由,您可以向 "controlbus:language:simple" 端点发送一条消息,其中包含以下消息:

template.sendBody("controlbus:language:simple", "${camelContext.getRouteController().stopRoute('myRoute')}");
Copy to Clipboard Toggle word wrap

因为这是一个 void 操作,因此不会返回。但是,如果您希望路由状态,您可以执行以下操作:

String status = template.requestBody("controlbus:language:simple", "${camelContext.getRouteStatus('myRoute')}", String.class);
Copy to Clipboard Toggle word wrap

使用 route 命令控制路由的生命周期是更容易的。您可以通过 language 命令执行具有更强大的功能(如 Groovy 或一些 简单 语言)的语言脚本。

例如,要关闭 Camel 本身,您可以:

template.sendBody("controlbus:language:simple?async=true", "${camelContext.stop()}");
Copy to Clipboard Toggle word wrap

我们使用 async=true 异步停止 Camel,否则我们将在处理发送到控制总线组件的消息时尝试停止 Camel。

注意

您还可以使用其他语言,如 Groovy 等。

返回顶部
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。 了解我们当前的更新.

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

Theme

© 2025 Red Hat