我正在使用Apache Camel HTTP组件,并且能够发送请求和接收响应。

在失败的情况下,我会遇到异常,并且如果我尝试从标头中获取HTTP响应代码,则响应为null。

if(exchange.getException() != null ){
   exchange.getException().printStackTrace();
   String responseCode = (String) exchange.getOut().getHeader(Exchange.HTTP_RESPONSE_CODE);
 }


exchange.getOut()为NULL,失败,并出现NullPointerException。

在这种情况下如何检索HTTPResponse代码?例如:400、404、405。

最佳答案

根据http组件的文档,您应该能够从Exception中提取响应代码。

也许是这样的:

int code = ((HttpOperationFailedException)exchange.getException()).getStatusCode();

关于java - Camel ProducerTemplate不返回HttpResponse代码,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/42712547/

10-16 08:45