diff --git a/karaf/shell/console/src/main/java/org/apache/felix/karaf/shell/console/jline/ConsoleFactory.java b/karaf/shell/console/src/main/java/org/apache/felix/karaf/shell/console/jline/ConsoleFactory.java
index 1a9d4ae..ff0a8df 100644
--- a/karaf/shell/console/src/main/java/org/apache/felix/karaf/shell/console/jline/ConsoleFactory.java
+++ b/karaf/shell/console/src/main/java/org/apache/felix/karaf/shell/console/jline/ConsoleFactory.java
@@ -38,7 +38,7 @@
     private BundleContext bundleContext;
     private CommandProcessor commandProcessor;
     private List<Completer> completers;
-    private Terminal terminal;
+    private TerminalFactory terminalFactory;
     private Console console;
     private boolean start;
 
@@ -60,8 +60,8 @@
         this.completers = completers;
     }
 
-    public void setTerminal(Terminal terminal) {
-        this.terminal = terminal;
+    public void setTerminalFactory(TerminalFactory terminalFactory) {
+        this.terminalFactory = terminalFactory;
     }
 
     public void setStart(boolean start) {
@@ -82,6 +82,7 @@
                     }
                 }
             };
+            Terminal terminal = terminalFactory.getTerminal();
             this.console = new Console(commandProcessor,
                                        in,
                                        wrap(out),
diff --git a/karaf/shell/console/src/main/java/org/apache/felix/karaf/shell/console/jline/TerminalFactory.java b/karaf/shell/console/src/main/java/org/apache/felix/karaf/shell/console/jline/TerminalFactory.java
index 20cac2c..585ca4d 100644
--- a/karaf/shell/console/src/main/java/org/apache/felix/karaf/shell/console/jline/TerminalFactory.java
+++ b/karaf/shell/console/src/main/java/org/apache/felix/karaf/shell/console/jline/TerminalFactory.java
@@ -27,14 +27,19 @@
 
     private Terminal term;
 
-    public Terminal getTerminal() throws Exception {
+    public synchronized Terminal getTerminal() throws Exception {
         if (term == null) {
             init();
         }
         return term;
     }
 
-    public synchronized void init() throws Exception {
+    public void init() throws Exception {
+        if ("jline.UnsupportedTerminal".equals(System.getProperty("jline.terminal"))) {
+            term = new UnsupportedTerminal();
+            return;
+        }
+        
         boolean windows = System.getProperty("os.name").toLowerCase().contains("windows");
         try {
             if (windows) {
@@ -54,8 +59,10 @@
     }
 
     public synchronized void destroy() throws Exception {
-        term.restoreTerminal();
-        term = null;
+        if (term != null) {
+            term.restoreTerminal();
+            term = null;
+        }
     }
 
 }
diff --git a/karaf/shell/console/src/main/resources/OSGI-INF/blueprint/karaf-console.xml b/karaf/shell/console/src/main/resources/OSGI-INF/blueprint/karaf-console.xml
index 93e6701..f0a7ee7 100644
--- a/karaf/shell/console/src/main/resources/OSGI-INF/blueprint/karaf-console.xml
+++ b/karaf/shell/console/src/main/resources/OSGI-INF/blueprint/karaf-console.xml
@@ -47,15 +47,10 @@
                 <ref component-id="commandCompleter"/>
             </list>
         </property>
-        <property name="terminal" ref="terminal"/>
+        <property name="terminalFactory" ref="terminalFactory"/>
     </bean>
 
-    <bean id="terminal"
-          factory-ref="terminalFactory"
-          factory-method="getTerminal"/>
-
     <bean id="terminalFactory" class="org.apache.felix.karaf.shell.console.jline.TerminalFactory"
-          init-method="init"
           destroy-method="destroy"/>
 
 
