Martin Grigorov created WICKET-5713:
---------------------------------------
Summary: Move /wicket.properties to /META-INF/wicket/xyz.properties
Key: WICKET-5713
URL: https://issues.apache.org/jira/browse/WICKET-5713
Project: Wicket
Issue Type: Improvement
Components: wicket
Affects Versions: 6.17.0
Reporter: Martin Grigorov
Assignee: Martin Grigorov
Priority: Minor
As found at http://markmail.org/message/gzychpjelr4eshly the current location
of wicket.properties (at the root of the classpath entry) is problematic when
an uberjar is used because usually the developer doesn't know how
org.apache.wicket.IInitializer works and doesn't add code to merge the contents
of all wicket.propeties files in the classpath into one.
But even if the developer tried to merge them then it will fail again because
org.apache.wicket.Application#load(Properties) doesn't expect more than one
value per key, e.g. separated by comma.
Garret Wilson suggested to move /wicket.properties files in /META-INF/wicket/
and use more qualified names, e.g. org.apache.wicket.core.properties.
The first problem is that there are no JRE and Servlet APIs to find such files
easily. We need to scan the classpath to be able to find them and load them.
Is this costly ?
https://github.com/ronmamo/reflections is wildly used library that provides
this functionality (and much more) and it is using the same logic and seems to
be quite fast!
So let's give it a try!
We should still support /wicket.properties for backward compatibility. We can
log a WARN message when such is found and suggest to be moved in
/META-INF/wicket/
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)