keycloak-uncached

Bugfix: Can not read keycloak-server.json if the path contains

12/16/2014 3:44:09 PM

Details

diff --git a/services/src/main/java/org/keycloak/services/resources/KeycloakApplication.java b/services/src/main/java/org/keycloak/services/resources/KeycloakApplication.java
index 3667912..89874e6 100755
--- a/services/src/main/java/org/keycloak/services/resources/KeycloakApplication.java
+++ b/services/src/main/java/org/keycloak/services/resources/KeycloakApplication.java
@@ -104,23 +104,24 @@ public class KeycloakApplication extends Application {
 
     public static void loadConfig() {
         try {
-            URL config = null;
+            JsonNode node = null;
 
             String configDir = System.getProperty("jboss.server.config.dir");
             if (configDir != null) {
                 File f = new File(configDir + File.separator + "keycloak-server.json");
                 if (f.isFile()) {
-                    config = f.toURI().toURL();
+                    log.info("Load config from " + f.getAbsolutePath());
+                    node = new ObjectMapper().readTree(f);
                 }
             }
 
-            if (config == null) {
-                config = Thread.currentThread().getContextClassLoader().getResource("META-INF/keycloak-server.json");
+            if (node == null) {
+                URL resource = Thread.currentThread().getContextClassLoader().getResource("META-INF/keycloak-server.json");
+                log.info("Load config from " + resource);
+                node = new ObjectMapper().readTree(resource);
             }
 
-            if (config != null) {
-                JsonNode node = new ObjectMapper().readTree(config);
-
+            if (node != null) {
                 Properties properties = new Properties();
                 properties.putAll(System.getProperties());
                 for(Map.Entry<String, String> e : System.getenv().entrySet()) {
@@ -129,7 +130,6 @@ public class KeycloakApplication extends Application {
 
                 Config.init(new JsonConfigProvider(node, properties));
 
-                log.info("Loaded config from " + config);
                 return;
             } else {
                 log.warn("Config 'keycloak-server.json' not found");