-
Bug
-
Resolution: Duplicate
-
P3
-
None
-
8
-
x86_64
-
windows_7
FULL PRODUCT VERSION :
java version "1.8.0"
Java(TM) SE Runtime Environment (build 1.8.0-b132)
Java HotSpot(TM) Client VM (build 25.0-b70, mixed mode, sharing)
Java(TM) Web Start 11.0.2.132-fcs
ADDITIONAL OS VERSION INFORMATION :
Windows 7 64 bit
Microsoft Windows [Version 6.1.7601]
A DESCRIPTION OF THE PROBLEM :
When using a PAC-Script for Proxy-Auto-Configuration Parsing the Scipt fails with the following Exception:
javax.script.ScriptException: TypeError: com.sun.deploy.net.proxy.SunAutoProxyHandler@c972aa has no such function "dnsResolve" in <eval> at line number 34
at jdk.nashorn.api.scripting.NashornScriptEngine.throwAsScriptException(NashornScriptEngine.java:564)
at jdk.nashorn.api.scripting.NashornScriptEngine.invokeImpl(NashornScriptEngine.java:514)
at jdk.nashorn.api.scripting.NashornScriptEngine.invokeFunction(NashornScriptEngine.java:229)
at com.sun.deploy.net.proxy.SunAutoProxyHandler.getProxyInfo(Unknown Source)
at com.sun.deploy.net.proxy.DynamicProxyManager.getProxyList(Unknown Source)
at com.sun.deploy.net.proxy.DeployProxySelector.select(Unknown Source)
at sun.net.www.protocol.http.HttpURLConnection.plainConnect0(HttpURLConnection.java:1097)
at sun.net.www.protocol.http.HttpURLConnection$6.run(HttpURLConnection.java:987)
at sun.net.www.protocol.http.HttpURLConnection$6.run(HttpURLConnection.java:985)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.AccessController.doPrivileged(AccessController.java:713)
at sun.net.www.protocol.http.HttpURLConnection.plainConnect(HttpURLConnection.java:984)
at sun.net.www.protocol.http.HttpURLConnection.connect(HttpURLConnection.java:931)
at sun.net.www.protocol.http.HttpURLConnection.getInputStream0(HttpURLConnection.java:1511)
at sun.net.www.protocol.http.HttpURLConnection.access$200(HttpURLConnection.java:90)
at sun.net.www.protocol.http.HttpURLConnection$9.run(HttpURLConnection.java:1431)
at sun.net.www.protocol.http.HttpURLConnection$9.run(HttpURLConnection.java:1429)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.AccessController.doPrivileged(AccessController.java:713)
at sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1428)
at gui.communication.HttpCommunicator.doGetRequest(HttpCommunicator.java:58)
at gui.communication.ZASConnection.login(ZASConnection.java:123)
at gui.communication.ZASCommunication.<init>(ZASCommunication.java:43)
at gui.mainpanels.Administration.main(Administration.java:191)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:483)
at com.sun.javaws.Launcher.executeApplication(Unknown Source)
at com.sun.javaws.Launcher.executeMainClass(Unknown Source)
at com.sun.javaws.Launcher.doLaunchApp(Unknown Source)
at com.sun.javaws.Launcher.run(Unknown Source)
at java.lang.Thread.run(Thread.java:744)
Caused by: <eval>:34 TypeError: com.sun.deploy.net.proxy.SunAutoProxyHandler@c972aa has no such function "dnsResolve"
at jdk.nashorn.internal.runtime.ECMAErrors.error(ECMAErrors.java:56)
at jdk.nashorn.internal.runtime.ECMAErrors.typeError(ECMAErrors.java:212)
at jdk.nashorn.internal.runtime.ECMAErrors.typeError(ECMAErrors.java:184)
at jdk.nashorn.internal.runtime.ECMAErrors.typeError(ECMAErrors.java:171)
at jdk.nashorn.internal.runtime.linker.NashornBottomLinker.linkBean(NashornBottomLinker.java:118)
at jdk.nashorn.internal.runtime.linker.NashornBottomLinker.getGuardedInvocation(NashornBottomLinker.java:73)
at jdk.internal.dynalink.support.CompositeGuardingDynamicLinker.getGuardedInvocation(CompositeGuardingDynamicLinker.java:124)
at jdk.internal.dynalink.support.LinkerServicesImpl.getGuardedInvocation(LinkerServicesImpl.java:144)
at jdk.internal.dynalink.DynamicLinker.relink(DynamicLinker.java:232)
at jdk.nashorn.internal.scripts.Script$\^eval\_.dnsResolve(<eval>:34)
at jdk.nashorn.internal.scripts.Script$\^eval\_.DnsResolve(<eval>:188)
at jdk.nashorn.internal.scripts.Script$\^eval\_$2.ImplementFindProxyForURL(<eval>:188)
at jdk.nashorn.internal.scripts.Script$\^eval\_.FindProxyForURL(<eval>:188)
at jdk.nashorn.internal.runtime.ScriptFunctionData.invoke(ScriptFunctionData.java:502)
at jdk.nashorn.internal.runtime.ScriptFunction.invoke(ScriptFunction.java:206)
at jdk.nashorn.internal.runtime.ScriptRuntime.apply(ScriptRuntime.java:378)
at jdk.nashorn.api.scripting.ScriptObjectMirror.callMember(ScriptObjectMirror.java:179)
at jdk.nashorn.api.scripting.NashornScriptEngine.invokeImpl(NashornScriptEngine.java:508)
... 31 more
and PROXY=DIRECT is used.
The Exception occurs always when using RMI and sometimes when using "normal" HTTP-Conenctions
REGRESSION. Last worked in version 7u51
STEPS TO FOLLOW TO REPRODUCE THE PROBLEM :
- Configure Java Web Start to use a Proxy Auto Detection Script.
- Start an application using RMI using Java Web Start.
EXPECTED VERSUS ACTUAL BEHAVIOR :
EXPECTED -
No Exception, Proxy is used according to script
ACTUAL -
Exception, PROXY=DIRECT
ERROR MESSAGES/STACK TRACES THAT OCCUR :
see above
REPRODUCIBILITY :
This bug can be reproduced always.
---------- BEGIN SOURCE ----------
Main-class:
package test;
import java.rmi.registry.LocateRegistry;
import java.rmi.registry.Registry;
import javax.swing.JOptionPane;
public class Main {
/**
* @param args
*/
public static void main(String[] args) throws Exception {
Registry reg = LocateRegistry.getRegistry("rmihost",1099);
String[] entries = reg.list();
JOptionPane.showMessageDialog(null,entries[0]);
}
}
_____________________________________
jnlp-file:
<?xml version="1.0" encoding="utf-8"?>
<jnlp spec="1.0+" codebase="file://localhost/H:/WebstartTest/signed">
<information>
<title>WebstartTest</title>
<vendor>just me</vendor>
</information>
<security>
<all-permissions/>
</security>
<resources>
<j2se version="1.8+" href="http://java.sun.com/products/autodl/j2se" max-heap-size="64m"/>
<jar href="WebstartTest-1.0.0-SNAPSHOT.jar" main="true" download="eager"/>
</resources>
<application-desc main-class="test.Main"/>
</jnlp>
---------- END SOURCE ----------
CUSTOMER SUBMITTED WORKAROUND :
Use manual Proxy-Configuration
java version "1.8.0"
Java(TM) SE Runtime Environment (build 1.8.0-b132)
Java HotSpot(TM) Client VM (build 25.0-b70, mixed mode, sharing)
Java(TM) Web Start 11.0.2.132-fcs
ADDITIONAL OS VERSION INFORMATION :
Windows 7 64 bit
Microsoft Windows [Version 6.1.7601]
A DESCRIPTION OF THE PROBLEM :
When using a PAC-Script for Proxy-Auto-Configuration Parsing the Scipt fails with the following Exception:
javax.script.ScriptException: TypeError: com.sun.deploy.net.proxy.SunAutoProxyHandler@c972aa has no such function "dnsResolve" in <eval> at line number 34
at jdk.nashorn.api.scripting.NashornScriptEngine.throwAsScriptException(NashornScriptEngine.java:564)
at jdk.nashorn.api.scripting.NashornScriptEngine.invokeImpl(NashornScriptEngine.java:514)
at jdk.nashorn.api.scripting.NashornScriptEngine.invokeFunction(NashornScriptEngine.java:229)
at com.sun.deploy.net.proxy.SunAutoProxyHandler.getProxyInfo(Unknown Source)
at com.sun.deploy.net.proxy.DynamicProxyManager.getProxyList(Unknown Source)
at com.sun.deploy.net.proxy.DeployProxySelector.select(Unknown Source)
at sun.net.www.protocol.http.HttpURLConnection.plainConnect0(HttpURLConnection.java:1097)
at sun.net.www.protocol.http.HttpURLConnection$6.run(HttpURLConnection.java:987)
at sun.net.www.protocol.http.HttpURLConnection$6.run(HttpURLConnection.java:985)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.AccessController.doPrivileged(AccessController.java:713)
at sun.net.www.protocol.http.HttpURLConnection.plainConnect(HttpURLConnection.java:984)
at sun.net.www.protocol.http.HttpURLConnection.connect(HttpURLConnection.java:931)
at sun.net.www.protocol.http.HttpURLConnection.getInputStream0(HttpURLConnection.java:1511)
at sun.net.www.protocol.http.HttpURLConnection.access$200(HttpURLConnection.java:90)
at sun.net.www.protocol.http.HttpURLConnection$9.run(HttpURLConnection.java:1431)
at sun.net.www.protocol.http.HttpURLConnection$9.run(HttpURLConnection.java:1429)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.AccessController.doPrivileged(AccessController.java:713)
at sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1428)
at gui.communication.HttpCommunicator.doGetRequest(HttpCommunicator.java:58)
at gui.communication.ZASConnection.login(ZASConnection.java:123)
at gui.communication.ZASCommunication.<init>(ZASCommunication.java:43)
at gui.mainpanels.Administration.main(Administration.java:191)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:483)
at com.sun.javaws.Launcher.executeApplication(Unknown Source)
at com.sun.javaws.Launcher.executeMainClass(Unknown Source)
at com.sun.javaws.Launcher.doLaunchApp(Unknown Source)
at com.sun.javaws.Launcher.run(Unknown Source)
at java.lang.Thread.run(Thread.java:744)
Caused by: <eval>:34 TypeError: com.sun.deploy.net.proxy.SunAutoProxyHandler@c972aa has no such function "dnsResolve"
at jdk.nashorn.internal.runtime.ECMAErrors.error(ECMAErrors.java:56)
at jdk.nashorn.internal.runtime.ECMAErrors.typeError(ECMAErrors.java:212)
at jdk.nashorn.internal.runtime.ECMAErrors.typeError(ECMAErrors.java:184)
at jdk.nashorn.internal.runtime.ECMAErrors.typeError(ECMAErrors.java:171)
at jdk.nashorn.internal.runtime.linker.NashornBottomLinker.linkBean(NashornBottomLinker.java:118)
at jdk.nashorn.internal.runtime.linker.NashornBottomLinker.getGuardedInvocation(NashornBottomLinker.java:73)
at jdk.internal.dynalink.support.CompositeGuardingDynamicLinker.getGuardedInvocation(CompositeGuardingDynamicLinker.java:124)
at jdk.internal.dynalink.support.LinkerServicesImpl.getGuardedInvocation(LinkerServicesImpl.java:144)
at jdk.internal.dynalink.DynamicLinker.relink(DynamicLinker.java:232)
at jdk.nashorn.internal.scripts.Script$\^eval\_.dnsResolve(<eval>:34)
at jdk.nashorn.internal.scripts.Script$\^eval\_.DnsResolve(<eval>:188)
at jdk.nashorn.internal.scripts.Script$\^eval\_$2.ImplementFindProxyForURL(<eval>:188)
at jdk.nashorn.internal.scripts.Script$\^eval\_.FindProxyForURL(<eval>:188)
at jdk.nashorn.internal.runtime.ScriptFunctionData.invoke(ScriptFunctionData.java:502)
at jdk.nashorn.internal.runtime.ScriptFunction.invoke(ScriptFunction.java:206)
at jdk.nashorn.internal.runtime.ScriptRuntime.apply(ScriptRuntime.java:378)
at jdk.nashorn.api.scripting.ScriptObjectMirror.callMember(ScriptObjectMirror.java:179)
at jdk.nashorn.api.scripting.NashornScriptEngine.invokeImpl(NashornScriptEngine.java:508)
... 31 more
and PROXY=DIRECT is used.
The Exception occurs always when using RMI and sometimes when using "normal" HTTP-Conenctions
REGRESSION. Last worked in version 7u51
STEPS TO FOLLOW TO REPRODUCE THE PROBLEM :
- Configure Java Web Start to use a Proxy Auto Detection Script.
- Start an application using RMI using Java Web Start.
EXPECTED VERSUS ACTUAL BEHAVIOR :
EXPECTED -
No Exception, Proxy is used according to script
ACTUAL -
Exception, PROXY=DIRECT
ERROR MESSAGES/STACK TRACES THAT OCCUR :
see above
REPRODUCIBILITY :
This bug can be reproduced always.
---------- BEGIN SOURCE ----------
Main-class:
package test;
import java.rmi.registry.LocateRegistry;
import java.rmi.registry.Registry;
import javax.swing.JOptionPane;
public class Main {
/**
* @param args
*/
public static void main(String[] args) throws Exception {
Registry reg = LocateRegistry.getRegistry("rmihost",1099);
String[] entries = reg.list();
JOptionPane.showMessageDialog(null,entries[0]);
}
}
_____________________________________
jnlp-file:
<?xml version="1.0" encoding="utf-8"?>
<jnlp spec="1.0+" codebase="file://localhost/H:/WebstartTest/signed">
<information>
<title>WebstartTest</title>
<vendor>just me</vendor>
</information>
<security>
<all-permissions/>
</security>
<resources>
<j2se version="1.8+" href="http://java.sun.com/products/autodl/j2se" max-heap-size="64m"/>
<jar href="WebstartTest-1.0.0-SNAPSHOT.jar" main="true" download="eager"/>
</resources>
<application-desc main-class="test.Main"/>
</jnlp>
---------- END SOURCE ----------
CUSTOMER SUBMITTED WORKAROUND :
Use manual Proxy-Configuration
- duplicates
-
JDK-8038986 Nashorn fails to evaluate autoconfig-script when used via JavaWS
-
- Resolved
-