Strings used to define settings in properties files do not fully expand for use in other files
GENERAL
TESTING
GENERAL
TESTING
Description
Previously, one could define settings in one *.properties files and be able to use those settingsin any other *.properties file. The most common example is to define passwords or other "sensitive" data in security.properties:
The definitions-- no matter which *.properties file they are in – were fully expanded to use the originally-defined values. This isn't the case anymore
The problem appears to specifically affect string expansion in "simple" configuration settings, but not in "bean-style" ones. To use the above example, this setting:
Previously, one could define settings in one *.properties files and be able to use those settingsin any other *.properties file. The most common example is to define passwords or other "sensitive" data in security.properties:
columbia_sakaidb_password=NOTAPASSWORD
columbia_otherdb_password=NOTADIFFERENTPASSWORD
and then use those definitions in other settings in sakai.properties:
password@javax.sql.BaseDataSource=${columbia_sakaidb_password}
db_pw=${columbia_otherdb_password}
The definitions-- no matter which *.properties file they are in – were fully expanded to use the originally-defined values. This isn't the case anymore
The problem appears to specifically affect string expansion in "simple" configuration settings, but not in "bean-style" ones. To use the above example, this setting:
password@javax.sql.BaseDataSource=${columbia_sakaidb_password}
fully expands to use the value of "${columbia_sakaidb_password}" while this setting:
db_pw=${columbia_prometheus_otherdb_password}
does NOT expand, leaving it with the string name as its value (i.e., "${columbia_otherdb_password}") instead of the actual value.