Symptoms

When trying to order a subscription with several APS applications which require some configuration during the purchase process, on one of the purchase screens there is no possibility to proceed. Clicking "Next" or any other configuration related button or tab does nothing.

At the screen where the reported issue is reproduced, a similar error is displayed in the browser console:

TypeError: xhr is undefined[Learn More] script.js:30:1
 getErrorMessage https://cp.provider.tld/bss-static/azure/script.js:30:1
 selectTabHandler https://cp.provider.tld/bss-static/youraps/script.js:681:20
 b.event.dispatch https://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js:3:28285
 b.event.add/v.handle https://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js:3:25025

getErrorMessage is an example method here, other methods could also be causing this error, but the method must be present in both script.js files mentioned in the error and accept different parameters.

For example, the first script.js file above is from Azure APS packaged by Odin, it has a getErrorMessage that accepts an xhr parameter:

var getErrorMessage = function(xhr){
 ...
}

The script.js file from an APS packaged by another vendor also has a method with the same name, but it does not accept any parameters:

var getErrorMessage = function() {
 ...
}

Cause

The method is requested from the script.js of the APS packaged by another vendor, but the actual method that is executed is from another script.js file. Due to input parameters mismatch the method fails to execute.

This is a JavaScript specific issue: if several .js files are added in the same webpage, and those files have methods with the same exact names, only the one that is defined last is actually used for all the calls of this method within this page.

Resolution

This behavior will be improved in scope of PBA-78537. Please contact your Account Manager or Pooled Technical Associates team (pta@odin.com) to trace the status of the issues.

The workaround is to contact the APS package vendor/publisher and ask then to change the method name in their script.js so that it does not match with method names that are already present in applications packaged by Odin.

Internal content