diff options
author | Henri Sara <hesara@vaadin.com> | 2016-03-16 12:22:55 +0200 |
---|---|---|
committer | Henri Sara <hesara@vaadin.com> | 2016-03-16 14:44:53 +0200 |
commit | 3ea002e67fa0745080b844c8e29a6b55e8bac27b (patch) | |
tree | a311b6df77b78767eafef42ca2a420b99db36a72 | |
parent | aa2a9f7c6346357381db6f7f042ac54da382de00 (diff) | |
download | vaadin-framework-3ea002e67fa0745080b844c8e29a6b55e8bac27b.tar.gz vaadin-framework-3ea002e67fa0745080b844c8e29a6b55e8bac27b.zip |
Allow system properties to override app properties (#19683)
This enables e.g. overriding the productionMode setting on a server
with -DproductionMode=true.
This change also allows the use of system properties prefixed
with "vaadin." or the full package name of the actual servlet class.
Change-Id: I196ae71f9d88222f98fe360add3e7038914b79d6
-rw-r--r-- | WebContent/release-notes.html | 1 | ||||
-rw-r--r-- | server/src/com/vaadin/server/DefaultDeploymentConfiguration.java | 14 |
2 files changed, 11 insertions, 4 deletions
diff --git a/WebContent/release-notes.html b/WebContent/release-notes.html index fc1d69fd24..828aa193b9 100644 --- a/WebContent/release-notes.html +++ b/WebContent/release-notes.html @@ -144,6 +144,7 @@ @Inherited. The annotation is also looked up in extended interfaces for backwards compatibility.</li> <li>Server-side timings of request processing are only sent to the client when not in production mode. Using the timings in TestBench tests requires the server not to be in production mode.</li> + <li>System properties now override application parameters for settings such as production mode.</li> </ul> <h3 id="knownissues">Known Issues and Limitations</h3> <ul> diff --git a/server/src/com/vaadin/server/DefaultDeploymentConfiguration.java b/server/src/com/vaadin/server/DefaultDeploymentConfiguration.java index b26e048431..1f22a9e33d 100644 --- a/server/src/com/vaadin/server/DefaultDeploymentConfiguration.java +++ b/server/src/com/vaadin/server/DefaultDeploymentConfiguration.java @@ -125,14 +125,14 @@ public class DefaultDeploymentConfiguration extends String defaultValue) { String val = null; - // Try application properties - val = getApplicationProperty(propertyName); + // Try system properties + val = getSystemProperty(propertyName); if (val != null) { return val; } - // Try system properties - val = getSystemProperty(propertyName); + // Try application properties + val = getApplicationProperty(propertyName); if (val != null) { return val; } @@ -175,6 +175,12 @@ public class DefaultDeploymentConfiguration extends // Try lowercased system properties val = System.getProperty(pkgName + parameterName.toLowerCase()); + if (val != null) { + return val; + } + + // version prefixed with just "vaadin." + val = System.getProperty("vaadin." + parameterName); return val; } |