Connect to SAP SuccessFactors LMS Data in JRuby

Jerod Johnson
Jerod Johnson
Director, Technology Evangelism
Create a simple JRuby app with access to live SAP SuccessFactors LMS data.

JRuby is a high-performance, stable, fully threaded Java implementation of the Ruby programming language. The CData JDBC Driver for SAP SuccessFactors LMS makes it easy to integrate connectivity to live SAP SuccessFactors LMS data in JRuby. This article shows how to create a simple JRuby app that connects to SAP SuccessFactors LMS data, executes a query, and displays the results.

Configure a JDBC Connection to SAP SuccessFactors LMS Data

Before creating the app, note the installation location for the JAR file for the JDBC Driver (typically C:\Program Files\CData\CData JDBC Driver for SAP SuccessFactors LMS\lib).

JRuby natively supports JDBC, so you can easily connect to SAP SuccessFactors LMS and execute SQL queries. Initialize the JDBC connection with the getConnection function of the java.sql.DriverManager class.

SAP SuccessFactors LMS uses OAuth authentication. Before connecting, you must configure an OAuth application tied to your SAP SuccessFactors LMS account.

To establish a connection, set the following properties:

  • User: Your SAP SuccessFactors LMS username.
  • CompanyId: Your SAP SuccessFactors company identifier.
  • Url: The SAP SuccessFactors API URL (e.g., https://api4.successfactors.com).
  • OAuthClientId: The client Id assigned when you registered your custom OAuth application.
  • OAuthClientSecret: The client secret assigned when you registered your custom OAuth application.

See the Getting Started chapter of the help documentation for a guide to creating a custom OAuth app and using OAuth.

Built-in Connection String Designer

For assistance in constructing the JDBC URL, use the connection string designer built into the SAP SuccessFactors LMS JDBC Driver. Either double-click the JAR file or execute the jar file from the command-line.

java -jar cdata.jdbc.sapsuccessfactorslms.jar

Fill in the connection properties and copy the connection string to the clipboard.

Below is a typical JDBC connection string for SAP SuccessFactors LMS:

jdbc:sapsuccessfactorslms:User=username;CompanyId=CompanyId;Url=https://api4.successfactors.com;InitiateOAuth=GETANDREFRESH;

Create a JRuby App with Connectivity to SAP SuccessFactors LMS Data

Create a new Ruby file (for example: SAPSuccessFactorsLMSSelect.rb) and open it in a text editor. Copy the following code into your file:

require 'java'
require 'rubygems'
require 'C:/Program Files/CData/CData JDBC Driver for SAP SuccessFactors LMS 2018/lib/cdata.jdbc.sapsuccessfactorslms.jar'

url = "jdbc:sapsuccessfactorslms:User=username;CompanyId=CompanyId;Url=https://api4.successfactors.com;InitiateOAuth=GETANDREFRESH;"
conn = java.sql.DriverManager.getConnection(url)
stmt = conn.createStatement
rs = stmt.executeQuery("SELECT ItemID, ItemTitle FROM Items")
while (rs.next) do
  puts rs.getString(1) + ' ' + rs.getString(2)
end

With the file completed, you are ready to display your SAP SuccessFactors LMS data with JRuby. To do so, simply run your file from the command line:

jruby -S SAPSuccessFactorsLMSSelect.rb

Writing SQL-92 queries to SAP SuccessFactors LMS allows you to quickly and easily incorporate SAP SuccessFactors LMS data into your own JRuby applications. Download a free trial today!

Ready to get started?

Download a free trial of the SAP SuccessFactors LMS Driver to get started:

 Download Now

Learn more:

SAP SuccessFactors LMS Icon SAP SuccessFactors LMS JDBC Driver

Rapidly create and deploy powerful Java applications that integrate with SAP SuccessFactors LMS.