Index: Release.java
===================================================================
--- Release.java	(revision 1663126)
+++ Release.java	(working copy)
@@ -72,7 +72,7 @@
      *  <p>
      *  If the build identifier is empty, it is not added.
      */
-    public static final String     BUILD         = "13";
+    public static final String     BUILD         = "14";
 
     /**
      *  This is the generic version string you should use when printing out the version.  It is of 
Index: auth/authorize/XMLGroupDatabase.java
===================================================================
--- auth/authorize/XMLGroupDatabase.java	(revision 1663126)
+++ auth/authorize/XMLGroupDatabase.java	(working copy)
@@ -39,6 +39,7 @@
 
 import org.apache.commons.lang.StringEscapeUtils;
 import org.apache.log4j.Logger;
+import org.apache.wiki.util.TextUtil;
 import org.w3c.dom.Document;
 import org.w3c.dom.Element;
 import org.w3c.dom.NodeList;
@@ -192,7 +193,7 @@
         }
 
         // Get database file location
-        String file = props.getProperty( PROP_DATABASE );
+        String file = TextUtil.getStringProperty(props, PROP_DATABASE , defaultFile.getAbsolutePath());
         if ( file == null )
         {
             log.warn( "XML group database property " + PROP_DATABASE + " not found; trying " + defaultFile );
Index: auth/user/XMLUserDatabase.java
===================================================================
--- auth/user/XMLUserDatabase.java	(revision 1663126)
+++ auth/user/XMLUserDatabase.java	(working copy)
@@ -45,6 +45,7 @@
 import org.apache.wiki.auth.WikiPrincipal;
 import org.apache.wiki.auth.WikiSecurityException;
 import org.apache.wiki.util.Serializer;
+import org.apache.wiki.util.TextUtil;
 import org.w3c.dom.Document;
 import org.w3c.dom.Element;
 import org.w3c.dom.Node;
@@ -282,7 +283,7 @@
         }
 
         // Get database file location
-        String file = props.getProperty( PROP_USERDATABASE );
+        String file = TextUtil.getStringProperty(props, PROP_USERDATABASE, defaultFile.getAbsolutePath());
         if( file == null )
         {
             log.warn( "XML user database property " + PROP_USERDATABASE + " not found; trying " + defaultFile  );
Index: util/TextUtil.java
===================================================================
--- util/TextUtil.java	(revision 1663126)
+++ util/TextUtil.java	(working copy)
@@ -355,7 +355,10 @@
      *  @return The property value as an integer (or defVal).
      */
     public static int getIntegerProperty( Properties props,  String key, int defVal ) {
-        String val = System.getProperties().getProperty( key, props.getProperty( key ) );
+        String val = System.getProperties().getProperty(key, System.getenv(key));
+        if (val == null) {
+            val = props.getProperty(key);
+        }
         return parseIntParameter( val, defVal );
     }
 
@@ -375,7 +378,10 @@
      *  @since 2.0.11
      */
     public static boolean getBooleanProperty( Properties props, String key, boolean defval ) {
-        String val = System.getProperties().getProperty( key, props.getProperty( key ) );
+        String val = System.getProperties().getProperty(key, System.getenv(key));
+        if (val == null) {
+            val = props.getProperty(key);
+        }
         if( val == null ) {
             return defval;
         }
@@ -394,11 +400,14 @@
      *  @return The property value.
      *  @since 2.1.151
      */
-    public static String getStringProperty( Properties props, String key, String defval ) {
-        String val = System.getProperties().getProperty( key, props.getProperty( key ) );
-        if( val == null ) {
-        	return defval;
+    public static String getStringProperty(Properties props, String key, String defval) {
+        String val = System.getProperties().getProperty(key, System.getenv(key));
+        if (val == null) {
+            val = props.getProperty(key);
         }
+        if (val == null) {
+            return defval;
+        }
         return val.trim();
     }
 
@@ -416,7 +425,10 @@
     public static String getCanonicalFilePathProperty(Properties props, String key, String defval) {
 
         String result;
-        String val = System.getProperties().getProperty( key, props.getProperty( key ) );
+        String val = System.getProperties().getProperty(key, System.getenv(key));
+        if (val == null) {
+            val = props.getProperty(key);
+        }
 
         if( val == null ) {
             val = defval;
