EducationSoftwareStrategy.com
StrategyCommunity

Knowledge Base

Product

Community

Knowledge Base

TopicsBrowse ArticlesDeveloper Zone

Product

Download SoftwareProduct DocumentationSecurity Hub

Education

Tutorial VideosSolution GalleryEducation courses

Community

GuidelinesGrandmastersEvents
x_social-icon_white.svglinkedin_social-icon_white.svg
Strategy logoCommunity

© Strategy Inc. All Rights Reserved.

LegalTerms of UsePrivacy Policy
  1. Home
  2. Topics

KB484767: The impact of JDK 11 on the MicroStrategy ONE 2021 certification of application servers


Muna Abdi Yussuf

Product Manager • Strategy


This article outlines how the adoption of JDK 11 on the MicroStrategy 2021 platform impacts compatibility with specific application servers.

Note: Starting with the release of Strategy ONE (March 2024), dossiers are also known as dashboards.
Strategy continues to be dedicated to providing our customers with the most trusted and secure enterprise analytics platform by leveraging the latest and most secure technologies with our suite of products for enhanced performance, stability, and security. In pursuit of this effort, Strategy added support for JDK 11, a long-term release that provides many exciting performance and security enhancements over JDK 8.

Why JDK 11?


The move to JDK 11 carries several security, performance, diagnostics, and productivity enhancements including:

  • Transport Layer Security (TLS) 13
  • Improvements for Docker containers
  • Multi-release jar files
  • Free low overhead Flight Recorder and Heap Profiler
  • Heap allocation on alternative memory devices
  • Free Application Class-Data Sharing feature
  • New ZGC and Epsilon garbage collectors

Implication of Transitioning to JDK 11 on Application Servers


As a result of the move from JDK 8 to JDK 11, the following Application Server versions will be removed from our certification matrix:

  • IBM WebSphere Application Server 9.0.x (Gold)
  • Oracle WebLogic Application Server 12cR2 (Gold)
  • Eclipse GlassFish Server 5.x (Silver)

Customers that are leveraging any of these Application Servers are advised to adopt our standard Application Server Apache Tomcat 9.0.x or upgrade to another JDK 11 compatible server listed in our Strategy 2021 certification matrix:

ka0PW0000001M89YAE_0EM4W000001K78I.jpeg

Apache Tomcat -- v9.0.x -- Platinum Certification
Apache Tomcat -- v8.5.x -- Gold Certification
JBoss EAP         -- v7.3    -- Gold Certification
Microsoft IIS      -- v10.x  -- Platinum Certification
 
For more information, see the Certifications Dossier on this page.

Why Apache Tomcat 9.0.x?


Apache Tomcat® is a widely adopted open-source Java Application Server and is being used by numerous organizations for supporting their large-scale, mission-critical web applications. Compared to other enterprise Application Servers, Tomcat is a lightweight, easy to configure, and cost-effective solution that is well-suited for Strategy web applications with its adequate level of Java EE functionality support and reduced complexity.
'Strategy web applications are rigorously tested with Tomcat to ensure that they meet the performance, security, and stability standards.
Strategy recommends the latest stable release of Tomcat 9 which includes several bug fixes, improved functionality and security enhancements.

Upgrading to AdoptOpenJDK11


If a customer is using Web ASP (IIS 10.x) or Web JSP (Tomcat 9.x) deployed by our Strategy Installer, the JDK upgrade will be completed during the installation process.
If the Application Server is self-deployed, please upgrade the JDK to AdoptOpenJDK11. Failure to do so will result in a HTTP Status 404 error when the user opens a Strategy Web page. After the JDK 11 upgrade, please enable JRE locale data on Tomcat 8.5.x / 9.0.x or JBoss EAP 7.3.x to have consistent data and number formatting with previous releases.

How to upgrade to AdoptOpen JDK 11 and set the JRE locale data

  1. Go to the AdoptOpenJDK download site .
  2. Choose OpenJDK 11 (TLS) version and HotSpot JVM and download the latest x64 JDK 11.
    Note: The example used in this article is jdk-11.0.8+10.
  3. Decompress the downloaded file. For example,
    C:\jdk-11.0.8+10\.
  4. Run command
    C:\jdk-11.0.8+10\bin\java -version
    . It should output the corresponding version number, for example, OpenJDK version "11.0.8."

For Windows OS


If the JDK path is

C:\jdk-11.0.8+10\

Tomcat 9.0.x/8.5.x on Windows

  1. Edit
    setenv.bat
    under Tomcat path
    /bin.

    Note: Create one if it does not currently exist.
  2. Add the below line in the file:
    
    set "JRE_HOME=C:\jdk-11.0.8+10\" 
    set "JAVA_OPTS=%JAVA_OPTS% -Djava.locale.providers=COMPAT,CLDR,SPI" 
    

  3. Restart Tomcat.

If Tomcat is run as Windows service

  • Run
    tomcat9w.exe
    (
    tomcat8w.exe
    for Tomcat8) under Tomcat path
    /bin.
  • Switch to the Java tab.
  • Change Java Virtual Machine to C:\jdk-11.0.8+10\bin\server\jvm.dll.
    Note: Please use
    jvm.dll
    underneath
    bin\server.

  • Prepend the following line in Java Options:
    
    -Djava.locale.providers=COMPAT,CLDR,SPI 
    

ka0PW0000001M89YAE_0EM4W000001K7A4.jpeg
  • Restart Tomcat service.

JBoss EAP 7.3.x on Windows

  1. Edit
    standalone.conf.bat
    under JBoss EAP path
    /bin.
  2. Add the below line in the file after
    :JAVA_OPTS_SET

    
    set "JAVA_HOME=C:\jdk-11.0.8+10" 
    set "JAVA_OPTS=%JAVA_OPTS% -Djava.locale.providers=COMPAT,CLDR,SPI" 

  3. Restart JBOSS EAP.

For Linx OS


If the JDK path is /java/jdk-11.0.8+10

Tomcat 9.0.x/8.5.x on Linux

  1. Edit
    setenv.sh
    under Tomcat path /
    bin
    .
    Note: Create one if it does not currently exist.
  2. Add the below line in the file:
    
    JRE_HOME=/java/jdk-11.0.8+10 
    JAVA_OPTS="$JAVA_OPTS -Djava.locale.providers=COMPAT,CLDR,SPI" 
    

  3. Restart Tomcat.

JBoss EAP 7.3 on Linux

  1. Edit
    standalone.conf 
    under JBoss EAP path
    /bin.
  2. Add the below line at the end of file:
    
    JAVA_HOME=/java/jdk-11.0.8+10 
    JAVA_OPTS="$JAVA_OPTS -Djava.locale.providers=COMPAT,CLDR,SPI" 
    

  3. Restart JBoss EAP.
    Note: For more information about JDK locale change, refer to JEP 252: Use CLDR Locale Data by Default.

    If the JRE data locale is not enabled correctly, Locale-sensitive functionality such as date, time, and number formatting may behave differently and the Web log at
    \WEB-INF\log\MSTRLogMMddyyyy_1.log
    will have the following log:
    
    <record reset="true"> 
    
      <package>com.Strategy.utils</package> 
    
      <level>SEVERE</level> 
    
      <miliseconds>1606833226190</miliseconds> 
    
      <timestamp>12/01/2020 22:33:46:192</timestamp> 
    
      <thread>0</thread> 
    
      <class>FormatUtils</class> 
    
      <method><clinit></method> 
    
      <message>JRE locale data is not currently used. Locale-sensitive functionality such as date, time, and number formatting may behave differently.</message> 
    
    </record> 

     

Note: To view the latest changes to the certifications scope and impending 3rd party upgrades in 2023, see KB485900.


Comment

0 comments

Details

Knowledge Article

Published:

December 16, 2020

Last Updated:

March 26, 2024