It is possible to specify resources external to a Cloud application that are accessed via a URL. Adelia first attempts to use the URL; if no URL has been specified, Adelia searches for the file in the execution context.
Configuration files
Configuration files specific to an Adelia Cloud application (files in WEB-INF/conf by default):
wagon.xml
URL file: url/adeliaWagonXmllog4j.lcf
URL file: url/adeliaLog4jConfigfontMapping.properties
URL file: url/adeliaFontMappingthemes.properties
URL file: url/adeliaThemeConfigehcache.xml
URL file: url/adeliaEhcachefontMapping.properties
URL file: url/adeliaFontMappingdesktop.properties
URL file: url/adeliaDesktopConfig- security.yml
URL : url/adeliaSecurityConfig
The following Adelia runtime configuration files, which by default are searched for in WEB-INF/classes, can also be managed as external resources:
CfgConfiguration.properties
URL file: url/adelia/CfgConfigurationMWCLIENT.INI file
Reference to the file or URL is made using the ID_FILE_CONFIG key of the CfgConfiguration.properties file:
ID_FILE_CONFIG = [URL]<reference resource name>; <real file name (full)>Example ID_FILE_CONFIG =[URL]url/myMwClient;MWCLIENT.INI
MWSERVER.INI file (for server parts generated locally or association with a *LOCAL physical server)
Reference to the file or URL is made by the ID_FILE_CONFIG_SRV key of the CfgConfiguration.properties file:
ID_FILE_CONFIG_SRV = [URL]<reference resource name>; <real file name (full)>apiva.properties file (for server parts generated locally or association with a *LOCAL physical server)
Reference to the file or URL is made by the ID_FILE_CONFIG_APIVA key of the CfgConfiguration.properties file:
ID_FILE_CONFIG_APIVA =[URL]url/apiva;apiva.propertiesCfgWebServices.xml file
Reference to the file or URL is made by the ID_FILE_CONFIG_WEBSERVICES key of the CfgConfiguration.properties file:
ID_FILE_CONFIG_WEBSERVICES=[URL]url/cfgwebservices;CfgWebServices.xmlThe Middleware session pool configuration files (print server associated with the *WEB_REPORT logic server)
URL: url/adelia/poolSession_<PoolName>
(where PoolName = Pool in the case of the Pool.properties file (pool by default))
Implementation
For Tomcat, a resource is defined by specifying the following <Resource> tag in the server.xml file or associated context XML file (conf/localhost/MyApp.xml):
<Context docBase="c:\MonAppliCloud" reloadable="false" allowCasualMultipartParsing="true">
...
<Resource auth="Container" name="url/adeliaWagonXml" factory="com.hardis.wagon.runtime.tools.URLFactory" type="java.net.URL" url="file:///c:/MonRepertoire/wagon.xlm" />
<Resource auth="Container" name="url/adelia/CfgConfiguration" factory="com.hardis.wagon.runtime.tools.URLFactory" type="java.net.URL" url="file:///c:/MonRepertoire/cfgConfiguration.properties" />
...
</Context>
Note: If you also externalize your ".properties" files containing application parameters, the VaToolBxJavaQueryValue function in the VaToolBx class takes into account resources defined as URLs.