You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@karaf.apache.org by hk...@apache.org on 2013/02/15 02:33:48 UTC
svn commit: r1446422 - in
/karaf/branches/karaf-2.3.x/main/src/main/java/org/apache/karaf/main:
BootstrapLogManager.java DefaultJDBCLock.java Main.java SimpleFileLock.java
Author: hkesler
Date: Fri Feb 15 01:33:47 2013
New Revision: 1446422
URL: http://svn.apache.org/r1446422
Log:
karaf-1748: added exception handling so that on startup, if the log file is unavailable or permission is denied, a user friendly message will be presented
Modified:
karaf/branches/karaf-2.3.x/main/src/main/java/org/apache/karaf/main/BootstrapLogManager.java
karaf/branches/karaf-2.3.x/main/src/main/java/org/apache/karaf/main/DefaultJDBCLock.java
karaf/branches/karaf-2.3.x/main/src/main/java/org/apache/karaf/main/Main.java
karaf/branches/karaf-2.3.x/main/src/main/java/org/apache/karaf/main/SimpleFileLock.java
Modified: karaf/branches/karaf-2.3.x/main/src/main/java/org/apache/karaf/main/BootstrapLogManager.java
URL: http://svn.apache.org/viewvc/karaf/branches/karaf-2.3.x/main/src/main/java/org/apache/karaf/main/BootstrapLogManager.java?rev=1446422&r1=1446421&r2=1446422&view=diff
==============================================================================
--- karaf/branches/karaf-2.3.x/main/src/main/java/org/apache/karaf/main/BootstrapLogManager.java (original)
+++ karaf/branches/karaf-2.3.x/main/src/main/java/org/apache/karaf/main/BootstrapLogManager.java Fri Feb 15 01:33:47 2013
@@ -40,7 +40,7 @@ public class BootstrapLogManager {
private static Properties configProps;
- public static synchronized Handler getDefaultHandler () {
+ public static synchronized Handler getDefaultHandler () throws Exception {
if (handler != null) {
return handler;
}
@@ -79,13 +79,8 @@ public class BootstrapLogManager {
}
- try {
- handler = new BootstrapLogManager.SimpleFileHandler(log);
- } catch (IOException e) {
- e.printStackTrace();
- }
+ return new BootstrapLogManager.SimpleFileHandler(log);
- return handler;
}
public static void setProperties(Properties configProps) {
Modified: karaf/branches/karaf-2.3.x/main/src/main/java/org/apache/karaf/main/DefaultJDBCLock.java
URL: http://svn.apache.org/viewvc/karaf/branches/karaf-2.3.x/main/src/main/java/org/apache/karaf/main/DefaultJDBCLock.java?rev=1446422&r1=1446421&r2=1446422&view=diff
==============================================================================
--- karaf/branches/karaf-2.3.x/main/src/main/java/org/apache/karaf/main/DefaultJDBCLock.java (original)
+++ karaf/branches/karaf-2.3.x/main/src/main/java/org/apache/karaf/main/DefaultJDBCLock.java Fri Feb 15 01:33:47 2013
@@ -61,8 +61,12 @@ public class DefaultJDBCLock implements
int timeout;
public DefaultJDBCLock(Properties props) {
- LOG.addHandler(BootstrapLogManager.getDefaultHandler());
-
+ try {
+ LOG.addHandler(BootstrapLogManager.getDefaultHandler());
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
+
this.url = props.getProperty(PROPERTY_LOCK_URL);
this.driver = props.getProperty(PROPERTY_LOCK_JDBC_DRIVER);
this.user = props.getProperty(PROPERTY_LOCK_JDBC_USER, DEFAULT_USER);
Modified: karaf/branches/karaf-2.3.x/main/src/main/java/org/apache/karaf/main/Main.java
URL: http://svn.apache.org/viewvc/karaf/branches/karaf-2.3.x/main/src/main/java/org/apache/karaf/main/Main.java?rev=1446422&r1=1446421&r2=1446422&view=diff
==============================================================================
--- karaf/branches/karaf-2.3.x/main/src/main/java/org/apache/karaf/main/Main.java (original)
+++ karaf/branches/karaf-2.3.x/main/src/main/java/org/apache/karaf/main/Main.java Fri Feb 15 01:33:47 2013
@@ -501,6 +501,10 @@ public class Main {
final Main main = new Main(args);
try {
main.launch();
+ } catch (IOException ioe){
+ main.destroy();
+ main.setExitCode(-1);
+ System.err.println("Karaf can't startup, make sure the log file can be accessed and written by the user starting Karaf : " + ioe.getMessage());
} catch (Throwable ex) {
main.destroy();
main.setExitCode(-1);
Modified: karaf/branches/karaf-2.3.x/main/src/main/java/org/apache/karaf/main/SimpleFileLock.java
URL: http://svn.apache.org/viewvc/karaf/branches/karaf-2.3.x/main/src/main/java/org/apache/karaf/main/SimpleFileLock.java?rev=1446422&r1=1446421&r2=1446422&view=diff
==============================================================================
--- karaf/branches/karaf-2.3.x/main/src/main/java/org/apache/karaf/main/SimpleFileLock.java (original)
+++ karaf/branches/karaf-2.3.x/main/src/main/java/org/apache/karaf/main/SimpleFileLock.java Fri Feb 15 01:33:47 2013
@@ -48,7 +48,9 @@ public class SimpleFileLock implements L
File base = new File(props.getProperty(PROPERTY_LOCK_DIR));
lockFile = new RandomAccessFile(new File(base, "lock"), "rw");
- } catch (IOException e) {
+ } catch (IOException ioe){
+ throw new RuntimeException("Karaf can't startup, make sure the log file can be accessed and written by the user starting Karaf : " + ioe.getMessage());
+ } catch (Exception e){
throw new RuntimeException("Could not create file lock", e);
}
}