[558902] Compilation failure in 3.17m1 instantiating StreamProxy
diff --git a/bundles/org.eclipse.wst.jsdt.debug.rhino.ui/META-INF/MANIFEST.MF b/bundles/org.eclipse.wst.jsdt.debug.rhino.ui/META-INF/MANIFEST.MF
index 27de30a..5325647 100644
--- a/bundles/org.eclipse.wst.jsdt.debug.rhino.ui/META-INF/MANIFEST.MF
+++ b/bundles/org.eclipse.wst.jsdt.debug.rhino.ui/META-INF/MANIFEST.MF
@@ -8,7 +8,7 @@
 Require-Bundle: org.eclipse.ui,
  org.eclipse.core.runtime,
  org.eclipse.jdt.launching,
- org.eclipse.debug.core,
+ org.eclipse.debug.core;bundle-version="[3.14.200,4.0.0]",
  org.eclipse.debug.ui,
  org.eclipse.wst.jsdt.core,
  org.eclipse.wst.jsdt.manipulation,
diff --git a/bundles/org.eclipse.wst.jsdt.debug.rhino.ui/pom.xml b/bundles/org.eclipse.wst.jsdt.debug.rhino.ui/pom.xml
index 092ebf4..c163210 100644
--- a/bundles/org.eclipse.wst.jsdt.debug.rhino.ui/pom.xml
+++ b/bundles/org.eclipse.wst.jsdt.debug.rhino.ui/pom.xml
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <!--
-  Copyright (c) 2012, 2014 Eclipse Foundation and others.
+  Copyright (c) 2012, 2020 Eclipse Foundation and others.
   All rights reserved. This program and the accompanying materials
   are made available under the terms of the Eclipse Distribution License v1.0
   which accompanies this distribution, and is available at
@@ -22,6 +22,6 @@
 
   <groupId>org.eclipse.webtools.jsdt.bundles</groupId>
   <artifactId>org.eclipse.wst.jsdt.debug.rhino.ui</artifactId>
-  <version>1.0.500-SNAPSHOT</version>
+  <version>1.0.600-SNAPSHOT</version>
   <packaging>eclipse-plugin</packaging>
 </project>
diff --git a/bundles/org.eclipse.wst.jsdt.debug.rhino.ui/src/org/eclipse/wst/jsdt/debug/internal/rhino/ui/launching/RhinoProcess.java b/bundles/org.eclipse.wst.jsdt.debug.rhino.ui/src/org/eclipse/wst/jsdt/debug/internal/rhino/ui/launching/RhinoProcess.java
index bd7c331..a3a2756 100644
--- a/bundles/org.eclipse.wst.jsdt.debug.rhino.ui/src/org/eclipse/wst/jsdt/debug/internal/rhino/ui/launching/RhinoProcess.java
+++ b/bundles/org.eclipse.wst.jsdt.debug.rhino.ui/src/org/eclipse/wst/jsdt/debug/internal/rhino/ui/launching/RhinoProcess.java
@@ -1,5 +1,5 @@
 /*******************************************************************************
- * Copyright (c) 2010 IBM Corporation and others.
+ * Copyright (c) 2010, 2020 IBM Corporation and others.
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v2.0
  * which accompanies this distribution, and is available at
@@ -10,6 +10,8 @@
  *******************************************************************************/
 package org.eclipse.wst.jsdt.debug.internal.rhino.ui.launching;
 
+import java.nio.charset.Charset;
+
 import org.eclipse.debug.core.DebugException;
 import org.eclipse.debug.core.DebugPlugin;
 import org.eclipse.debug.core.ILaunch;
@@ -17,6 +19,7 @@
 import org.eclipse.debug.core.model.IStreamsProxy;
 import org.eclipse.debug.internal.core.StreamsProxy;
 import org.eclipse.wst.jsdt.debug.internal.core.launching.JavaScriptProcess;
+import org.eclipse.wst.jsdt.debug.internal.rhino.ui.RhinoUIPlugin;
 import org.eclipse.wst.jsdt.debug.rhino.debugger.RhinoDebugger;
 
 /**
@@ -45,11 +48,30 @@
 		String capture = launch.getAttribute(DebugPlugin.ATTR_CAPTURE_OUTPUT);
 		boolean needsstreams = capture == null ? true : Boolean.valueOf(capture).booleanValue();
 		if(needsstreams) {
-			streamproxy = new StreamsProxy(p, launch.getAttribute(DebugPlugin.ATTR_CONSOLE_ENCODING));
+			streamproxy = new StreamsProxy(p, Charset.forName(launch.getAttribute(DebugPlugin.ATTR_CONSOLE_ENCODING)));
 		}
 		setAttribute(IProcess.ATTR_PROCESS_TYPE, TYPE);
 	}
 	
+	/**
+	 * Creates and returns the streams proxy associated with this process.
+	 *
+	 * @return streams proxy - based on org.eclipse.debug.core.model.RuntimeProcess.createStreamsProxy()
+	 */
+	protected IStreamsProxy createStreamsProxy() {
+		String encoding = getLaunch().getAttribute(DebugPlugin.ATTR_CONSOLE_ENCODING);
+		Charset charset = null;
+		if (encoding != null) {
+			try {
+				charset = Charset.forName(encoding);
+			} catch (Exception e) {
+				RhinoUIPlugin.log(e);
+				charset = Charset.defaultCharset();
+			}
+		}
+		return new StreamsProxy(process, charset);
+	}
+
 	/* (non-Javadoc)
 	 * @see org.eclipse.wst.jsdt.debug.internal.core.launching.JavaScriptProcess#terminate()
 	 */