-
Bug
-
Resolution: Unresolved
-
Low
-
8.13.8, 9.4.18, 9.12.8
-
8.13
-
23
-
Severity 3 - Minor
-
10
-
Summary
Activity Stream gadget fails to load if it's accessed via HTTPS with HTTP/2 UpgradeProtocol enabled.
<UpgradeProtocol className="org.apache.coyote.http2.Http2Protocol"/>
With the parameter, the failing /plugins/servlet/gadgets/ request is associated with H2 (instead of HTTP/1.1) protocol.
Steps to Reproduce
- Deploy Jira 8.13.8
- Add another HTTPS connector to Jira with
<UpgradeProtocol className="org.apache.coyote.http2.Http2Protocol"/>
- Restart Jira
- Access Jira over HTTPS and check the activity stream gadget
Expected Results
Activity stream to load without any issues.
Actual Results
- From the HAR file, /plugins/servlet/gadgets/ifr request is returned with HTTP 500 response:
- NullPointerException is logged in corresponding log:
The below exception is thrown in the xxxxxxx.log file:2021-07-14 19:00:41,554-0400 https-openssl-nio-443-exec-14 ERROR [c.a.j.web.servlet.InternalServerErrorServlet] {errorId=78bb5031-7e6b-410b-90f7-c08240c4ee6e, interpretedMsg=, cause=java.lang.NullPointerException, stacktrace=java.lang.NullPointerException at java.lang.String.replace(String.java:2240) [?:1.8.0_275] at org.apache.shindig.gadgets.DefaultUrlGenerator.getBundledJsUrl(DefaultUrlGenerator.java:85) [?:?] at org.apache.shindig.gadgets.render.RenderingContentRewriter.injectFeatureLibraries(RenderingContentRewriter.java:221) [?:?] at org.apache.shindig.gadgets.render.RenderingContentRewriter.rewrite(RenderingContentRewriter.java:144) [?:?] at org.apache.shindig.gadgets.rewrite.DefaultContentRewriterRegistry.rewriteGadget(DefaultContentRewriterRegistry.java:75) [?:?] at org.apache.shindig.gadgets.render.HtmlRenderer.render(HtmlRenderer.java:77) [?:?] at org.apache.shindig.gadgets.render.Renderer.render(Renderer.java:78) [?:?] at org.apache.shindig.gadgets.servlet.GadgetRenderingServlet.render(GadgetRenderingServlet.java:58) [?:?] at org.apache.shindig.gadgets.servlet.GadgetRenderingServlet.doGet(GadgetRenderingServlet.java:93) [?:?] at javax.servlet.http.HttpServlet.service(HttpServlet.java:626) [servlet-api.jar:?] at javax.servlet.http.HttpServlet.service(HttpServlet.java:733) [servlet-api.jar:?] at com.atlassian.plugin.servlet.DelegatingPluginServlet.service(DelegatingPluginServlet.java:37) [atlassian-plugins-servlet-5.3.11.jar:?] at javax.servlet.http.HttpServlet.service(HttpServlet.java:733) [servlet-api.jar:?] at com.atlassian.plugin.servlet.ServletModuleContainerServlet.service(ServletModuleContainerServlet.java:47) [atlassian-plugins-servlet-5.3.11.jar:?] ... , referer=https://<baseurl>/secure/Dashboard.jspa?selectPageId=21001, servletErrorMessage=
Notes
Similar issue in Bamboo - https://jira.atlassian.com/browse/BAM-20695
Workaround
- Remove the UpgradeProtocol for http2 from the HTTPS connector in the server.xml
<UpgradeProtocol className="org.apache.coyote.http2.Http2Protocol" />
- Restart Jira
- relates to
-
JRASERVER-70517 Officially Support HTTP/2 protocol
- Closed
-
MNSTR-7421 Loading...