[
https://issues.apache.org/jira/browse/NIFI-13902?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
David Handermann resolved NIFI-13902.
-------------------------------------
Fix Version/s: 2.0.0-M5
Assignee: David Handermann
Resolution: Fixed
Recent updates to the JettyServer class supporting NAR Loading have resolved
this issue on the current main branch, so the resolution will be included in
the next release version.
> NiFi Registry External Resource Provider no longer works (Jetty context
> errors)
> -------------------------------------------------------------------------------
>
> Key: NIFI-13902
> URL: https://issues.apache.org/jira/browse/NIFI-13902
> Project: Apache NiFi
> Issue Type: Bug
> Affects Versions: 2.0.0-M4
> Reporter: Chris Sampson
> Assignee: David Handermann
> Priority: Major
> Fix For: 2.0.0-M5
>
>
> Attempting to use the example NiFi Registry External Resource Provider that
> comes with the default {{nifi.properties}} file in NiFi 2.0.0-M4
> {code}
> # # Example NiFi Registry NAR Provider:
> nifi.nar.library.provider.nifi-registry.implementation=org.apache.nifi.registry.extension.NiFiRegistryExternalResourceProvider
> nifi.nar.library.provider.nifi-registry.url=https://registry.local:18443
> {code}
> causes the NiFi web server to fail to start with errors indicated for the
> Jetty server context and naming exceptions:
> {code}
> 2024-10-18 15:13:26,483 WARN [main] o.e.jetty.ee10.webapp.WebAppContext
> Failed startup of context
> oeje10w.WebAppContext@29b4444a{/nifi-api,/nifi-api,b=file:///opt/nifi/nifi-current/work/jetty/nifi-web-api-2.0.0-M4.war/webapp/,a=STOPPED,h=oeje10s.SessionHandler@3ce7a354{STOPPED}}{./work/nar/extensions/nifi-server-nar-2.0.0-M4.nar-unpacked/NAR-INF/bundled-dependencies/nifi-web-api-2.0.0-M4.war}
> javax.naming.NamingException: This context is immutable
> at
> org.eclipse.jetty.jndi.NamingContext.createSubcontext(NamingContext.java:355)
> at
> org.eclipse.jetty.jndi.NamingContext.createSubcontext(NamingContext.java:393)
> at
> org.eclipse.jetty.ee10.plus.webapp.EnvConfiguration.createEnvContext(EnvConfiguration.java:236)
> at
> org.eclipse.jetty.ee10.plus.webapp.EnvConfiguration.preConfigure(EnvConfiguration.java:63)
> at
> org.eclipse.jetty.ee10.webapp.Configurations.preConfigure(Configurations.java:487)
> at
> org.eclipse.jetty.ee10.webapp.WebAppContext.preConfigure(WebAppContext.java:457)
> at
> org.eclipse.jetty.ee10.webapp.WebAppContext.doStart(WebAppContext.java:498)
> at
> org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:93)
> at
> org.eclipse.jetty.util.component.ContainerLifeCycle.start(ContainerLifeCycle.java:169)
> at
> org.eclipse.jetty.util.component.ContainerLifeCycle.doStart(ContainerLifeCycle.java:120)
> at org.eclipse.jetty.server.Handler$Abstract.doStart(Handler.java:491)
> at
> org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:93)
> at
> org.eclipse.jetty.util.component.ContainerLifeCycle.start(ContainerLifeCycle.java:169)
> at
> org.eclipse.jetty.util.component.ContainerLifeCycle.doStart(ContainerLifeCycle.java:120)
> at org.eclipse.jetty.server.Handler$Abstract.doStart(Handler.java:491)
> at
> org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:93)
> at
> org.eclipse.jetty.util.component.ContainerLifeCycle.start(ContainerLifeCycle.java:169)
> at
> org.eclipse.jetty.util.component.ContainerLifeCycle.doStart(ContainerLifeCycle.java:120)
> at org.eclipse.jetty.server.Handler$Abstract.doStart(Handler.java:491)
> at
> org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:93)
> at
> org.eclipse.jetty.util.component.ContainerLifeCycle.start(ContainerLifeCycle.java:169)
> at org.eclipse.jetty.server.Server.start(Server.java:624)
> at
> org.eclipse.jetty.util.component.ContainerLifeCycle.doStart(ContainerLifeCycle.java:120)
> at org.eclipse.jetty.server.Handler$Abstract.doStart(Handler.java:491)
> at org.eclipse.jetty.server.Server.doStart(Server.java:565)
> at
> org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:93)
> at org.apache.nifi.web.server.JettyServer.start(JettyServer.java:781)
> at org.apache.nifi.NiFi.<init>(NiFi.java:172)
> at org.apache.nifi.NiFi.<init>(NiFi.java:83)
> at org.apache.nifi.NiFi.main(NiFi.java:332)
> 2024-10-18 15:13:26,558 WARN [main] o.e.jetty.ee10.webapp.WebAppContext
> Failed startup of context
> oeje10w.WebAppContext@4bab804f{/nifi-content-viewer,/nifi-content-viewer,b=file:///opt/nifi/nifi-current/work/jetty/nifi-web-content-viewer-2.0.0-M4.war/webapp/,a=STOPPED,h=oeje10s.SessionHandler@eebd983{STOPPED}}{./work/nar/extensions/nifi-server-nar-2.0.0-M4.nar-unpacked/NAR-INF/bundled-dependencies/nifi-web-content-viewer-2.0.0-M4.war}
> javax.naming.NamingException: This context is immutable
> at
> org.eclipse.jetty.jndi.NamingContext.createSubcontext(NamingContext.java:355)
> at
> org.eclipse.jetty.jndi.NamingContext.createSubcontext(NamingContext.java:393)
> at
> org.eclipse.jetty.ee10.plus.webapp.EnvConfiguration.createEnvContext(EnvConfiguration.java:236)
> at
> org.eclipse.jetty.ee10.plus.webapp.EnvConfiguration.preConfigure(EnvConfiguration.java:63)
> at
> org.eclipse.jetty.ee10.webapp.Configurations.preConfigure(Configurations.java:487)
> at
> org.eclipse.jetty.ee10.webapp.WebAppContext.preConfigure(WebAppContext.java:457)
> at
> org.eclipse.jetty.ee10.webapp.WebAppContext.doStart(WebAppContext.java:498)
> at
> org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:93)
> at
> org.eclipse.jetty.util.component.ContainerLifeCycle.start(ContainerLifeCycle.java:169)
> at
> org.eclipse.jetty.util.component.ContainerLifeCycle.doStart(ContainerLifeCycle.java:120)
> at org.eclipse.jetty.server.Handler$Abstract.doStart(Handler.java:491)
> at
> org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:93)
> at
> org.eclipse.jetty.util.component.ContainerLifeCycle.start(ContainerLifeCycle.java:169)
> at
> org.eclipse.jetty.util.component.ContainerLifeCycle.doStart(ContainerLifeCycle.java:120)
> at org.eclipse.jetty.server.Handler$Abstract.doStart(Handler.java:491)
> at
> org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:93)
> at
> org.eclipse.jetty.util.component.ContainerLifeCycle.start(ContainerLifeCycle.java:169)
> at
> org.eclipse.jetty.util.component.ContainerLifeCycle.doStart(ContainerLifeCycle.java:120)
> at org.eclipse.jetty.server.Handler$Abstract.doStart(Handler.java:491)
> at
> org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:93)
> at
> org.eclipse.jetty.util.component.ContainerLifeCycle.start(ContainerLifeCycle.java:169)
> at org.eclipse.jetty.server.Server.start(Server.java:624)
> at
> org.eclipse.jetty.util.component.ContainerLifeCycle.doStart(ContainerLifeCycle.java:120)
> at org.eclipse.jetty.server.Handler$Abstract.doStart(Handler.java:491)
> at org.eclipse.jetty.server.Server.doStart(Server.java:565)
> at
> org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:93)
> at org.apache.nifi.web.server.JettyServer.start(JettyServer.java:781)
> at org.apache.nifi.NiFi.<init>(NiFi.java:172)
> at org.apache.nifi.NiFi.<init>(NiFi.java:83)
> at org.apache.nifi.NiFi.main(NiFi.java:332)
> 2024-10-18 15:13:26,565 WARN [main] o.e.jetty.ee10.webapp.WebAppContext
> Failed startup of context
> oeje10w.WebAppContext@4b9ed99d{/nifi-docs,/nifi-docs,b=file:///opt/nifi/nifi-current/work/jetty/nifi-web-docs-2.0.0-M4.war/webapp/,a=STOPPED,h=oeje10s.SessionHandler@39b95a80{STOPPED}}{./work/nar/extensions/nifi-server-nar-2.0.0-M4.nar-unpacked/NAR-INF/bundled-dependencies/nifi-web-docs-2.0.0-M4.war}
> javax.naming.NamingException: This context is immutable
> at
> org.eclipse.jetty.jndi.NamingContext.createSubcontext(NamingContext.java:355)
> at
> org.eclipse.jetty.jndi.NamingContext.createSubcontext(NamingContext.java:393)
> at
> org.eclipse.jetty.ee10.plus.webapp.EnvConfiguration.createEnvContext(EnvConfiguration.java:236)
> at
> org.eclipse.jetty.ee10.plus.webapp.EnvConfiguration.preConfigure(EnvConfiguration.java:63)
> at
> org.eclipse.jetty.ee10.webapp.Configurations.preConfigure(Configurations.java:487)
> at
> org.eclipse.jetty.ee10.webapp.WebAppContext.preConfigure(WebAppContext.java:457)
> at
> org.eclipse.jetty.ee10.webapp.WebAppContext.doStart(WebAppContext.java:498)
> at
> org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:93)
> at
> org.eclipse.jetty.util.component.ContainerLifeCycle.start(ContainerLifeCycle.java:169)
> at
> org.eclipse.jetty.util.component.ContainerLifeCycle.doStart(ContainerLifeCycle.java:120)
> at org.eclipse.jetty.server.Handler$Abstract.doStart(Handler.java:491)
> at
> org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:93)
> at
> org.eclipse.jetty.util.component.ContainerLifeCycle.start(ContainerLifeCycle.java:169)
> at
> org.eclipse.jetty.util.component.ContainerLifeCycle.doStart(ContainerLifeCycle.java:120)
> at org.eclipse.jetty.server.Handler$Abstract.doStart(Handler.java:491)
> at
> org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:93)
> at
> org.eclipse.jetty.util.component.ContainerLifeCycle.start(ContainerLifeCycle.java:169)
> at
> org.eclipse.jetty.util.component.ContainerLifeCycle.doStart(ContainerLifeCycle.java:120)
> at org.eclipse.jetty.server.Handler$Abstract.doStart(Handler.java:491)
> at
> org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:93)
> at
> org.eclipse.jetty.util.component.ContainerLifeCycle.start(ContainerLifeCycle.java:169)
> at org.eclipse.jetty.server.Server.start(Server.java:624)
> at
> org.eclipse.jetty.util.component.ContainerLifeCycle.doStart(ContainerLifeCycle.java:120)
> at org.eclipse.jetty.server.Handler$Abstract.doStart(Handler.java:491)
> at org.eclipse.jetty.server.Server.doStart(Server.java:565)
> at
> org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:93)
> at org.apache.nifi.web.server.JettyServer.start(JettyServer.java:781)
> at org.apache.nifi.NiFi.<init>(NiFi.java:172)
> at org.apache.nifi.NiFi.<init>(NiFi.java:83)
> at org.apache.nifi.NiFi.main(NiFi.java:332)
> 2024-10-18 15:13:26,576 INFO [main] o.eclipse.jetty.server.AbstractConnector
> Started ServerConnector@95e4b48{SSL, (ssl, alpn, h2,
> http/1.1)}{nifi.local:8443}
> 2024-10-18 15:13:26,582 INFO [main] org.eclipse.jetty.server.Server Started
> oejs.Server@3e2d8623{STARTING}[12.0.10,sto=0] @9667ms
> 2024-10-18 15:13:26,582 ERROR [main] org.apache.nifi.web.server.JettyServer
> Failed to start web server... shutting down.
> java.lang.NullPointerException: Cannot invoke
> "jakarta.servlet.ServletContext.setAttribute(String, Object)" because
> "webApiServletContext" is null
> at org.apache.nifi.web.server.JettyServer.start(JettyServer.java:800)
> at org.apache.nifi.NiFi.<init>(NiFi.java:172)
> at org.apache.nifi.NiFi.<init>(NiFi.java:83)
> at org.apache.nifi.NiFi.main(NiFi.java:332)
> 2024-10-18 15:13:26,583 INFO [Thread-0] org.apache.nifi.NiFi Application
> Server shutdown started
> 2024-10-18 15:13:26,583 INFO [Thread-0] org.eclipse.jetty.server.Server
> Stopped oejs.Server@3e2d8623{STOPPING}[12.0.10,sto=0]
> {code}
> Possibly something to do with the Jetty server version upgrades performed as
> part of the NiFi 2.x uplift.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)