The PropertyPlaceholderConfigurer currently only reads properties that have been exposed via the IResource abstraction and that subsequently are exposed via XML.
This is pretty rubbish. The mechanism for replacing placeholders should be distinct from the mechansim of loading the properties that are to be used in the the replacement process.
This way one could have properties being loaded from a database, a funky file format, a Java style .properties file format, etc.
This issue was occasioned by a post on the Spring.Java forums btw.