diff options
-rw-r--r-- | container-disc/src/main/java/com/yahoo/container/jdisc/ConfiguredApplication.java | 14 | ||||
-rw-r--r-- | jdisc_core/src/main/java/com/yahoo/jdisc/core/BootstrapDaemon.java | 18 |
2 files changed, 19 insertions, 13 deletions
diff --git a/container-disc/src/main/java/com/yahoo/container/jdisc/ConfiguredApplication.java b/container-disc/src/main/java/com/yahoo/container/jdisc/ConfiguredApplication.java index 21820a95aa6..7dcbdfa251b 100644 --- a/container-disc/src/main/java/com/yahoo/container/jdisc/ConfiguredApplication.java +++ b/container-disc/src/main/java/com/yahoo/container/jdisc/ConfiguredApplication.java @@ -116,17 +116,13 @@ public final class ConfiguredApplication implements Application { @Override public void start() { - try { - ContainerDiscApplication.hackToInitializeServer(getConfig(QrConfig.class)); + ContainerDiscApplication.hackToInitializeServer(getConfig(QrConfig.class)); - ContainerBuilder builder = createBuilderWithGuiceBindings(); - configureComponents(builder.guiceModules().activate()); + ContainerBuilder builder = createBuilderWithGuiceBindings(); + configureComponents(builder.guiceModules().activate()); - intitializeAndActivateContainer(builder); - startReconfigurerThread(); - } catch (Exception e) { - com.yahoo.protect.Process.logAndDie("Failed starting container:", e); - } + intitializeAndActivateContainer(builder); + startReconfigurerThread(); } private <T extends ConfigInstance> T getConfig(Class<T> configClass) { diff --git a/jdisc_core/src/main/java/com/yahoo/jdisc/core/BootstrapDaemon.java b/jdisc_core/src/main/java/com/yahoo/jdisc/core/BootstrapDaemon.java index cc87abdd292..03110782d23 100644 --- a/jdisc_core/src/main/java/com/yahoo/jdisc/core/BootstrapDaemon.java +++ b/jdisc_core/src/main/java/com/yahoo/jdisc/core/BootstrapDaemon.java @@ -5,6 +5,7 @@ import org.apache.commons.daemon.Daemon; import org.apache.commons.daemon.DaemonContext; import java.util.Arrays; +import java.util.logging.Level; import java.util.logging.Logger; /** @@ -51,11 +52,20 @@ public class BootstrapDaemon implements Daemon { @Override public void start() throws Exception { - if (!privileged) { - log.finer("Initializing application without privileges."); - loader.init(bundleLocation, false); + try { + if (!privileged) { + log.finer("Initializing application without privileges."); + loader.init(bundleLocation, false); + } + loader.start(); + } catch (Exception e) { + try { + log.log(Level.SEVERE, "Failed starting container", e); + } + finally { + Runtime.getRuntime().halt(1); + } } - loader.start(); } @Override |