Create
cancel
Showing results for 
Search instead for 
Did you mean: 
Sign up Log in
Deleted user
0 / 0 points
Next:
badges earned

Your Points Tracker
Challenges
Leaderboard
  • Global
  • Feed

Badge for your thoughts?

You're enrolled in our new beta rewards program. Join our group to get the inside scoop and share your feedback.

Join group
Recognition
Give the gift of kudos
You have 0 kudos available to give
Who do you want to recognize?
Why do you want to recognize them?
Kudos
Great job appreciating your peers!
Check back soon to give more kudos.

Past Kudos Given
No kudos given
You haven't given any kudos yet. Share the love above and you'll see it here.

It's not the same without you

Join the community to find out what other Atlassian users are discussing, debating and creating.

Atlassian Community Hero Image Collage

AP is not defined

Deleted user Mar 07, 2017

In an Atlassian connect plugin, we've this code

$(document).ready(function() {
    AP.require('request', function(request) {

which works fine, but sometimes and randomly we receive the error message in the object

AP is not defined

And this is not related to a specific browser or OS

Any idea of why this happens?

Any suggestion on what to investigate?

Thanks

 

 

That's the head section of my web panel

<html lang="en">
    <head>
        <script src="//ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script>
        <script src="//aui-cdn.atlassian.com/aui-adg/6.0.6/js/aui.min.js"></script>
        <link rel="stylesheet" href="//aui-cdn.atlassian.com/aui-adg/6.0.6/css/aui.min.css" media="all">
        <link rel="stylesheet" href="mycustom.css">
        <script src="mycustom.js"></script>
    </head>

and that's the last part of the body

<!-- Stop the loading addon message -->
    <script id="connect-loader" data-options="sizeToParent:true;">
        (function() {
            var getUrlParam = function(param) {
                var codedParam = (new RegExp(param + '=([^&]*)')).exec(window.location.search)[1];
                return decodeURIComponent(codedParam);
            };

            var baseUrl = getUrlParam('xdm_e') + getUrlParam('cp');
            var options = document.getElementById('connect-loader').getAttribute('data-options');
            var script = document.createElement("script");
            script.src = baseUrl + '/atlassian-connect/all.js';

            if (options) {
                script.setAttribute('data-options', options);
            }

            document.getElementsByTagName("head")[0].appendChild(script);
        })();
    </script>
</body>

as described in the Atlassian dev documentation

2 answers

AP is defined in "integration bridge" all.js loaded from your host JIRA:

https://YOUR-ATLASSIAN-DOMAIN/atlassian-connect/all.js

I guess that all.js is not loaded (which should not happen) or maybe your load your custom JS file before all.js.

Deleted user Mar 08, 2017

all.js is loaded before my custom JS because the code works fine, 

and my JS is loaded at last in my web panel

but it seems that sometime (and I don't know when and why) 

AP is not available (i.e. all.js is not loaded?)

Like # people like this

Make sure you do no have async attribute in script tags.

Thanks @Volodymyr Krupach !

It was strange that AP works randomly, but removing async helped.

Hi @Volodymyr Krupach  ,

I try to add all.js to my plugin but I got this err: http://localhost:2990/jira/atlassian-connect/all.js net::ERR_ABORTED 404

 

It couldn't load

Do you have any idea about this?

Thanks

Hi @Dang Thi Thuy Tien ,

Jira Cloud should NOT be loaded from localhost. You need to get development instance hosted by Atlassian. Here is a good tutorial: https://developer.atlassian.com/cloud/jira/platform/getting-started/

Hi @Volodymyr Krupach 
Thank you so much, 

I find some link 

<script src="https://connect-cdn.atl-paas.net/all.js" type="text/javascript"></script>

But  It has another error  :

AP.request({

Cannot read property 'request' of undefined

Thank you

all.js must be loaded from the hosting Jira. It's a bridge between hosting Jira and your app and it will not work when loaded from outside.

I am running into this exact same issue with loading all.js from our JIRA instance. The script loader is absolutely doing the right thing, we've used it forever for our Confluence add-on and I've verified that it's present and loaded in the DOM. It's all.js that has an issue when it tries to execute.

I'm getting an Uncaught TypeError: Object.defineProperty called on a non-object, and AP fails to be created or made available to our add-in

Suggest an answer

Log in or Sign up to answer
TAGS
Community showcase
Published in Jira Service Management

JSM June Challenge #2: Share how your business teams became ITSM rockstars

For JSM June Challenge #2, share how your non-technical teams like HR, legal, marketing, finance, and beyond started using Jira Service Management! Tell us: Did they ask to start using it or...

298 views 9 7
Read article

Community Events

Connect with like-minded Atlassian users at free events near you!

Find an event

Connect with like-minded Atlassian users at free events near you!

Unfortunately there are no Community Events near you at the moment.

Host an event

You're one step closer to meeting fellow Atlassian users at your local event. Learn more about Community Events

Events near you