Details
-
Bug
-
Status: Closed
-
Minor
-
Resolution: Fixed
-
None
-
None
-
None
-
Windows XP SP2
c:\java\hre50\bin\java -version
svn = r530500, (Apr 20 2007), Windows/ia32/msvc 1310, release build
-
Unknown
Description
I am trying to see if OpenJNLP works with Harmony. OpenJNLP is a pretty old implementation of the JNLP protocol w/o security. I hacked OpenJNLP to recognize Windows XP and then try to load a jnlp app from the the web (http://www.eclipse.org/swt/jws/controlexample.jnlp in this case). It fails with
java.io.IOException: Bad Request
at org.nanode.jnlp.JNLPParser$URLJNLPParser.openInputStream(JNLPParser.java:491)
at org.nanode.jnlp.JNLPParser.parse(JNLPParser.java:119)
at org.nanode.jnlp.JNLPParser.parseDescriptor(JNLPParser.java:292)
at org.nanode.app.openjnlp.DefaultAppHandler.handleOpenURL(Unknown Source)
at org.nanode.app.OpenJNLP.main(Unknown Source)
Launching failed: http://www.eclipse.org/swt/jws/controlexample.jnlp
[It works with the Sun JVM].
Instrumenting the code shows that the following basic code is executed
URLConnection uc = srcURL.openConnection();
if (uc instanceof HttpURLConnection) {
HttpURLConnection huc = (HttpURLConnection) uc;
if (huc.getResponseCode() != HttpURLConnection.HTTP_OK)
}
getResponseCode() is returning error 400 and thus the app throws the exception. I noted that if I insert a call to huc.getHeaderFields() before the if that checks the response code, I will subsequently get a response 200 (HTTP_OK) and things proceed. It appears like there is some sort of race or deferral in populating the response codes here. Note that instead of calling huc.getHeaderFields(), I tried putting a 5 sec sleep in and it did NOT fix it. It doesn't look like it is a normal race.
Note that it works with the Sun VM without any mods at all.
Note that I am using a proxy server via -Dproxyset=true -DproxyHost=xxx -DproxyPort=yyy at the java command line.
Attachments
Attachments
Issue Links
- is related to
-
HARMONY-4775 [classlib][luni][eclipse] Eclipse fails to download updates
- Closed