iPortal configuration file description
|
Feedback
|
SuperMap iPortal's main configuration information is located in WEB-INF ([SuperMap iPortal installation directory]\webapps\iportal\WEB-INF) directory, for more information about catalog description please refer to The catalog description after installation.
iPortal Configuration File Introduction
iPortal Configuration files include two parts: configuration files of portal functions and basic configuration files the same as used by iServer (For information about basic configuration files, see: Introduction to iServer configuration files ).
The former files show as the following table:
Configuration files of portal functions
File Name |
Description |
iportal.xml |
The main configuration information of the iPortal, including the configuration of the database and portal functions. |
iportal-monitor.xml |
Node monitoring configuration information, including configuring the database for storing monitoring data, and the iServer node information. For details, see: Monitoring Configuration. |
iportal-storage.xml
|
Configuring the storage for uploaded data. Details, see: Hosted Data Storage Configuration. |
iportal-ehcache.xml
|
The sharing settings of the cache of the proxied service access permission. The cache is saved locally by default, no need to configure. When you are configuring high availability structure for iPortal, see: How to share the cache of the proxied service access permission. |
iPortal configuration file structure
The root node <IportalConfig> of iportal.xml currently contains:
Before starting SuperMap iPortal service, it is recommended that you read the following configuration file instructions carefully so that you can configure your product according to your business needs.
1. <dataSourceConnectionPoolInfo>
Used to set the SuperMap iPortal database connection pool, the default sql configuration is SQLite database. It's recommended to use the MySQL/Oracle/PostgreSQL database.
- <dbType>: database type, characters need to be capitalized, such as SQLITE, MYSQL, ORACLE, POSTGRESQL.
- <driverClass>: The full name of database-driven class.
- <jdbcUrl>: connect to the driver url. For SQLite database path, if use relative path, it is relative to the iPortal home path; In addition, iPortal provides two language-version database file, iportal.db and iportal_en.db, you need to choose one according to the language of the contents of your portal. For MYSQL, the JDBC URL format is: jdbc: mysql: //[host: port]/[ database]? [parameter name 1]=[parameter value 1]&[parameter name 2]=[parameter value 2] .... The default port for MySQL: 3306, database is the database name, parameters are optional. Note that in xml configuration file, the "&" in the url need to be transformed into "&". While for Oracle, the JDBC URL format is: jdbc:oracle:thin:@[host:port]:[database]. The default port is 1521, and database refers to the name of the created database instance. For PostgreSQL, the JDBC URL is: jdbc:postgresql://[host:port]/[database]?[parameter name 1]=[value 1]&[parameter name 2]=[value 2]…. And the default port is 5432, database refers to the database name.
- <maxPoolSize>: The maximum number of active connections provided by the connection pool at the same time.
- <initialPoolSize>: The initialized connection pool size.
- <minPoolSize>: The number of minimum active connections provided by the connection pool at the same time.
- <maxIdleTime>: Maximum free time. If the connection is not been used over maxIdleTime seconds, it will be discarded. 0 means never discarded, the default value is 0.
- <maxWait>: The maximum milliseconds that database waits for when an exception occurs (when no connection is available).
- <username>: The username for SQLite can be empty. For MySQL, the initial administrator account is root. And a user who has the DBA authority is employed for the Oracle. While for PostgreSQL, the initial administrator account is postgres.
- <password>: The password for SQLite can be empty. While MySQL database does not have the initial password. For Oracle, it should use the password in the <username> configuration item. And for PostgreSQL, fill in the administrator password entered when the database is installed.
2. <uploadSetting>
- <userMaxCapacity>: The maximum data size limit that users can upload, unit:MB.
3. <serviceSetting>
- <showOffline>: Whether to show the offline services in Service Resource Center, defaults to false, means only the available services are listed. Offline services mean the original services are paused, or stopped, or deleted.
4. <serviceCheckSetting>
Used to set how often to detect the status of the original services, which has been registered in iPortal. If there are services changed, for example, paused, or stopped, or deleted, iPortal will synchromize the state of these services. Unit is in minutes.
- <singleCheckInterval>: Automatic detecting time for single registered services, defaults to 30 minutes.
- <batchCheckInterval>: Automatic detecting time for batch registration services, defaults to 60 minutes.
5. <serviceAuditSetting>
- <allowServiceAudit>: used to set whether to open the service audit function, the default value: false, do not open the service audit function.
- <auditedAttributes>: used to set the service attributes that need to be re-audited after being modified. Deaults to all, that is, if normal users modified an audited service, even if only one attribute, this service needs to be audited by the administrator before the modification takes effect. When configuring the attributes to be audited, remember they should be separated by the English ", ", such as: resTitle, thumbnail. The service attributes include: name (resTitle), description (idAbs), thumbnail, tags, reference system (refSysInfo), identifier (exDesc), extent (geoBndBox), and provider (mdContact).
6. <registerSetting>
- <allowRegister>: Whether to enable the function of registering users. Defaults to true, ie., open the user registration function.
- <allowUserAudit>: Whether to enable the audit function for registered users. Defaults to false, ie., disable this function.
- <sendEmailNotification>: Whether to enable mail notification to send audited results to registered users. Defaults to false, ie., disable the mail notification function.
- <extendUserFields>: Used to configure extended informations when registering a user, such as: department, email. Each information should be contained in a <field> node. One <field> node consists of two subnodes:
- <name>: The extended field name for filling in when registering users. Currently supports Department, Email.
- <required>: Marks whether this field name is required. true means required, false indicates optional.
- <defaultRole>: Used to set the default role for the new registered user. Default value: PORTAL_USER. Currently supports PORTAL_USER or PORTAL_VIEWER roles.
7. <shareSetting>
- <allowListUsers>: Whether to list all the users when sharing resources with specified users. Default: false, all users won't be listed. Note: When set to true, listing all users in iPortal is incompatible with listing users by department, ie., if you allow all users to be listed when sharing to specified users, listing according to different departments is disabled.
- <scope>: Used to configure the sharing scope for the resources in iPortal.
- <toUser>: Whether to configure the function of sharing with specified users. Defaults to true.
- <toGroup>: Whether to configure the function of sharing with specified group. Defaults to true.
- <toDepartment>: Whether to configure the function of sharing with specified department. Defaults to false.
8. <mapsSetting>
- <showBatchAddMaps>: Whether to display the Bulk Register Maps button on the Map Resource Center page. Default: true.
- <allowMapAudit>: Wwhether to open the map audit function, the default: false.
- <auditedAttributes>: used to set the map attributes that need to be re-audited after being modified. Deaults to all, that is, if normal users modified an audited map, even if only one attribute, this map needs to be audited by the administrator before the modification takes effect. When configuring the attributes to be audited, remember they should be separated by the English ", ", such as: title, description. The map attributes include: title, description, thumbnail, tags, central points and zoom level (geoAttr), and layers.
9. <serviceProxy>
Used to set whether the service registered in iPortal use a proxy. By default, the service proxy is disabled. It is recommended that you enable the service proxy.
If you do not enable the service proxy, the following conditions exist:
User A has registered a service and is shared with user B, where user B knows the service address. When user A has modified the sharing settings of the registered service, user B logs in to the iPortal and can not see the service information in the service list, but the fact that he knows the service address can not be changed, so user B can still access the Service, service information security is threatened.
After the service proxy is enabled, only the registrant of the service and administrators can see the original service address, the other users who have access to the service can only see the service address after the proxy, and the access control of the registration service is implemented at the portal level.
- <enable>: used to set whether to enable the service proxy, the default: false, do not enable the service proxy, and if you want to enable the service proxy, you can set it to true.
- <port>: used to set the port number of the proxy service address, default: 8195. You can also customize the port number, as long as you ensure that the port number you set is not occupied.
- <httpConnPoolInfo>: The connection pool settings for the proxy service that are used to set the HttpClient connection pool inside the proxy service. Adjust the node under the various settings, so as to enhance the concurrent performance of the proxy service.
- <maxTotal>: used to set the maximum number of connections. The default value is: 20.
- <defaultMaxPerRoute>: For a routing address, set up maximum number of several connections. The default value is: 2.
- <enableAccessStatistics>: used to set whether to open the proxy service access statistics, the default: false, do not open.
- <cacheConfig>: used to set the proxy service cache. iPortal offers two types of caching methods: Ehcache caching and Redis caching. The system uses Ehcache cache by default, so you can use it without any configuration.
- <enable>: used to set whether to enable the service proxy cache. The default value is true.
- <type>: used to set the cache type, the characters need capitalization, the default value: EHCACHE, meaning using Ehcache cache, you can also set to: REDIS, meaning using the Redis cache.
- <cacheServerConfig>: used to set configure cache server.
- <ehcacheConfigPath>: used to set the path of the Ehcache configuration file, which defaults to the iportal-ehache.xml configuration file of the Ehcache built into the iPortal system under the [SuperMap iPortal installation directory]\webapps\iportal\WEB-INFdirecotry. And you also can write your own independent cache configuration file.
The Redis cache configuration is provided by way of comments as follows:
- <nodes>: used to set the Redis server node. If Redis uses cluster, the nodes node supports to configure multiple " host:port" which need to be separated by "|".
- <timeout>: used to set Redis service connection timeout, in ms
- <password>: used to set the access password for the Redis service
- <maxTotal>: used to set the maximum number of the connections for Redis instances
- <maxIdle>: used to set the maximum number of idle Jedis instances of a Pool
- <maxWaitMillis>: used to set the maximum time to wait for available connection in ms, default: -1, meaning never expires
- <testOnBorrow>: used to determine wether to perform validate operation in advance when borrowing a Jedis instance, default is true, indicating that the borrowed Jedis instance is available.
Note:
- Among the type of registered services, SuperMap REST service, OGC service (WMS, WMTS, WFS, WCS, WPS), ArcGIS REST service support the service proxy, while the "other service" type does not support the service proxy.
- After you deactivate the proxy service, you need to restart the iPortal service before the settings take effect.
When configuring proxy service in the iportal.xml file, you need to set the value of the "Context path" of the iportal application to empty before starting iPortal to take it effect. After the service staring, you should access iPortal home with address: http: // <server>: <port>. For details, see:Configuring proxy service for registered services.
10. <customDirectorySetting>
Whether to enable the custom directory function. The default values for the map, service and scene are: false. You can set the value for map, service and scene resources respectively. For more information about custom directory configuration, see: Custom directory configuration.
11. <defaultInternetBuildinMapSetting>
- <googleMapsAPIKey>: used to set the Google Maps JavaScript API Key, you need to apply one from Google Developers.
12. <httpHeaderSetting> (Deprecated)
Used to set up domains that allow access to iPortal resources. From iPortal 9D(2019) and later versions, this item doesn't work any longer. iPortal supports all cross-domain access by default. If you need to limit the domains that can be accessed, modify the default "*" (which means support for all domain access) of the cors.allowed.origins in the %SuperMap iPortal_HOME%\webapp\iportal\WEB-INF\web.xml file to the specified accessible domains. If you want to carry cookies during cross-domain access, you also need to set the value of cors.support.credentials to true.
- <accessControlAllowOrigins>: set the allowed fields to preferentially match these fields, and if do not match the settings using defaultAccessControlAllowOrigin.
- <defaultAccessControlAllowOrigin>:By default, all domains are allowed, you can configure specific domains.
13. <departmentSetting>
- <enable>:Whether to enable the organizational structure function. Defaults to false. If you want to manage resources by departments, we recommend you enable organizational configuration function.
- <orderBy>: Used to set the sort field for the department in the organization. Default: CREATETIME, sorted by department creation time. You can also set by NAME (by department name), ORDERNUM (sorted by the department number).
- <orderType>: Sort in ascending or descending order. Default: ASC, ie., sort in ascending order. DESC is for descending order.
14. <mapApps>
Map App collection. Used to configure the Map App used in iPortal for making maps. Default value is mapViewer_v2, ie., using iPortal built-in V2 version (new version) mapping APP.
15. <groupSetting>
Configure to show or hide the function of group-related information displayed on the "My application" and "My authorization" pages. Default: true.
16.<portalCustomSetting>
Portal custom settings.
- <supportMultiLanguages>: Set multiple languages for the custom contents of iPortal, for example: custom directory. iPortal supports one language by default, but you can configure as follows to make your portal support multiple languages.
- <enable>: Whether to enable multi-language settings. Default: false. You need to set it to true to configure multi-languages.
- <languages>: Set the language to support, currently supports Chinese and English. Value range: zh, CN, en-US.
17.<mapViewerSetting>
Used to set the maximum allowed vector features to be added on Map when making maps with DataViz. Defaults to 3000.
19.<appsConfig>
Used to set the usage rights of the WebApps built into iPortal.
- <editableAppsLimitToAdmin>: The WebApps only can be accessed by the administrator.
- <PortalAppType>: The WebApp name. Currently only supports to configure DATAVIZ, DATAINSIGHTS, MAPSTYLER, EARTH, MAPDASHBOARD and APPBUILDER.
20.<proxyUriRuleConfig>
Used to configure the SSF defense for getURLResource resource.
- <includes>: Regular expression rules for URLs that are allowed to be accessed.
- <excludes>: Regular expression rules for URLs that are denied to be accessed.
- <lanConfig>: Local area network (LAN) configuration item.
- <whiteList>: IP whitelist, that is, the list of allowed IPs.
- <blackList>: IP blacklist, that is, the list of denied IPs.
- <denyProxySameDomain>: Whether to deny access to the same domain name as the proxy host. The default is false, allowing access from the same domain name.