Hello It appears to be throwing an NPE when establishing the position of the component you're trying to add. While clearly an unfriendly error message as-is did you specify the position in your request?
Thanks JOe On Wed, Apr 19, 2017 at 10:36 AM, Pushkara R <pushkar1...@gmail.com> wrote: > Hi, > > I'm writing a custom REST client for NiFi. I am having troubles with the > POST method on the /process-groups/<id>/remote-process-groups endpoint. > > The body of the POST method is as follows : > > { > "component": { > "targetUri": target_uri, > "communicationsTimeout": "30 sec", > "yieldDuration": "10 sec", > "transportProtocol": "HTTP", > "proxyHost": "", > "proxyPort": "", > "proxyUser": "", > "proxyPassword": "" > }, "revision": { > "clientId": str(uuid.uuid4()), > "version": 0 > } > } > > Whenever I make the call with the target_uri as > "http://10.24.24.221:8080/nifi", I get back a status of 500 and a response > that says "An unexpected error has occured. Please check the logs for > additional details." > > I have pasted the error logs from nifi-app.log and then below that logs from > nifi-user.log. Please let me know what could be causing this issue. It would > be really helpful. > > Thanks > Pushkar > > <nifi-app.log> > I 2017-04-19 19:54:35,663 ERROR [Flow Service Tasks Thread-2] > o.a.nifi.controller.StandardFlowService Unable to save flow controller > configuration due to: java.lang.NullPointerException > java.lang.NullPointerException: null > at > org.apache.nifi.controller.serialization.StandardFlowSerializer.addPosition(StandardFlowSerializer.java:141) > ~[nifi-framework-core-1.1.2.jar:1.1.2] > at > org.apache.nifi.controller.serialization.StandardFlowSerializer.addPosition(StandardFlowSerializer.java:136) > ~[nifi-framework-core-1.1.2.jar:1.1.2] > at > org.apache.nifi.controller.serialization.StandardFlowSerializer.addRemoteProcessGroup(StandardFlowSerializer.java:247) > ~[nifi-framework-core-1.1.2.jar:1.1.2] > at > org.apache.nifi.controller.serialization.StandardFlowSerializer.addProcessGroup(StandardFlowSerializer.java:190) > ~[nifi-framework-core-1.1.2.jar:1.1.2] > at > org.apache.nifi.controller.serialization.StandardFlowSerializer.serialize(StandardFlowSerializer.java:96) > ~[nifi-framework-core-1.1.2.jar:1.1.2] > at > org.apache.nifi.controller.FlowController.serialize(FlowController.java:1431) > ~[nifi-framework-core-1.1.2.jar:1.1.2] > at > org.apache.nifi.persistence.StandardXMLFlowConfigurationDAO.save(StandardXMLFlowConfigurationDAO.java:162) > ~[nifi-framework-core-1.1.2.jar:1.1.2] > at > org.apache.nifi.controller.StandardFlowService$SaveReportingTask.run(StandardFlowService.java:963) > ~[nifi-framework-core-1.1.2.jar:1.1.2] > at > java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) > [na:1.8.0_121] > at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:308) > [na:1.8.0_121] > at > java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$301(ScheduledThreadPoolExecutor.java:180) > [na:1.8.0_121] > at > java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:294) > [na:1.8.0_121] > at > java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) > [na:1.8.0_121] > at > java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) > [na:1.8.0_121] > at java.lang.Thread.run(Thread.java:745) [na:1.8.0_121] > > > <nifi-user.log> > 2017-04-19 19:54:35,219 INFO [NiFi Web Server-75] > org.apache.nifi.web.filter.RequestLogger Attempting request for (anonymous) > POST > http://10.24.24.222:8080/nifi-api/process-groups/8f5df7f8-015a-1000-7fd2-ef2d19738677/remote-process-groups > (source ip: 10.24.24.222) > 2017-04-19 19:54:35,225 ERROR [NiFi Web Server-75] > o.a.nifi.web.api.config.ThrowableMapper An unexpected error has occurred: > java.lang.NullPointerException. Returning Internal Server Error response. > java.lang.NullPointerException: null > at > org.apache.nifi.web.api.dto.DtoFactory.createPositionDto(DtoFactory.java:429) > ~[classes/:na] > at > org.apache.nifi.web.api.dto.DtoFactory.createRemoteProcessGroupDto(DtoFactory.java:1530) > ~[classes/:na] > at > org.apache.nifi.web.StandardNiFiServiceFacade.lambda$createRemoteProcessGroup$103(StandardNiFiServiceFacade.java:1580) > ~[classes/:1.1.2] > at > org.apache.nifi.web.StandardNiFiServiceFacade.lambda$createComponent$86(StandardNiFiServiceFacade.java:1338) > ~[classes/:1.1.2] > at > org.apache.nifi.web.revision.NaiveRevisionManager.updateRevision(NaiveRevisionManager.java:121) > ~[nifi-web-optimistic-locking-1.1.2.jar:1.1.2] > at > org.apache.nifi.web.StandardNiFiServiceFacade.createComponent(StandardNiFiServiceFacade.java:1331) > ~[classes/:1.1.2] > at > org.apache.nifi.web.StandardNiFiServiceFacade.createRemoteProcessGroup(StandardNiFiServiceFacade.java:1576) > ~[classes/:1.1.2] > at > org.apache.nifi.web.StandardNiFiServiceFacade$$FastClassBySpringCGLIB$$358780e0.invoke(<generated>) > ~[classes/:1.1.2] > at > org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:204) > ~[spring-core-4.2.4.RELEASE.jar:4.2.4.RELEASE] > at > org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.invokeJoinpoint(CglibAopProxy.java:720) > ~[spring-aop-4.2.4.RELEASE.jar:4.2.4.RELEASE] > at > org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:157) > ~[spring-aop-4.2.4.RELEASE.jar:4.2.4.RELEASE] > at > org.springframework.aop.aspectj.MethodInvocationProceedingJoinPoint.proceed(MethodInvocationProceedingJoinPoint.java:85) > ~[spring-aop-4.2.4.RELEASE.jar:4.2.4.RELEASE] > at > org.apache.nifi.web.NiFiServiceFacadeLock.createLock(NiFiServiceFacadeLock.java:41) > ~[classes/:1.1.2] > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > ~[na:1.8.0_121] > at > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) > ~[na:1.8.0_121] > at > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) > ~[na:1.8.0_121] > at java.lang.reflect.Method.invoke(Method.java:498) ~[na:1.8.0_121] > at > org.springframework.aop.aspectj.AbstractAspectJAdvice.invokeAdviceMethodWithGivenArgs(AbstractAspectJAdvice.java:621) > ~[spring-aop-4.2.4.RELEASE.jar:4.2.4.RELEASE] > at > org.springframework.aop.aspectj.AbstractAspectJAdvice.invokeAdviceMethod(AbstractAspectJAdvice.java:610) > ~[spring-aop-4.2.4.RELEASE.jar:4.2.4.RELEASE] > at > org.springframework.aop.aspectj.AspectJAroundAdvice.invoke(AspectJAroundAdvice.java:68) > ~[spring-aop-4.2.4.RELEASE.jar:4.2.4.RELEASE] > at > org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:179) > ~[spring-aop-4.2.4.RELEASE.jar:4.2.4.RELEASE] > at > org.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:92) > ~[spring-aop-4.2.4.RELEASE.jar:4.2.4.RELEASE] > at > org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:179) > ~[spring-aop-4.2.4.RELEASE.jar:4.2.4.RELEASE] > at > org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:655) > ~[spring-aop-4.2.4.RELEASE.jar:4.2.4.RELEASE] > at > org.apache.nifi.web.StandardNiFiServiceFacade$$EnhancerBySpringCGLIB$$1015922f.createRemoteProcessGroup(<generated>) > ~[classes/:1.1.2] > at > org.apache.nifi.web.api.ProcessGroupResource.lambda$createRemoteProcessGroup$25(ProcessGroupResource.java:1388) > ~[classes/:na] > at > org.apache.nifi.web.api.ApplicationResource.withWriteLock(ApplicationResource.java:666) > ~[classes/:na] > at > org.apache.nifi.web.api.ProcessGroupResource.createRemoteProcessGroup(ProcessGroupResource.java:1346) > ~[classes/:na] > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > ~[na:1.8.0_121] > at > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) > ~[na:1.8.0_121] > at > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) > ~[na:1.8.0_121] > at java.lang.reflect.Method.invoke(Method.java:498) ~[na:1.8.0_121] > at > com.sun.jersey.spi.container.JavaMethodInvokerFactory$1.invoke(JavaMethodInvokerFactory.java:60) > ~[jersey-server-1.19.jar:1.19] > at > com.sun.jersey.server.impl.model.method.dispatch.AbstractResourceMethodDispatchProvider$ResponseOutInvoker._dispatch(AbstractResourceMethodDispatchProvider.java:205) > ~[jersey-server-1.19.jar:1.19] > at > com.sun.jersey.server.impl.model.method.dispatch.ResourceJavaMethodDispatcher.dispatch(ResourceJavaMethodDispatcher.java:75) > ~[jersey-server-1.19.jar:1.19] > at > com.sun.jersey.server.impl.uri.rules.HttpMethodRule.accept(HttpMethodRule.java:302) > ~[jersey-server-1.19.jar:1.19] > at > com.sun.jersey.server.impl.uri.rules.RightHandPathRule.accept(RightHandPathRule.java:147) > ~[jersey-server-1.19.jar:1.19] > at > com.sun.jersey.server.impl.uri.rules.ResourceClassRule.accept(ResourceClassRule.java:108) > ~[jersey-server-1.19.jar:1.19] > at > com.sun.jersey.server.impl.uri.rules.RightHandPathRule.accept(RightHandPathRule.java:147) > ~[jersey-server-1.19.jar:1.19] > at > com.sun.jersey.server.impl.uri.rules.RootResourceClassesRule.accept(RootResourceClassesRule.java:84) > ~[jersey-server-1.19.jar:1.19] > at > com.sun.jersey.server.impl.application.WebApplicationImpl._handleRequest(WebApplicationImpl.java:1542) > [jersey-server-1.19.jar:1.19] > at > com.sun.jersey.server.impl.application.WebApplicationImpl._handleRequest(WebApplicationImpl.java:1473) > [jersey-server-1.19.jar:1.19] > at > com.sun.jersey.server.impl.application.WebApplicationImpl.handleRequest(WebApplicationImpl.java:1419) > [jersey-server-1.19.jar:1.19] > at > com.sun.jersey.server.impl.application.WebApplicationImpl.handleRequest(WebApplicationImpl.java:1409) > [jersey-server-1.19.jar:1.19] > at > com.sun.jersey.spi.container.servlet.WebComponent.service(WebComponent.java:409) > [jersey-servlet-1.19.jar:1.19] > at > com.sun.jersey.spi.container.servlet.ServletContainer.service(ServletContainer.java:558) > [jersey-servlet-1.19.jar:1.19] > at > com.sun.jersey.spi.container.servlet.ServletContainer.service(ServletContainer.java:733) > [jersey-servlet-1.19.jar:1.19] > at javax.servlet.http.HttpServlet.service(HttpServlet.java:790) > [javax.servlet-api-3.1.0.jar:3.1.0] > at > org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:845) > [jetty-servlet-9.3.9.v20160517.jar:9.3.9.v20160517] > at > org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1689) > [jetty-servlet-9.3.9.v20160517.jar:9.3.9.v20160517] > at > org.apache.nifi.web.filter.RequestLogger.doFilter(RequestLogger.java:66) > [classes/:na] > at > org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1676) > [jetty-servlet-9.3.9.v20160517.jar:9.3.9.v20160517] > at > org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:316) > [spring-security-web-4.0.3.RELEASE.jar:4.0.3.RELEASE] > at > org.springframework.security.web.access.intercept.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:126) > [spring-security-web-4.0.3.RELEASE.jar:4.0.3.RELEASE] > at > org.springframework.security.web.access.intercept.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:126) > [spring-security-web-4.0.3.RELEASE.jar:4.0.3.RELEASE] > at > org.springframework.security.web.access.intercept.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:90) > [spring-security-web-4.0.3.RELEASE.jar:4.0.3.RELEASE] > at > org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330) > [spring-security-web-4.0.3.RELEASE.jar:4.0.3.RELEASE] > at > org.springframework.security.web.session.SessionManagementFilter.doFilter(SessionManagementFilter.java:122) > [spring-security-web-4.0.3.RELEASE.jar:4.0.3.RELEASE] > at > org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330) > [spring-security-web-4.0.3.RELEASE.jar:4.0.3.RELEASE] > at > org.springframework.security.web.authentication.AnonymousAuthenticationFilter.doFilter(AnonymousAuthenticationFilter.java:111) > [spring-security-web-4.0.3.RELEASE.jar:4.0.3.RELEASE] > at > org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330) > [spring-security-web-4.0.3.RELEASE.jar:4.0.3.RELEASE] > at > org.apache.nifi.web.security.NiFiAuthenticationFilter.authenticate(NiFiAuthenticationFilter.java:83) > [nifi-web-security-1.1.2.jar:1.1.2] > at > org.apache.nifi.web.security.NiFiAuthenticationFilter.doFilter(NiFiAuthenticationFilter.java:57) > [nifi-web-security-1.1.2.jar:1.1.2] > at > org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330) > [spring-security-web-4.0.3.RELEASE.jar:4.0.3.RELEASE] > at > org.apache.nifi.web.security.NiFiAuthenticationFilter.authenticate(NiFiAuthenticationFilter.java:83) > [nifi-web-security-1.1.2.jar:1.1.2] > at > org.apache.nifi.web.security.NiFiAuthenticationFilter.doFilter(NiFiAuthenticationFilter.java:57) > [nifi-web-security-1.1.2.jar:1.1.2] > at > org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330) > [spring-security-web-4.0.3.RELEASE.jar:4.0.3.RELEASE] > at > org.apache.nifi.web.security.NiFiAuthenticationFilter.authenticate(NiFiAuthenticationFilter.java:83) > [nifi-web-security-1.1.2.jar:1.1.2] > at > org.apache.nifi.web.security.NiFiAuthenticationFilter.doFilter(NiFiAuthenticationFilter.java:57) > [nifi-web-security-1.1.2.jar:1.1.2] > at > org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330) > [spring-security-web-4.0.3.RELEASE.jar:4.0.3.RELEASE] > at > org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:213) > [spring-security-web-4.0.3.RELEASE.jar:4.0.3.RELEASE] > at > org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:176) > [spring-security-web-4.0.3.RELEASE.jar:4.0.3.RELEASE] > at > org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:346) > [spring-web-4.2.4.RELEASE.jar:4.2.4.RELEASE] > at > org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:262) > [spring-web-4.2.4.RELEASE.jar:4.2.4.RELEASE] > at > org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1676) > [jetty-servlet-9.3.9.v20160517.jar:9.3.9.v20160517] > at > org.apache.nifi.web.filter.TimerFilter.doFilter(TimerFilter.java:51) > [classes/:na] > at > org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1668) > [jetty-servlet-9.3.9.v20160517.jar:9.3.9.v20160517] > at > org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:581) > [jetty-servlet-9.3.9.v20160517.jar:9.3.9.v20160517] > at > org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:143) > [jetty-server-9.3.9.v20160517.jar:9.3.9.v20160517] > at > org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:548) > [jetty-security-9.3.9.v20160517.jar:9.3.9.v20160517] > at > org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:226) > [jetty-server-9.3.9.v20160517.jar:9.3.9.v20160517] > at > org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1174) > [jetty-server-9.3.9.v20160517.jar:9.3.9.v20160517] > at > org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:511) > [jetty-servlet-9.3.9.v20160517.jar:9.3.9.v20160517] > at > org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:185) > [jetty-server-9.3.9.v20160517.jar:9.3.9.v20160517] > at > org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1106) > [jetty-server-9.3.9.v20160517.jar:9.3.9.v20160517] > at > org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141) > [jetty-server-9.3.9.v20160517.jar:9.3.9.v20160517] > at > org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:119) > [jetty-server-9.3.9.v20160517.jar:9.3.9.v20160517] > at > org.eclipse.jetty.server.handler.gzip.GzipHandler.handle(GzipHandler.java:459) > [jetty-server-9.3.9.v20160517.jar:9.3.9.v20160517] > at > org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:134) > [jetty-server-9.3.9.v20160517.jar:9.3.9.v20160517] > at org.eclipse.jetty.server.Server.handle(Server.java:524) > [jetty-server-9.3.9.v20160517.jar:9.3.9.v20160517] > at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:319) > [jetty-server-9.3.9.v20160517.jar:9.3.9.v20160517] > at > org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:253) > [jetty-server-9.3.9.v20160517.jar:9.3.9.v20160517] > at > org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:273) > [jetty-io-9.3.9.v20160517.jar:9.3.9.v20160517] > at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:95) > [jetty-io-9.3.9.v20160517.jar:9.3.9.v20160517] > at > org.eclipse.jetty.io.SelectChannelEndPoint$2.run(SelectChannelEndPoint.java:93) > [jetty-io-9.3.9.v20160517.jar:9.3.9.v20160517] > at > org.eclipse.jetty.util.thread.strategy.ExecuteProduceConsume.executeProduceConsume(ExecuteProduceConsume.java:303) > [jetty-util-9.3.9.v20160517.jar:9.3.9.v20160517] > at > org.eclipse.jetty.util.thread.strategy.ExecuteProduceConsume.produceConsume(ExecuteProduceConsume.java:148) > [jetty-util-9.3.9.v20160517.jar:9.3.9.v20160517] > at > org.eclipse.jetty.util.thread.strategy.ExecuteProduceConsume.run(ExecuteProduceConsume.java:136) > [jetty-util-9.3.9.v20160517.jar:9.3.9.v20160517] > at > org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:671) > [jetty-util-9.3.9.v20160517.jar:9.3.9.v20160517] > at > org.eclipse.jetty.util.thread.QueuedThreadPool$2.run(QueuedThreadPool.java:589) > [jetty-util-9.3.9.v20160517.jar:9.3.9.v20160517] > at java.lang.Thread.run(Thread.java:745) [na:1.8.0_121] >