liangrongjie commented on issue #1133: IllegalArgumentException at 
ConfigurationSpringInitializer#getProperties 
URL: 
https://github.com/apache/servicecomb-java-chassis/issues/1133#issuecomment-474232967
 
 
   explanation above issue:
    There are some placeholders that cannot be replaced during the startup 
phase.(eg:`jdbc:postgresql://${ip}:${port}/pt`, database  endpoint can only be 
obtained from the service center after service registration)  
   
   `ConfigurationSpringInitializer#setEnvironment(Environment)` will be invoked 
automatic (for `implements EnvironmentAware`) after bean 
created&Initialized,then call stack is as follows:
   ```java
   ConfigurationSpringInitializer#setEnvironment(...)
   ConfigurationSpringInitializer#getAllProperties(...)
   ConfigurationSpringInitializer#getProperties(...)
   AbstractEnvironment#getProperty(...)
   ......
   ```
   at `AbstractPropertyResolver#resolveNestedPlaceholders`  used 
`AbstractEnvironment#propertyResolver`(not ConfigurationSpringInitializer ) to  
resolve placeholder; although `ConfigurationSpringInitializer   extends 
PropertyPlaceholderConfigurer` & `ignoreUnresolvablePlaceholders=true` and can 
be used to replace placeholders and not throw exceptions

----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services

Reply via email to