harmony-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Alexey Petrenko (JIRA)" <j...@apache.org>
Subject [jira] Commented: (HARMONY-3717) [classlib][luni] java.net.HttpURLConnection.getResponseCode() anomoly
Date Wed, 21 Nov 2007 06:37:43 GMT

    [ https://issues.apache.org/jira/browse/HARMONY-3717?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12544174
] 

Alexey Petrenko commented on HARMONY-3717:
------------------------------------------

Jimmy,

try -Dhttp.proxyHost=myproxy -Dhttp.proxyPort=80

> [classlib][luni] java.net.HttpURLConnection.getResponseCode() anomoly
> ---------------------------------------------------------------------
>
>                 Key: HARMONY-3717
>                 URL: https://issues.apache.org/jira/browse/HARMONY-3717
>             Project: Harmony
>          Issue Type: Bug
>          Components: App-Oriented Bug Reports, Classlib
>         Environment: Windows XP SP2
> c:\java\hre50\bin\java -version
> svn = r530500, (Apr 20 2007), Windows/ia32/msvc 1310, release build
>            Reporter: Chris Elford
>            Priority: Minor
>         Attachments: http.java
>
>
> 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) {
>          throw new IOException(huc.getResponseMessage());
>     }
> }
> 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.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


Mime
View raw message