1

下面是我使用安全休息 api 的 nifi 工作。

在此处输入图像描述

当我运行 invokeHttp 处理器时,出现以下异常:

2017-09-19 07:58:59,744 ERROR [Timer-Driven Process Thread-3] o.a.nifi.processors.standard.InvokeHTTP
java.lang.NullPointerException: null
        at org.apache.nifi.processors.standard.InvokeHTTP.setHeaderProperties(InvokeHTTP.java:859) ~[nifi-standard-processors-1.1.0.2.1.1.0-2.jar:1.1.0.2.1.1.0-2]
        at org.apache.nifi.processors.standard.InvokeHTTP.configureRequest(InvokeHTTP.java:814) ~[nifi-standard-processors-1.1.0.2.1.1.0-2.jar:1.1.0.2.1.1.0-2]
        at org.apache.nifi.processors.standard.InvokeHTTP.onTrigger(InvokeHTTP.java:613) ~[nifi-standard-processors-1.1.0.2.1.1.0-2.jar:1.1.0.2.1.1.0-2]
        at org.apache.nifi.processor.AbstractProcessor.onTrigger(AbstractProcessor.java:27) [nifi-api-1.1.0.2.1.1.0-2.jar:1.1.0.2.1.1.0-2]
        at org.apache.nifi.controller.StandardProcessorNode.onTrigger(StandardProcessorNode.java:1099) [nifi-framework-core-1.1.0.2.1.1.0-2.jar:1.1.0.2.1.1.0-2]
        at org.apache.nifi.controller.tasks.ContinuallyRunProcessorTask.call(ContinuallyRunProcessorTask.java:136) [nifi-framework-core-1.1.0.2.1.1.0-2.jar:1.1.0.2.1.1.0-2]
        at org.apache.nifi.controller.tasks.ContinuallyRunProcessorTask.call(ContinuallyRunProcessorTask.java:47) [nifi-framework-core-1.1.0.2.1.1.0-2.jar:1.1.0.2.1.1.0-2]
        at org.apache.nifi.controller.scheduling.TimerDrivenSchedulingAgent$1.run(TimerDrivenSchedulingAgent.java:132) [nifi-framework-core-1.1.0.2.1.1.0-2.jar:1.1.0.2.1.1.0-2]
        at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) [na:1.8.0_77]
        at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:308) [na:1.8.0_77]
        at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$301(ScheduledThreadPoolExecutor.java:180) [na:1.8.0_77]
        at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:294) [na:1.8.0_77]
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) [na:1.8.0_77]
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) [na:1.8.0_77]
        at java.lang.Thread.run(Thread.java:745) [na:1.8.0_77]

错误看起来像缺少标题。以下是处理器属性:

在此处输入图像描述 在此处输入图像描述

我可以从 java 客户端访问其余的 api。这是我的代码:

WebResource webResource = client.resource(siteUrl);
ClientResponse response1 = webResource.accept("application/json")
        .header("Authorization ","Token " + key)
        .get(ClientResponse.class);
4

1 回答 1

1

这似乎是在以下情况下发生的合法错误:

  • 获取请求
  • 没有到 InvokeHttp 的传入连接
  • 未设置“将响应正文放入属性”

我相信您可以通过使用 GenerateFlowFile 作为 InvokeHttp 的触发器来解决此问题。

这是我为该问题创建的 JIRA,感谢您报告此问题: https ://issues.apache.org/jira/browse/NIFI-4399

于 2017-09-20T13:26:52.633 回答