Symptom
LMS CROSS DOMAIN SOLUTION (CDS) KNOWLEDGE SESSION FOR CUSTOMERS, PARTNERS AND SAP PRODUCT SUPPORT
1. About the SuccessFactors LMS CDS
1.1 Cross Domain Solution Files
1.2 Technical Requirements for the CDS
2. Cross Domain Solution at Run time
2.1 JSlet Tracking vs. Applet Tracking
3. Cross Domain Solution Configuration Overview
3.1 Setting up the Cross Domain Solution on the Content Server
3.2 Configuring LMS-ADMIN for the Cross Domain Solution
3.3 Communication Cross Domain Support Settings
3.4 Enabling the Cross Domain Solution on Content Objects
4. Cross Domain Solution Troubleshooting
IMPORTANT NOTE:
Cross-domain issues are outside the scope of Customer Support. To obtain the latest CDS war proxlet file, see KBA 2750497
Any requests for help with installing or modifying the proxlet, or setting up a reverse proxy, must go through SAP Professional Services.
Please see the User Assistance Documentation for more information. Note that login with a valid S-User account might be required.
Environment
SAP SuccessFactors Learning
Resolution
1. About the SuccessFactors LMS CDS
The Cross Domain Solution (CDS) for content servers applies when you decide to use your own content server instead of iContent.
If the customer already has iContent installed, this is already set up for them, and you can ignore CDS.
The Cross Domain Solution (CDS) provides trusted server-to-server communication between an external content server and the SuccessFactors Learning. Trusted communication is necessary when the course content server is in a different Domain Name Space (DNS) than the SuccessFactors LMS. This is common.
In a cross-domain scenario, SuccessFactors recommends the Proxlet WAR CDS. The Proxlet WAR (Java Web Archive) communicates basic course tracking information back to the LMS, such as exam scores and progress through content.
When the Proxlet WAR CDS is not working properly, the user can launch content, but their completion status is not recorded back to the LMS.
What is the difference between CDS and OCN?
- SCORM: The cross-domain content Proxlet WAR (CDS Proxlet) needs to be implemented for SCORM content that is hosted and managed by the customer on their own systems, which are on a different domain than SF Learning.
- AICC: While Flash was deprecated a few years ago, no other implementation is required to host AICC courses on a third-party content server.
The OCN Framework is used when vendors host content for the customer and not SF, and it needs to be integrated with SF Learning.
How does it work?
SAP SuccessFactors Learning offers an open API that enables content providers to integrate seamlessly with SAP SuccessFactors Learning. The open API supports:
- Automated course imports in bulk
- Automatic provisioning of user access
- Single Sign-On (SSO)
- Automated activity completion recording
This automated solution enables vendor content to be managed in the SF LMS and made available in catalogs as part of Programs or Curricula, and other entities, as well as being directly assigned to employees by admins or supervisors. Additionally, all data can be reported on in the same manner as traditional content in one easy-to-use reporting solution.
Who is in it?
The SAP Open Ecosystem is an easy way to provide content to customers from any content provider, has no cost to join, and enables the self-management of content with existing SAP SuccessFactors customers.
Partners that subscribe to our partner build program can also make their content available through the SAP App Store, further simplifying the process and speed to value for our collective customers.
1.1 Cross Domain Solution Files
Download the latest CDS files from SAP Software Downloads as mentioned in KBA 2750497
- The content.zip file contains static files that you copy to the content server. They load the progress tracking code wrap your content.
- The proxlet.war is a small Web ARchive (WAR) application that you deploy on your content server, typically in Tomcat. It is a communication relay between the tracking code and SAP SuccessFactors Learning.
1.2 Technical Requirements for the CDS
Please refer to 'Technical Requirements for the Cross Domain Solution (CDS)'.
2. Cross Domain Solution at Run Time
Users are not aware of the Cross Domain Solution (CDS) when they interact with it at runtime, but they are working with it to earn credit for their progress. This topic describes how they interact with the CDS.
When users click a link in their learning assignments to launch content, they open a new window that is served from the content server. The users see their content in a separate window and do not know about the wrapper.
Inside the wrapper window, users navigate the course, exam, or other content. This content is served from the content server.
While navigating the content, the user's progress is tracked with JSlet (JavaScript "applet") or a Java applet tracking code.
The proxlet.war application relays the user's progress to the LMS.
2.1 JSlet Tracking vs. Applet Tracking
Where possible, we recommend JSlet tracking over applet tracking. This topic describes why and how you can override that recommendation.
If you use an applet, then from time to time, you must patch your server when users update their Java Runtime Environment (JRE). You cannot control when users patch their JRE. When you use the JSlet, you are not affected by JRE updates.
Cloud customers whose users launch tracked content under the proxlet.war Cross Domain Solution (CDS) must use JSlet.
On-Premise customers whose users launch tracked content under the proxlet.war Cross Domain Solution (CDS) use JSlet by default. We recommend JSlet to avoid JRE update issues.
On-Premise customers whose users launch tracked content under the proxlet.war Cross Domain Solution (CDS) can switch to using Java applets. Go to System Administration > Configuration > System Configuration > LMS_ADMIN and change the useJsletInsteadApplet setting to false. This setting has no effect on on-demand customers.
3. Cross Domain Solution Configuration
Before you begin configuring the parts of the Cross Domain Solution (CDS), this topic provides an overview of the steps.
The proxlet.war implementation of the Cross Domain Solution (CDS) is configured in three parts:
- On the content server, extract and deploy the files from crossdomain.zip.
- On SuccessFactors, point the Learning Management System (LMS) to the content server.
- For each content object you want to use, enable the CDS.
3.1 Setting up the Cross Domain Solution on the Content Server
You set up the Cross Domain Solution (CDS) on the content server so that users can earn credit for their progression through the learning content served from the content server.
Prerequisites:
- Identify or create a web accessible directory in your content-hosting server to contain the content launch wrapper files. We recommend /content.
- Download the crossdomain.zip file.
- Identify your company's Learning URL.
- Identify the URL for the common super domain.
- Review the Technical Requirements for the Cross Domain Solution (CDS) information and ensure your content-hosting server meets the requirements.
Procedure:
- Extract content.zip from the crossdomain.zip file to a temporary folder. You will see two files in the temporary folder: content.zip and proxlet.war.
- Extract content.zip to the web-accessible directory. For the web-accessible directory, we recommend /content.
- Deploy proxlet.war on the content server according to the instructions for your application server or servlet container.
3.2 Configuring LMS_ADMIN for the Cross Domain Solution
You configure the LMS_ADMIN file to point the LMS to the content server where you deployed the Cross Domain Solution (CDS).
Prerequisites:
- You have set up the CDS on the content server.
Procedure:
- Log into Learning Administration >
- Go to System Administration > Configuration > System Configuration > LMS_ADMIN >
- Edit the communication CDS settings.
3.3 Communication Cross Domain Support Settings
Use these settings in LMS_ADMIN to configure Cross Domain Support (CDS) for the proxlet.war.
Configuration example:
communicationCrossDomainSupportEnabled=true
defaultContentServerPath=http://content.xyzcorp.com/content
contentWrapperPageName=main_content_wrapper.html
scorm2004ContentWrapperPageName=scorm_2004_content_wrapper.html
externalURLQuestionWrapperPageName=main_question_wrapper.html
contentOpenerPageName=main_content_opener.html
defaultProxletPath=http://content.xyzcorp.com:8080/proxlet
lmsSessionId=JSESSIONID
For additional details, please refer to 'Communication Cross Domain Support Settings'.
3.4 Enabling the Cross Domain Solution on Content Objects
Please refer to 'Enabling the Cross Domain Solution on Content Objects'
4. Cross Domain Solution Troubleshooting
Cross-domain issues are outside the scope of Customer Support. If a customer requests help to implement the Proxlet, this must go either through Professional Services or their Certified Partner.
For more information, please refer to 'Cross Domain Solution Troubleshooting'.
See Also
Keywords
learning, cross domain solution, CDS, customer, content, server, external, proxlet , KBA , LOD-SF-LMS-CNT , Content , LOD-SF-LMS-ITE , Items , LOD-SF-LMS-PCM , iContent , How To
SAP Knowledge Base Article - Public