Symptom
User is unable to launch course properly in SAP Successfactors Learning Management System (LMS)
"Image/data in this KBA is from SAP internal systems, sample data, or demo systems. Any resemblance to real data is purely coincidental."
Environment
SAP Successfactors Learning Management System
Reproducing the Issue
- Launch course in BizX
Please take note that customers might experience different behavior when launching the course such as blank screen or flash error.
- Open F12 console and you will see Permission Denied error.
Cause
This is an issue with how the content was designed and a change that Microsoft introduced. Microsoft's change to their browser behavior blocks content that does not follow the method found in the SCORM sample content that has been published as part of the SCORM standard. Prior to this change by Microsoft, content could use other methods and the browser would allow it, but this is no longer the case. If the content is updated to follow the method in the SCORM sample content, then it will work.
Resolution
Microsoft released a Windows Security Update in December 2016 that fixed a defect in Internet Explorer's support of the cross-domain restriction.
As a result, we have had customers who launch content through BizX report issues with some SCORM courses finding the SCORM API after this update was applied.
There are 2 scenarios where SCORM content launching from BizX fails to find the API after the update:
1. Content is coded to look for the API in the content window's opener window startng with the top frame, (BizX frame). theAPI = findAPI(this.opener.top);
2. Content is coded to look for both the SCORM 2004 API and SCORM 1.2 API in succession but the content is developed to the version of SCORM that it searches the API for 2nd.
If the content is published as SCORM 1.2 compliant but looks for the SCORM 2004 API first, it typically will look for the SCORM 2004 API through the hierachary of the content window and the content window's parent and opener windows until it hits the top most frame. When content is launched from BizX the top most frame will be the BizX frame.
In both scenarios, the content in its attempt to find the API tries to act on a frame (BizX frame) that is launched under a different domain than the LMS and the associated content. Before this Windows Security Update, IE allowed the content's code to act on the BizX frame without error and complete the functions to find the API. After the Windows Security update is applied, IE blocks the code with a "permission denied" error as expected when it tries to act on the BizX window.
Ways to address (both require changes to the content):
1. Ensure content is not looking in the top most frame of the content's opener window. Remove ".top" in getAPI function or comparable function where content is looking in the opener window.
2. Content can be coded to look only for the API of the SCORM version to which it is developed.
Keywords
blank screen when launching course, content not working, error with content, adobe flash error, LRN-17273, LRN-18493, LRN-17360 , KBA , LOD-SF-LMS-CNT , Content , Problem