0

以下是我使用安全休息api的nifi作業。從Nifi消費Rest API

enter image description here

當我運行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] 

錯誤看起來像是頭部丟失。以下是處理器性能:

enter image description here enter image description here

我能夠打到從Java客戶端的REST API。這裏是我的代碼:

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

什麼nifi的版本,您正在使用? – daggett

+0

我使用的是屬於HDF 2.4.2.0的Nifi –

回答

0

這似乎是其在下列情況下出現合法錯誤:

  • GET請求
  • 沒有傳入連接InvokeHttp
  • 「將響應體的屬性'未設置

我相信你可以通過使用GenerateFl解決該問題owFile作爲InvokeHttp的觸發器。

下面是我對這個問題產生,報告此感謝一個JIRA: https://issues.apache.org/jira/browse/NIFI-4399