Hello!
I am installing a new instance of Rundeck (Rundeck4.17.02023-09-25) on an Ubuntu VM hosted on a windows server 2019 Hyper Visor. It uses SSL, and have configured the new instance to use a reverse proxy, so rundeck users dont have to enter the 8443 port at the end of the url. The instance is based on an older, currently running version of rundeck (Version 3.3.8). Here are the steps from reproduction (Also, this was working previously before configuring Nginx, now it is not working)
1. Export Project from old rundeck instance, with only executions unchecked. (Creates Jar file)
2. Attempt to import JAR into project in new version of rundeck (worked previously), now returns the below null pointer exception... (Not the entire stack trace, can provide if necessary)...
[2023-11-09T01:38:34,949] ERROR errors.GrailsExceptionResolver [qtp2096860144-61] - NullPointerException occurred when processing request: [POST] /project/TestProject/importArchive
Stacktrace follows:
java.lang.NullPointerException: null
at rundeck.controllers.ProjectController.hintErrorCause(ProjectController.groovy:488) ~[classes!/:?]
at jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:?]
at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:?]
at rundeck.controllers.ProjectController$_importArchive_closure10.doCall(ProjectController.groovy:461) ~[classes!/:?]
at jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:?]
at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:?]
at grails.artefact.Controller$Trait$Helper.withForm(Controller.groovy:288) ~[grails-plugin-controllers-5.3.2.jar!/:5.3.2]
at grails.artefact.Controller$Trait$Helper.withForm(Controller.groovy:265) ~[grails-plugin-controllers-5.3.2.jar!/:5.3.2]
at rundeck.controllers.ProjectController.importArchive(ProjectController.groovy:373) ~[classes!/:?]
at org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:218) ~[spring-core-5.3.27.jar!/:5.3.27]
at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.invokeJoinpoint(CglibAopProxy.java:793) ~[spring-aop-5.3.27.jar!/:5.3.27]
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:163) ~[spring-aop-5.3.27.jar!/:5.3.27]
at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:763) ~[spring-aop-5.3.27.jar!/:5.3.27]
at org.rundeck.app.authorization.RdAuthorizeInterceptor.invoke(RdAuthorizeInterceptor.groovy:72) ~[classes!/:?]
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:175) ~[spring-aop-5.3.27.jar!/:5.3.27]
at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:763) ~[spring-aop-5.3.27.jar!/:5.3.27]
at org.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:97) ~[spring-aop-5.3.27.jar!/:5.3.27]
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:186) ~[spring-aop-5.3.27.jar!/:5.3.27]
at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:763) ~[spring-aop-5.3.27.jar!/:5.3.27]
at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:708) ~[spring-aop-5.3.27.jar!/:5.3.27]
at org.grails.core.DefaultGrailsControllerClass$MethodHandleInvoker.invoke(DefaultGrailsControllerClass.java:223) ~[grails-core-5.3.2.jar!/:5.3.2]
at org.grails.core.DefaultGrailsControllerClass.invoke(DefaultGrailsControllerClass.java:188) ~[grails-core-5.3.2.jar!/:5.3.2]