Apache Camel 脚本问题

Posted

技术标签:

【中文标题】Apache Camel 脚本问题【英文标题】:Apache Camel scripting problem 【发布时间】:2011-07-12 19:58:09 【问题描述】:

我在使用 Camel 的 Apache ActiveMQ 时遇到了一个非常奇怪的问题 - 我尝试了使用 javascript 和 groovy 的示例,但它们都产生错误“无法安装路由:无法创建路由...因为找不到语言: 太棒了"

我使用的 groovy 示例是

<route>
    <from uri="queue:foo"/>
    <filter>
        <groovy>request.lineItems.any  i -> i.value > 100 </groovy>
        <to uri="queue:bar"/>
    </filter>
</route>

同样的问题也适用于 JavaScript。唯一有效的脚本是“简单” - 内部 Camel 脚本语言。请给我建议如何解决这个问题。我将 ActiveMQ 5.2.4 与集成的 Apache Camel 2.4.0 一起使用。

【问题讨论】:

【参考方案1】:

是的,您需要从骆驼脚本和选择的脚本语言中添加 JAR,例如,对于 groovy,您需要 groovy JAR。如果你运行 AMQ,你应该把它们放到 lib 文件夹中。

【讨论】:

【参考方案2】:

你对骆驼脚本有依赖吗?

例如在 maven 中,这将被声明为:

<dependency>
    <groupId>org.apache.camel</groupId>
    <artifactId>camel-script</artifactId>
    <version>2.6.0</version>
</dependency>

在您的&lt;dependencies&gt; 声明中。

【讨论】:

我使用 Camel 作为 ActiveMQ 的一部分,而不是在我的项目中。那么我应该在哪里找到 pom.xml 文件呢?【参考方案3】:

我添加了工件 camel-groovy,因为骆驼脚本不适合我。

<dependency>
        <groupId>org.apache.camel</groupId>
        <artifactId>camel-groovy</artifactId>
        <version>2.23.0</version>
</dependency>

【讨论】:

以上是关于Apache Camel 脚本问题的主要内容,如果未能解决你的问题,请参考以下文章

Apache Camel

[每日一学]apache camel|BDD方式开发apache camel|Groovy|Spock

Apache Camel 压缩包

使用状态码 405 获取 org.apache.camel.component.http.HttpOperationFailedException

Apache Camel:如何存储变量以供以后使用

ServiceMix 中 Apache-Camel 路由的管理和监控