Configuring 3DDashboard Integration

This section describes how to ensure the good integration of Business Analytics Builder within the 3DDashboard.

This task shows you how to:

Configure the Reverse Proxy

The 3DDashboard needs to be able to communicate with the Business Analytics Builder back-end. As this involves secured and cross-domain communications, we recommend using a reverse proxy to address these requirements and, in addition, mask the actual location of Business Analytics Builder to end users.

The reverse proxy must be accessible by the 3DDashboard through an HTTPS endpoint. This means the 3DDashboard must trust the SSL certificate used by the reverse proxy.

For complete interoperability, Business Analytics Builder and the 3DDashboard must be both on the same virtual host.

Before you begin:

This procedure shows an example with the Apache httpd reverse proxy and uses the following variables:

  • BUSINESS_INTERNAL_URL : the Business Analytics Builder URL, including the port and /business-analytics . For example, http://business-analytics.my-company.com:10000/business-analytics

  • BUSINESS_EXTERNAL_URL : the Business Analytics Builder URL visible externally, including port, as defined by the reverse proxy configuration. For example, https://experience.my-domain.com:443/business-analytics

Note: When Business Analytics Builder is configured to be accessible from the 3DEXPERIENCE, you can still access stand-alone Business Analytics Builder in a browser at: <BUSINESS_EXTERNAL_URL> /page/index (make sure to include /index in the path).
  1. Open the reverse proxy configuration located at, for example, /usr/local/reverseproxy/conf/httpd.conf, accessible by root.
  2. Add the lines shown below to the <VirtualHost> tag that also contains the 3DDashboard reverse proxy configuration. Make sure to replace <BUSINESS_INTERNAL_URL> with the actual value.

    # Business Analytics Server 
      ProxyPass        /business-analytics <BUSINESS_INTERNAL_URL>
      ProxyPassReverse /business-analytics <BUSINESS_INTERNAL_URL>
    

    Example of the full virtual host configuration for a Windows installation (the 3DDashboard information comes from Install > 3DEXPERIENCE Platform > Installing 3DEXPERIENCE Platform Services for the First Time > Installing Services One-by-One > 3DDashboard > Configuring the Reverse Proxy):
    Listen 443 
    <VirtualHost *:443>
      SSLEngine on
      ProxyPreserveHost Off
      ServerAlias myserver
    
      # 3DDashboard:
      Include <3DDashboardInstallPath>\win_b64\templates\3DDashboard_httpd_fragment.conf
    
      # Business Analytics Server
      ProxyPass        /business-analytics <BUSINESS_INTERNAL_URL>
      ProxyPassReverse /business-analytics <BUSINESS_INTERNAL_URL>
    
      # Other services that may have been configured
    
      RequestHeader set x-forwarded-port "443"
      </VirtualHost>
  3. Restart the reverse proxy server (still root), using the command: /usr/local/reverseproxy/bin/httpd -k restart

Register Business Analytics Builder Service

The 3DDashboard relies on the "Compass Platform Services" API to retrieve the Business Analytics Builder backend URL. As such, the URL where Business Analytics Builder has been installed must be defined in the 3DCompass configuration. The 3DCompass uses an environment variable set in 3DSpace.

Context:

This procedure uses the following variable:

  • BUSINESS_EXTERNAL_URL : the Business Analytics Builder URL visible externally, including port, as defined by the reverse proxy configuration. For example, https://experience.my-domain.com:443/business-analytics

  1. Open the 3DSpace root installation directory (for example, /home/data/RTV/<DIR>/server/)
  2. Move to the /scripts directory.
  3. Edit all .sh files with names beginning with mxEnv. For example, edit mxEnvCAS.sh, mxEnvNotVerbose.sh and mxEnvVerbose.sh
  4. Add the following lines, replacing <BUSINESS_EXTERNAL_URL> with actual value:
    1. SelfServiceAnalytics_URL=<BUSINESS_EXTERNAL_URL>
    2. export SelfServiceAnalytics_URL
  5. Save files and restart the application server.