JIRA issue collector -- blank window

Aseem Parikh
Rising Star
Rising Star
Rising Stars are recognized for providing high-quality answers to other users. Rising Stars receive a certificate of achievement and are on the path to becoming Community Leaders.
December 18, 2013

I have an issue collector that uses a custom template because we need to collect additional information. I've been able to use custom templates and fields with issue collectors in the past, but now all I'm getting is a blank screen whenever I click on the trigger:

I checked out the logs which contain only this message:

2013-12-18 12:19:45,451 http-bio-8085-exec-8 ERROR anonymous 739x139737x1 9081ri <REDACTED_IP> /s/d41d8cd98f00b204e9800998ecf8427e/en_USp5mnjf-1988229788/6157/10/1.4.0/_/download/batch/com.atlassian.jira.collector.plugin.jira-issue-collector-plugin:issuecollector/com.atlassian.jira.collector.plugin.jira-issue-collector-plugin:issuecollector.js [collector.plugin.transformer.CollectorTransformer] Unfiltered Issue Collector bootstrap.js request.

There's another collector for this very same project which uses the same issue type, but it doesn't use a custom template. That collector renders fine and doesn't produce errors in the logs. Has anyone seen this issue before? How do I even begin digging deeper into this issue?

This happens in every single browser and is reproducible by pretty much anyone who accesses it.

2 answers

1 accepted

1 vote
Answer accepted
Aseem Parikh
Rising Star
Rising Star
Rising Stars are recognized for providing high-quality answers to other users. Rising Stars receive a certificate of achievement and are on the path to becoming Community Leaders.
December 22, 2013

It turns out that my problem was due to the fact that JIRA was hosted under one domain running on SSL (let's say https://jiradomain.com) while the issue collector being used under another domain not using SSL (http://examplesite.com). The browsers I tested with (Chrome, Safari, FF, IE) didn't seem to like the fact that the collector was loading a frame from another domain/protocol, so it was blocked -- producing a blank screen. In the Chrome console, the following error was displayed while clicking on trigger:

Uncaught SecurityError: Blocked a frame with origin "https://jiradomain.com" from accessing a frame with origin "http://examplesite.com". The frame requesting access has a protocol of "https", the frame being accessed has a protocol of "http". Protocols must match.

As a sanity check, I added the issue collector's script tags to JIRA's announcement banner. It worked without issue. Despite the fact that I was NOT seeing a blank screen with the pre-defined templates, I still saw this error in the JS console. I initially dismissed it as a red herring, which ultimately led to much frustration and cursing as I attempted to troubleshoot further. Don't make the same mistake I did.

Now obviously I don't want to disable SSL on JIRA just to get an issue collector working, so I had to get creative here. I did some research and found that Apache's mod_substitute could be used to search and replace text in the response body so I got cracking.

I enabled mod_substitute in Apache and added some directives to replace https://jiradomain.com/jirawith http://examplesite.com/jirawhich worked like a charm. I then had to proxy traffic in the examplesite.comvhost towards the JIRA installation. With this fix, I stopped seeing security errors for the pre-defined template so I switched back to a custom template. Much to my relief, it all worked without a hitch.

Hopefully this write-up proves to be helpful to someone else in the future.

2 votes
Boris Berenberg
Rising Star
Rising Star
Rising Stars are recognized for providing high-quality answers to other users. Rising Stars receive a certificate of achievement and are on the path to becoming Community Leaders.
December 18, 2013

This means that your JS / html is breaking the contents of the form. If you disable minification per: https://developer.atlassian.com/display/DOCS/Supporting+Minification+of+JavaScript+and+CSS+Resources#SupportingMinificationofJavaScriptandCSSResources-DisablingMinificationand then restart JIRA, it should be easier to troubleshoot the issue.

Aseem Parikh
Rising Star
Rising Star
Rising Stars are recognized for providing high-quality answers to other users. Rising Stars receive a certificate of achievement and are on the path to becoming Community Leaders.
December 18, 2013

This JS/HTML is coming directly from the issue collector system plugin. Are you suggesting that the plugin itself is bugged?

Aseem Parikh
Rising Star
Rising Star
Rising Stars are recognized for providing high-quality answers to other users. Rising Stars receive a certificate of achievement and are on the path to becoming Community Leaders.
December 18, 2013

For what it's worth, running JIRA with -Datlassian.webresource.disable.minification=true didn't seem to do anything for the plugin :( The JS was still minified.

Boris Berenberg
Rising Star
Rising Star
Rising Stars are recognized for providing high-quality answers to other users. Rising Stars receive a certificate of achievement and are on the path to becoming Community Leaders.
December 18, 2013

Aseem,

Thanks for the info, I misunderstood and thought you were customizing the Issue Collector using an external resource. Can you edit the issue collector via the Admin interface? Try switching it to a default form type, and then editing it back to the state you want it in. Something may have gotten broken on it. If this does not work, then I would need to see a HAR capture of the error occuring with the

-Datlassian.webresource.disable.minification=true

option in place.

Aseem Parikh
Rising Star
Rising Star
Rising Stars are recognized for providing high-quality answers to other users. Rising Stars receive a certificate of achievement and are on the path to becoming Community Leaders.
December 18, 2013

I switched the template to Raise a Bug and the collector loaded fine. After switching back, it was blank again. I didn't even add custom fields or anything.

I'm not entirely sure disabling minification would help here. Isn't the JS/CSS minified when the plugin is compiled?

In any case, I recently found that I wasn't the only one who experienced this issue: https://jira.atlassian.com/browse/JRA-32579

So I decided to open a support request of my own. I'll be sure to post a solution if one is found. Thanks for all the help so far!

Jason Brison May 25, 2014

Did you get a resolution for this? If not I'll open my own support ticket.

Aseem Parikh
Rising Star
Rising Star
Rising Stars are recognized for providing high-quality answers to other users. Rising Stars receive a certificate of achievement and are on the path to becoming Community Leaders.
May 25, 2014

I did. See the accepted answer above.

Jason Brison May 25, 2014

Sorry, I had even read that. Just didn't fit my scenario. Turns out one of our level 1 admins added custom JS to a customfield descritpion that was on the collector. It was conflicting and breaking the Issue Collector.

Users just happened to notice it right after I switched our isntance from http to https.

Suggest an answer

Log in or Sign up to answer