[Yanel-commits] rev 44182 -
public/yanel/trunk/src/core/java/org/wyona/yanel/core/map
michi at wyona.com
michi at wyona.com
Thu Aug 13 16:45:56 CEST 2009
Author: michi
Date: 2009-08-13 16:45:56 +0200 (Thu, 13 Aug 2009)
New Revision: 44182
Modified:
public/yanel/trunk/src/core/java/org/wyona/yanel/core/map/RealmManager.java
public/yanel/trunk/src/core/java/org/wyona/yanel/core/map/RealmWithConfigurationExceptionImpl.java
Log:
handle exceptions during realm init more gracefully
Modified: public/yanel/trunk/src/core/java/org/wyona/yanel/core/map/RealmManager.java
===================================================================
--- public/yanel/trunk/src/core/java/org/wyona/yanel/core/map/RealmManager.java 2009-08-13 14:42:57 UTC (rev 44181)
+++ public/yanel/trunk/src/core/java/org/wyona/yanel/core/map/RealmManager.java 2009-08-13 14:45:56 UTC (rev 44182)
@@ -222,10 +222,10 @@
realmConfigFile = new File(realmConfigFile, REALM_DEFAULT_CONFIG_NAME);
}
+ Realm realm;
try {
- log.info("Reading realm config file for [" + realmId + "]: " + realmConfigFile);
+ log.info("Reading realm configuration file for [" + realmId + "]: " + realmConfigFile);
Configuration realmConfig = builder.buildFromFile(realmConfigFile);
- Realm realm;
try {
String customRealmImplClassName = realmConfig.getAttribute("class");
Class[] classArgs = new Class[]{String.class, String.class, String.class, File.class};
@@ -252,26 +252,26 @@
log.debug("Prefix value: " + prefixValue);
realm.setProxy(rpc.getHostName(), proxyPort, proxySSLPort, prefixValue);
}
-
- log.info("Realm: " + realm);
-
- hm.put(realmId, realm);
- if (rcc[i].isRoot()) {
- log.debug("Root realm found: " + realm.getID());
- if (rootRealm == null) {
- log.debug("Root realm set: " + realm.getID());
- rootRealm = realm;
- } else {
- log.error("Root realm has already been set: " + realmId);
- }
- }
} catch (Exception e) {
String errorMsg = "Error setting up realm [" + realmId + "]: " + realmConfigFile + ": " + e;
log.error(errorMsg, e);
// NOTE: Do not throw an exception, because otherwise all other realms are not being loaded either
- // TODO/TBD: Maybe one should enhance Realm by a method such as setStatus() and getStatus() in order to check if a realm has been registered successfully or not!
//throw new ConfigurationException(errorMsg, e);
+ realm = new RealmWithConfigurationExceptionImpl(realmId, realmId, mountPoint, realmConfigFile, e);
+ //realm = new RealmWithConfigurationExceptionImpl(rcc[i].getLabel(), realmId, mountPoint, realmConfigFile, e);
}
+
+ log.info("Realm: " + realm);
+ hm.put(realmId, realm);
+ if (rcc[i].isRoot()) {
+ log.debug("Root realm found: " + realm.getID());
+ if (rootRealm == null) {
+ log.debug("Root realm set: " + realm.getID());
+ rootRealm = realm;
+ } else {
+ log.error("Root realm has already been set: " + realmId);
+ }
+ }
}
} catch (Exception e) {
log.error(e.getMessage(), e);
Modified: public/yanel/trunk/src/core/java/org/wyona/yanel/core/map/RealmWithConfigurationExceptionImpl.java
===================================================================
--- public/yanel/trunk/src/core/java/org/wyona/yanel/core/map/RealmWithConfigurationExceptionImpl.java 2009-08-13 14:42:57 UTC (rev 44181)
+++ public/yanel/trunk/src/core/java/org/wyona/yanel/core/map/RealmWithConfigurationExceptionImpl.java 2009-08-13 14:45:56 UTC (rev 44182)
@@ -54,6 +54,11 @@
private String name;
private String id;
private String mountPoint;
+ private File configFile;
+ private Exception configurationException;
+
+
+
private String defaultLanguage;
private Repository repository;
private Repository rtiRepository;
@@ -63,7 +68,6 @@
private TranslationManager translationManager;
private LanguageHandler languageHandler;
private Sitetree repoNavigation;
- private File configFile;
private File rootDir;
private String[] languages;
private String i18nCatalogue;
@@ -82,6 +86,7 @@
this.id = id;
this.mountPoint = mountPoint;
this.configFile = configFile;
+ this.configurationException = configurationException;
}
/**
More information about the Yanel-commits
mailing list