问题标签 [camel-http]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
450 浏览

apache-camel - Camel HTTPComponent 选项与 HTTPEndpoint 选项

要使用 Camel HTTP4 组件 - 在文档中,有用于 HTTP 组件和 HTTPEndpoint 的选项。我了解端点和组件之间的区别(组件是端点的工厂),但是这里有 HTTP 组件和 HTTPEndpoint 的选项。

请帮助我了解两者选项之间的区别。提前致谢

0 投票
1 回答
561 浏览

apache-camel - 向外部资源发送数据:为什么内容为空?

我有一个简单的骆驼路线。我想从队列中提取一个文件并使用 POST 请求将其传递给外部资源。此路由有效,请求到达外部资源:

问题是请求的有效负载丢失了:

如何在此路由/处理器中设置和传递 POST 请求的有效负载?

我注意到通过这种方式设置的任何数据也会丢失。只有标头被发送到远程资源。

通过使用带有<input type="file">编码的简单 HTML 表单,multipart/form-data我可以成功地将所有数据发送到外部资源。

可能是什么原因?


更新。

以下代码还给出了空内容:

还有一个细节。如果我改变这个:

对此:

我在 FUSE 端收到以下异常(我通过 hawtio 管理控制台看到它):

0 投票
0 回答
385 浏览

java - 在 Apache karaf 容器中启用码头请求日志记录/统计信息

谁能告诉我们如何启用码头日志记录以分析 Apache KARAF 容器中的请求和其他详细信息(统计[并行请求/请求数])。

码头.xml

我在以下博客上找到了statsOn功能,但找不到该属性的文档

karaf 文档链接

任何参考都将有助于启用日志记录。

0 投票
1 回答
797 浏览

java - 如何从蓝图(Camel-http)动态设置 HTTP 方法

我使用camel-apache companent camel-http。我正在尝试从我的自定义标头设置 http 方法。我使用蓝图

覆盖过程: exchange.getOut().setHeader("custom_http_method", "GET");

蓝图路线:

错误:org.apache.camel.TypeConversionException:从类型转换期间出错:java.lang.String 到所需类型:org.apache.camel.http.common.HttpMethods 的值 ${header.custom_http_method} 由于 java.lang .IllegalArgumentException:没有枚举常量 org.apache.camel.http.common.HttpMethods.${header.custom_http_method}

据我了解, $ {header.custom_http_method} 没有返回值。

toD uri="${header.url}" - 工作正常

0 投票
1 回答
3406 浏览

java - 发送请求(camel-http)后如何处理错误?

我想根据 http 代码响应来处理错误。

我也想知道如何*throwExceptionOnFailure*在我的路线上启用。例如,如果响应code is 500x,将消息发送到队列“redmine_errors”

更新 4:

从答案@fg78nc 添加异常后我的蓝图(不工作)

错误: 2019-02-15 09:35:12,103 | ERROR | mix-7.0.1/deploy | BlueprintCamelContext | 40 - org.apache.camel.camel-blueprint - 2.16.5 | Error occurred during starting Camel: CamelContext(camel-32) due Failed to create route route48 at: >>> OnException[null When[bean{} -> []] -> [To[activemq://redmine_errors]]] <<< in route: Route(route48)[[From[jetty:http://0.0.0.0:8082/test]] -> [On... because of org.apache.camel.http.common.HttpOperationFailedException org.apache.camel.FailedToCreateRouteException: Failed to create route route48 at: >>> OnException[null When[bean{} -> []] -> [To[activemq://redmine_errors]]] <<< in route: Route(route48)[[From[jetty:http://0.0.0.0:8082/test]] -> [On... because of org.apache.camel.http.common.HttpOperationFailedException

在此处输入图像描述

在此处输入图像描述

0 投票
1 回答
499 浏览

https - 骆驼代理配置骆驼-https4

我们必须通过 https 将 java camel 应用程序与外部系统连接起来。中间我们有一个代理,但是这个代理只接受http连接。

我已经在骆驼上下文中配置了 http 和 https 代理,但这似乎没有帮助。http4s 组件遇到连接关闭异常。所以我直接在 https4 端点配置了代理。此配置有效,但似乎组件希望通过 https 与我们的代理通信,我收到此异常。

我检查了调试日志,我可以看到这个日志条目,它表明到代理的连接是通过 https 完成的

这里骆驼组件配置

所以我的问题是:如何在 java 中配置代理,使 https 流量在 java 应用程序和代理之间通过 http 完成。从代理到第 3 方系统的通信应通过 https 完成。

顺便说一下,“旧”http-camel 组件与相同的代理完美配合。

0 投票
1 回答
238 浏览

apache - Camel Java DSL:使用响应中的值更新下一个轮询请求参数

我是 Apache camel 的新手,这就是我想要弄清楚的。在下面的示例代码中,我试图在下一个轮询请求中使用请求参数中的属性 - “值”。

实现这一目标的最佳方法是什么?或为类级别变量分配属性值?

更新:解决方案通过添加以下内容使其工作:

0 投票
0 回答
1393 浏览

java - Apache Camel:优雅关闭后线程仍在运行

在我们的项目中,我们有一个骆驼(2.23.1)上下文,在某些情况下,我们希望立即终止上下文及其所有路由。为此,我们有以下代码:

但是在启动了超时 1 毫秒的正常关机后,我们会收到一个警告:

_在正常关机期间发生超时。现在强制关闭路由。注意:由于正常关闭未成功完成,某些资源可能仍在运行。

我们注意到在这种情况下仍然有一个线程正在运行,其中包含我们的 http 组件的一个作业,它试图发送一个带有重试模式的 http post。(见下面的堆栈跟踪)

问题:我们如何强制终止正在运行的路由及其线程?(我们还想防止整个 java 应用程序被杀死,SIGTERM 不是一个选项)

0 投票
1 回答
301 浏览

java - HttpConnectionManagerParams 不适用于 HTTPS URL

我们使用 Apache Camel 的camel-http组件与 HTTP 端点集成,HttpConnectionManagerParams用于配置 defaultconnectionsPerHost 和 maxTotalConnections。

以上参数仅在端点 URL 为 HTTP 时生效,相同的配置无效,默认HttpConnectionManager在端点为 HTTPS 时生效。

是否需要为 HTTPS url 额外配置一些东西?

0 投票
0 回答
351 浏览

apache-camel - Apache Camel 反应式 REST 内容类型

我使用骆驼反应流,我想APPLICATION_JSON_UTF8_VALUE为响应添加内容类型。我试图将它添加到地图功能中。这是我的代码。

此代码仅返回没有标题“内容类型”的文本我想我不明白它是如何工作的,所以如果有人可以给我发送一个带有教程的链接(因为我找不到),或者有人可以帮助我理解,那就太好了它。谢谢你的帮助