Basic Web Application Settings

The PP.xml file is used to determine basic web application settings. This file may be located in two places:

NOTE. If the PP.xml file is located in the web application folder and at the BI server, BI server file settings have the higher priority than the same settings in the web application file.

Determining Web Application Settings

To determine basic web application settings, use the PP.xml file located in the web application. The file path depends on the type of the web server in use:

Where S - path to the folder with installed web application.

For example, for Windows:

Java (Apache Tomcat): C:\Tomcat\webapps\pp\config\PP.xml

ASP.NET (IIS/Apache): C:\Program Files\Foresight\Prognoz Platform 9 Web Application\Config\PP.xml

For Linux:

Java (Apache Tomcat): /var/lib/tomcat7/webapps/pp/config

Apache: /opt/foresight/pp9.0-dhtml/config

TIP. If web application settings are determined at the BI server, enter only the path to the BI server in the PP.xml file of the web application.

Determining Settings at BI Server

To determine basic web application settings at BI server, create the PP.xml file in the S\Services\PP.SOM.Som\, where S - a path to the folder with installed BI server.

Basic Settings

Settings specified in PP.xml can also be determined via fields of the PP.AppConfig static class. The PP.xml file must consist of the <pp> section that contains the following child elements given in the table.

Section Description Attributes
<service> BI server parameters.

url. BI server URL.

By default, the server URL is written by the web application installer:
http://<Server>[:<Port>][/<VirtualCatalog>]/axis2/services/PP.SOM.Som
Where:
  • <Server> - name or IP address of the server, at which BI server works.

  • <Port> - number of the port, which is used for work.

  • <VirtualCatalog> - virtual directory of BI server created by the installer.

NOTE. Name of the virtual directory can contain x64 postfix on computers with x64 platform.

If the url attribute is used in the <service> section, browser requests are executed directly, avoiding the web application back end.

timeout. Time, after which the request is executed on the front end (in milliseconds). If the attribute value is not specified or the value is 0 or less than 0, the default value will be used (90000 ms).

foreExec. It indicates whether Fore and Fore.NET macros can be executed using the ForeExec operation.

Available values:
  • true. Macros can be executed by the ForeExec operation.

  • false. Default value. Macros execution is not allowed.

NOTE. If the foreExec parameter is set to True, the ForeExec operation is prohibited by means of a special parameter in the request title. This parameter is not a secure method of prohibiting operation execution. It is recommended to use the Disallow parameter in registry settings or the Settings.xml file.

<proxy> BI server parameters url. BI server URL.
 
http://<Server>[:<Port>][/<VirtualCatalog>]/axis2/services/PP.SOM.Som  
Where:
  • <Server> - name or IP address of the server, at which BI server works.

  • <Port> - number of the port, which is used for work.

  • <VirtualCatalog> - BI server virtual directory created by installer.

If the url attribute is used in the <proxy> section, browser requests are executed via web application back end.

<metabase> Parameters of the repository in use. Id. Repository identifier from the list of installed repositories at the BI server, for which connection is established.
ping. Time, after which the system checks BI server connection (milliseconds).
recentObjects. Setting up view of last opened objects in the welcome screen. Available values:
  • true.  Default value. Objects are shown.

  • false. Objects are hidden.

authentication. Authorization method:
  • Login. Default value. Enter via login dialog box.

  • Domain. Login via the domain authentication.

  • IntegratedDomain. Login via the integrated domain authentication.

  • OAuth. Login via the OAuth protocol (Twitter).

  • SAML2. Login via the SAML2 protocol.

  • Guest. Guest login.

sessionCookie. Ability to reuse created repository sessions. Available values:
  • true. Default value. Reuse the session if it was created before. The following is required for reuse: correct login and password; a session must be at server; the existing session was created for the specified user only.

  • false. Do not reuse a session, always create a new one.

<shareSettings> Parameters of publishing data from the web application in various web services.
The section may contain one or several nested elements <shareItem>.
enabled. Indicates whether data can be published from the web application. Available values:
  • true. Publishing is available.

  • false. Publishing is not available.

<shareItem> Publishing data in various services is available.

name. Service name.

enabled. Indicates whether data can be published from the web application. Available values:

  • true. Publishing is available.

  • false. Publishing is not available.

<cultures> Available web application languages. The section may contain one or several embedded <culture> elements. Interface language is selected in the login dialog box.

Each <culture> subsection has the following attributes:

cultureName. Abbreviated language name. Available values:

  • ar. Arabic.

  • ar-AE. Arabic (United Arabian Emirates).

  • az. Azerbaijanian.

  • de. German.

  • en. English.

  • es. Spanish.

  • fr. French.

  • it. Italian.

  • kk. Kazakh.

  • pt. Portuguese.

  • ru. Russian.

  • uk. Ukrainian.

  • zh-CN. Chinese.

NOTE. Translation of the application into Azerbaijanian and Kazakh may be incomplete.

<chart> Parameter that determines general chart settings. animation. Determines whether animation is used on rendering a chart. Available values:
  • true. Animation is used.

  • false. Default value. Animation is not used.

enableCanvas. Determines whether the Zoom Category Axis checkbox is displayed on the side panel. Available values:
  • true. The checkbox is displayed.

  • false. Default value. The checkbox is not displayed.

<discussConfig> Settings of the Share drop-down menu.

enableResize. Determines whether the drop-down menu can be resized. Available values:

  • true. Size can be changed.

  • false. Size cannot be changed.

facebookItem. Settings of the Facebook menu item. Available attributes:

  • columnIndex/rowIndex. Index of the column or row that contains icon for menu item in the sprite.

  • data. Menu item name.

  • resourceKey. Resource key.

  • visible. Determines menu item's visibility (true - visible, false - invisible).

  • focusOnOpen. Determines whether menu item is focused on opening (true - focused, false - unfocused).

googlePlusItem. Settings of the GooglePlus menu item. Identical to facebookItem settings (see above).

items. Array of menu items.

linkedInItem. Settings of the LinkedIn menu item. Identical to facebookItem settings (see above).

liveJournalItem. Settings of the LiveJournal menu item. Identical to facebookItem settings (see above).

twitterItem. Settings of the LiveJournal menu item. Identical to facebookItem settings (see above).

<modules> Settings of web application units. It may include a subsection with settings of the Dashboard tool - <dashboard>. The <dashboard> subsection has the following attributes:
reportBox. Description of tool settings. Available attributes:
  • servicesPlugins. Indicates whether plugins can be used. Available values:

    • true. Plugins can be used.

    • false. Plugins cannot be used.

  • autoLayoutByDefault. Indicates whether objects can be placed automatically by default. Available values:

    • true. Objects are placed automatically by default.

    • false. Objects are placed manually by default.

  • biSearchEnabled. Indicates whether BI search is available. Available values:

    • true. BI search is available.

    • false. BI search is not available.

<oAuthService> OAuth service URL, via which authorization is executed (in case of Twitter authorization).

enabled. OAuth server authorization attribute:

  • true. Authorization is enabled.

  • false. Authorization is disabled.

<plugins> The section with definition of additional scripts connected as plugins. Contains one or several <plugin> subsections. Each <plugin> subsection has the following attributes:
  • name. Plugin name. Mandatory attribute.

  • path. Relative path where plugin script is located. It is recommended to place the file to the build folder of the installed web application. Mandatory attribute.

  • loaded. It determines whether plugin is loaded on startup. Available values:

    • true. Plugin is loaded on startup.

    • false. Plugin is loaded on request.

  • type. Map service type.

NOTE. The loaded and type attributes are used only for external map services plugins.

Available plugins:
  1. Plugin to connect custom chart templates. Values available for the name attribute:
  2. ChartTemplates. The ChartTemplates.js file with settings to connect custom templates.
  1. Plugins to connect external map services.
    To provide correct work, before defining plugins of external map services, it is required to determine common plugin to work with plugins. It is not required to determine the name and loaded attributes values for common plugin and the type attribute:
    name="ExternalMapPlugin" loaded="true"
    Then, select the required external map services. It is not required to determine the name and type attributes values for external map services and the loaded attribute:
      • Yandex Maps. name="YandexMapPlugin" type="PP.Yandex";

      • Bing Maps. name="BingMapPlugin" type="PP.Bing"

      • ArcGis Maps. name="ArcGisMapPlugin" type="PP.ArcGis"

      • OpenStreetMap Maps. "OpenStreetMapPlugin" type="PP.OpenStreetMap"

      • Google Maps. name="GoogleMapPlugin" type="PP.Google"

IMPORTANT. After plugins are connected, you get access to API of external map services. Make sure that you have permissions to use them. The FORESIGHT company does not give permissions to use external map services and is not responsible for violation of license policy by the user.

If external map service requires using the API key, then add the <params> subsection to the <plugin> section corresponding to the required service.
The <params> section is used to determine additional parameters and should contain the <param> subsection with attributes:

      • name. It should contain the APIKey value.

      • value. The API key value.

<samlUrl> SAML 2.0 protocol identification provider URL.  
<sourceTypes> Types of data sources available in the web application. items. Array of data sources that can be used in the web application.
<tabSheet> Table settings in the web application. enableNativeContextMenu. Determines whether browser context menu is available for table. Available values:
  • true. Browser context menu is available.

  • false. Browser context menu is not available (default).

enableSelection. Determines whether table cells can be selected manually. Available values:
  • true. Manual selection is available (default).

  • false. Manual selection is not available.

NOTE. Restart BI server and web server used by the web application for changes to take effect.

The example of the PP.xml file that is located in the web application folder:

<?xml version="1.0" encoding="utf-8" ?>

<pp>

<service url="http://localhost/PPBI_App_v9.0/axis2/services/PP.SOM.Som" timeout="120000" foreExec="true"/>

<metabase id="PPRepository" ping="120000" recentObjects="false" />

<shareSettings enabled="true">

<shareItem name="GooglePlus" enabled="false" />

</shareSettings>

<cultures>

<culture cultureName="ru" />

<culture cultureName="en" />

</cultures>

<publishMobile enabled="true" url="http://mobileserver.example.com/ppmobile_app_v9" />

<chart animation="true"/>

<modules>

<dashboard>

<reportBox servicesPlugins="true"/>

</dashboard>

<timeSeries enabled="true"/>

</modules>

<plugins>

<plugin name="ExternalMapPlugin" path="../build/ExternalMapPlugin.js" loaded="true"/>

<plugin name="YandexMapPlugin" path="../build/YandexMapPlugin.js" type="PP.Yandex"/>

<plugin name="ArcGisMapPlugin" path="../build/ArcGisMapPlugin.js" type="PP.ArcGis"/>

<plugin name="GoogleMapPlugin" path="../build/GoogleMapPlugin.js" type="PP.Google"/>

<params>

<param name="APIKey" value="AIzaSyCT36DH2CuXQ8GHtNSZASvoxQtbidhuWCU"/>

</params>

</plugins>

</pp>

See also:

Installing and Setting Up BI Server | Opening Web Application