You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@syncope.apache.org by "Francesco Chicchiriccò (JIRA)" <ji...@apache.org> on 2012/12/10 09:51:21 UTC

[jira] [Commented] (SYNCOPE-244) Make external property file usage possible

    [ https://issues.apache.org/jira/browse/SYNCOPE-244?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13527788#comment-13527788 ] 

Francesco Chicchiriccò commented on SYNCOPE-244:
------------------------------------------------

Instead of "user.home", why don't we look for a dedicated system property like as 'syncope.console.configuration'?
So, instead of

 <property name="location" value="file:#{(systemProperties['user.home'] + '/.configuration.properties')}"/> 

we would have

 <property name="location" value="file:#{(systemProperties['syncope.console.configuration'])}"/> 

The servlet container (Tomcat, for example) would then have to be started with -Dsyncope.console.configuration=/path/BLA/BLA/file.properties (-Dsyncope.console.configuration=/home/XXX/.configuration.properties in the example above).
                
> Make external property file usage possible
> ------------------------------------------
>
>                 Key: SYNCOPE-244
>                 URL: https://issues.apache.org/jira/browse/SYNCOPE-244
>             Project: Syncope
>          Issue Type: Improvement
>          Components: console
>    Affects Versions: 1.1.0
>            Reporter: Ernst Vorsteveld
>            Priority: Minor
>             Fix For: 1.1.0
>
>
> Syncope console has a property file named configuration.properties, that contains property values which are environment specific.
> Everytime Syncope is installed on some servlet container, I need to do a change property values in configuration.properties for the environment I am working on and do a build.
> I think that it is possible to move the configuration.properties out of the build, and configure the properties in a file per environment.
> We could do this by changing the console/src/main/resources/applicationContext.xml.
> Now the context file has for the configuration.properties file:
>  <bean id="propertyConfigurer"
>         class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
>     <property name="locations">
>       <list>
>         <value>classpath:configuration.properties</value>
>       </list>
>     </property>
>   </bean>
> If we change this and add another bean:
>     <bean id="propertyConfigurer2" class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
>         <property name="order" value="1"/>
>         <property name="location" value="file:#{(systemProperties['user.home'] + '/.configuration.properties')}"/>
>         <property name="ignoreResourceNotFound" value="true"/>
>         <property name="ignoreUnresolvablePlaceholders" value="true"/>
>     </bean>
> We only have to create a .configuration.properties file in the home directory of the user that runs the servlet container on which syncope is deployed. If the file is not found, it still the default configuration.properties file from within the war file is used.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira