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.
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.
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
option in place.
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!
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.
Connect with like-minded Atlassian users at free events near you!Find a group
Connect with like-minded Atlassian users at free events near you!
Unfortunately there are no AUG chapters near you at the moment.Start an AUG
We're bringing product updates and pro tips on teamwork to ten cities around the world.Save your spot