Re: [vfs] - Problem with httpclient
The original problem was using httpclient with vfs library. Now , I am almost sure that the problem is exclusively with httpclient, so you are right and I should move this item. On Mon, 2011-02-07 at 16:55 -0800, Ralph Goers wrote: The question I have is why this is flagged as vfs and isn't being asked on the httpclient mailing list? Ralph On Feb 7, 2011, at 8:12 AM, Ismael Marín Carrión wrote: Hi all, I would like to recall my question. Briefly, httpclient is not able to connect to a HTTP server, which has opened a GASS session, using a URI such as: http://localhost:8180/opt/mytext.txt , where /opt/mytext.txt is on /. However, using a web server or tomcat servlet container, httpclient has not problems. Tracking the code, in the generateRequestLine method of HttpMethodBase.java, it does not receives the correct path. protected static String generateRequestLine(HttpConnection connection, String name, String requestPath, String query, String version) Thus, for the GASS session , requestPath shows: HEAD / HTTP/1.1 , instead of HEAD /opt/mytext.txt HTTP/1.1 But, using a URI of tomcat, such as http://localhost:8080/index.jsp , it shows: HEAD /index.jsp HTTP/1.1 I hope it clarifies the problem. Any comment or suggestion is welcome. Regards. On Thu, 2011-02-03 at 17:27 +0100, Ismael Marín Carrión wrote: Dear Martin, thanks for your response. The GASS session does not uses the port 80 (and magno is a local domain). It opens a HTTP session such as $ globus-gass-server -i -p 8180 http://localhost:8180 and so, you can transfer files using the globus-url-copy (in a grid environment) or simply, using wget to a URI such as http://localhost:8180/out/test.txt, where /out/test.txt is on /, the file is downloaded. It seems rare since using a URI of a web server or tomcat servlet, this application has not problems. So, I guess that httpclient is not ready for this kind of HTTP services, no? By other hand, the application previously set the HostConfiguration, client.setHostConfiguration(config);. I am not the developer of this code, and so I unknown some details. Regards. On Thu, 2011-02-03 at 11:09 -0500, Martin Gainty wrote: ssh username@magno (or whatever the IP is assigned to magno in hosts file) netstat -ab | grep 80 //if you do not have HTTPServer running on 80 you will get no results //if you do have HTTPServer running on Port 80 you should see output //also if your HttpClient executeMethod is declared as public int executeMethod(HostConfiguration hostconfig, final HttpMethod method, final HttpState state) throws IOException, HttpException //you should call executeMethod with all of the params initialised e.g. try { int n=client.executeMethod(hostconfig,method,state) } catch(IOException ioe) { log.debug(Handle your IOException from client.executeMethod here); } catch(HttpException http_exception) { log.debug(Handle your HttpException from client.executeMethod here); } Saludos Cordiales, Martin Gainty __ Verzicht und Vertraulichkeitanmerkung/Note de déni et de confidentialité Diese Nachricht ist vertraulich. Sollten Sie nicht der vorgesehene Empfaenger sein, so bitten wir hoeflich um eine Mitteilung. Jede unbefugte Weiterleitung oder Fertigung einer Kopie ist unzulaessig. Diese Nachricht dient lediglich dem Austausch von Informationen und entfaltet keine rechtliche Bindungswirkung. Aufgrund der leichten Manipulierbarkeit von E-Mails koennen wir keine Haftung fuer den Inhalt uebernehmen. Ce message est confidentiel et peut être privilégié. Si vous n'êtes pas le destinataire prévu, nous te demandons avec bonté que pour satisfaire informez l'expéditeur. N'importe quelle diffusion non autorisée ou la copie de ceci est interdite. Ce message sert à l'information seulement et n'aura pas n'importe quel effet légalement obligatoire. Étant donné que les email peuvent facilement être sujets à la manipulation, nous ne pouvons accepter aucune responsabilité pour le contenu fourni. Date: Thu, 3 Feb 2011 16:20:33 +0100 From: i.ma...@fdi.ucm.es Subject: Re: [vfs] - Problem with httpclient To: user@commons.apache.org I would like to emphasize that the URI is given by a insecure Globus GASS session (the files are transfered using wget, so the session is ok). This code does not fail with other kind of URIs. Thus, are this kind of URIs valid for httpclient? Regards. On Wed, 2011-02-02 at 10:13 +0100, Ismael Marín Carrión wrote: Dear all, I am working in the development of a driver for a Grid system. In our tests, we are using GridSAM, which use the httpclient and commons-vfs. I am writing you to get some advise of how solving the next problem. GridSAM invokes httpclient classes from
RE: [vfs] - Problem with httpclient
Hi all, I would like to recall my question. Briefly, httpclient is not able to connect to a HTTP server, which has opened a GASS session, using a URI such as: http://localhost:8180/opt/mytext.txt , where /opt/mytext.txt is on /. However, using a web server or tomcat servlet container, httpclient has not problems. Tracking the code, in the generateRequestLine method of HttpMethodBase.java, it does not receives the correct path. protected static String generateRequestLine(HttpConnection connection, String name, String requestPath, String query, String version) Thus, for the GASS session , requestPath shows: HEAD / HTTP/1.1 , instead of HEAD /opt/mytext.txt HTTP/1.1 But, using a URI of tomcat, such as http://localhost:8080/index.jsp , it shows: HEAD /index.jsp HTTP/1.1 I hope it clarifies the problem. Any comment or suggestion is welcome. Regards. On Thu, 2011-02-03 at 17:27 +0100, Ismael Marín Carrión wrote: Dear Martin, thanks for your response. The GASS session does not uses the port 80 (and magno is a local domain). It opens a HTTP session such as $ globus-gass-server -i -p 8180 http://localhost:8180 and so, you can transfer files using the globus-url-copy (in a grid environment) or simply, using wget to a URI such as http://localhost:8180/out/test.txt, where /out/test.txt is on /, the file is downloaded. It seems rare since using a URI of a web server or tomcat servlet, this application has not problems. So, I guess that httpclient is not ready for this kind of HTTP services, no? By other hand, the application previously set the HostConfiguration, client.setHostConfiguration(config);. I am not the developer of this code, and so I unknown some details. Regards. On Thu, 2011-02-03 at 11:09 -0500, Martin Gainty wrote: ssh username@magno (or whatever the IP is assigned to magno in hosts file) netstat -ab | grep 80 //if you do not have HTTPServer running on 80 you will get no results //if you do have HTTPServer running on Port 80 you should see output //also if your HttpClient executeMethod is declared as public int executeMethod(HostConfiguration hostconfig, final HttpMethod method, final HttpState state) throws IOException, HttpException //you should call executeMethod with all of the params initialised e.g. try { int n=client.executeMethod(hostconfig,method,state) } catch(IOException ioe) { log.debug(Handle your IOException from client.executeMethod here); } catch(HttpException http_exception) { log.debug(Handle your HttpException from client.executeMethod here); } Saludos Cordiales, Martin Gainty __ Verzicht und Vertraulichkeitanmerkung/Note de déni et de confidentialité Diese Nachricht ist vertraulich. Sollten Sie nicht der vorgesehene Empfaenger sein, so bitten wir hoeflich um eine Mitteilung. Jede unbefugte Weiterleitung oder Fertigung einer Kopie ist unzulaessig. Diese Nachricht dient lediglich dem Austausch von Informationen und entfaltet keine rechtliche Bindungswirkung. Aufgrund der leichten Manipulierbarkeit von E-Mails koennen wir keine Haftung fuer den Inhalt uebernehmen. Ce message est confidentiel et peut être privilégié. Si vous n'êtes pas le destinataire prévu, nous te demandons avec bonté que pour satisfaire informez l'expéditeur. N'importe quelle diffusion non autorisée ou la copie de ceci est interdite. Ce message sert à l'information seulement et n'aura pas n'importe quel effet légalement obligatoire. Étant donné que les email peuvent facilement être sujets à la manipulation, nous ne pouvons accepter aucune responsabilité pour le contenu fourni. Date: Thu, 3 Feb 2011 16:20:33 +0100 From: i.ma...@fdi.ucm.es Subject: Re: [vfs] - Problem with httpclient To: user@commons.apache.org I would like to emphasize that the URI is given by a insecure Globus GASS session (the files are transfered using wget, so the session is ok). This code does not fail with other kind of URIs. Thus, are this kind of URIs valid for httpclient? Regards. On Wed, 2011-02-02 at 10:13 +0100, Ismael Marín Carrión wrote: Dear all, I am working in the development of a driver for a Grid system. In our tests, we are using GridSAM, which use the httpclient and commons-vfs. I am writing you to get some advise of how solving the next problem. GridSAM invokes httpclient classes from the HttpClientFactory class (org.apache.commons.vfs.provider.http), in the method createConnection(). public static HttpClient createConnection(HttpFileSystemConfigBuilder builder, String scheme, String hostname, int port, String username, String password, FileSystemOptions fileSystemOptions) throws
Re: [vfs] - Problem with httpclient
The question I have is why this is flagged as vfs and isn't being asked on the httpclient mailing list? Ralph On Feb 7, 2011, at 8:12 AM, Ismael Marín Carrión wrote: Hi all, I would like to recall my question. Briefly, httpclient is not able to connect to a HTTP server, which has opened a GASS session, using a URI such as: http://localhost:8180/opt/mytext.txt , where /opt/mytext.txt is on /. However, using a web server or tomcat servlet container, httpclient has not problems. Tracking the code, in the generateRequestLine method of HttpMethodBase.java, it does not receives the correct path. protected static String generateRequestLine(HttpConnection connection, String name, String requestPath, String query, String version) Thus, for the GASS session , requestPath shows: HEAD / HTTP/1.1 , instead of HEAD /opt/mytext.txt HTTP/1.1 But, using a URI of tomcat, such as http://localhost:8080/index.jsp , it shows: HEAD /index.jsp HTTP/1.1 I hope it clarifies the problem. Any comment or suggestion is welcome. Regards. On Thu, 2011-02-03 at 17:27 +0100, Ismael Marín Carrión wrote: Dear Martin, thanks for your response. The GASS session does not uses the port 80 (and magno is a local domain). It opens a HTTP session such as $ globus-gass-server -i -p 8180 http://localhost:8180 and so, you can transfer files using the globus-url-copy (in a grid environment) or simply, using wget to a URI such as http://localhost:8180/out/test.txt, where /out/test.txt is on /, the file is downloaded. It seems rare since using a URI of a web server or tomcat servlet, this application has not problems. So, I guess that httpclient is not ready for this kind of HTTP services, no? By other hand, the application previously set the HostConfiguration, client.setHostConfiguration(config);. I am not the developer of this code, and so I unknown some details. Regards. On Thu, 2011-02-03 at 11:09 -0500, Martin Gainty wrote: ssh username@magno (or whatever the IP is assigned to magno in hosts file) netstat -ab | grep 80 //if you do not have HTTPServer running on 80 you will get no results //if you do have HTTPServer running on Port 80 you should see output //also if your HttpClient executeMethod is declared as public int executeMethod(HostConfiguration hostconfig, final HttpMethod method, final HttpState state) throws IOException, HttpException //you should call executeMethod with all of the params initialised e.g. try { int n=client.executeMethod(hostconfig,method,state) } catch(IOException ioe) { log.debug(Handle your IOException from client.executeMethod here); } catch(HttpException http_exception) { log.debug(Handle your HttpException from client.executeMethod here); } Saludos Cordiales, Martin Gainty __ Verzicht und Vertraulichkeitanmerkung/Note de déni et de confidentialité Diese Nachricht ist vertraulich. Sollten Sie nicht der vorgesehene Empfaenger sein, so bitten wir hoeflich um eine Mitteilung. Jede unbefugte Weiterleitung oder Fertigung einer Kopie ist unzulaessig. Diese Nachricht dient lediglich dem Austausch von Informationen und entfaltet keine rechtliche Bindungswirkung. Aufgrund der leichten Manipulierbarkeit von E-Mails koennen wir keine Haftung fuer den Inhalt uebernehmen. Ce message est confidentiel et peut être privilégié. Si vous n'êtes pas le destinataire prévu, nous te demandons avec bonté que pour satisfaire informez l'expéditeur. N'importe quelle diffusion non autorisée ou la copie de ceci est interdite. Ce message sert à l'information seulement et n'aura pas n'importe quel effet légalement obligatoire. Étant donné que les email peuvent facilement être sujets à la manipulation, nous ne pouvons accepter aucune responsabilité pour le contenu fourni. Date: Thu, 3 Feb 2011 16:20:33 +0100 From: i.ma...@fdi.ucm.es Subject: Re: [vfs] - Problem with httpclient To: user@commons.apache.org I would like to emphasize that the URI is given by a insecure Globus GASS session (the files are transfered using wget, so the session is ok). This code does not fail with other kind of URIs. Thus, are this kind of URIs valid for httpclient? Regards. On Wed, 2011-02-02 at 10:13 +0100, Ismael Marín Carrión wrote: Dear all, I am working in the development of a driver for a Grid system. In our tests, we are using GridSAM, which use the httpclient and commons-vfs. I am writing you to get some advise of how solving the next problem. GridSAM invokes httpclient classes from the HttpClientFactory class (org.apache.commons.vfs.provider.http), in the method createConnection(). public static HttpClient createConnection(HttpFileSystemConfigBuilder builder, String scheme, String hostname, int port, String username, String password
Re: [vfs] - Problem with httpclient
I would like to emphasize that the URI is given by a insecure Globus GASS session (the files are transfered using wget, so the session is ok). This code does not fail with other kind of URIs. Thus, are this kind of URIs valid for httpclient? Regards. On Wed, 2011-02-02 at 10:13 +0100, Ismael Marín Carrión wrote: Dear all, I am working in the development of a driver for a Grid system. In our tests, we are using GridSAM, which use the httpclient and commons-vfs. I am writing you to get some advise of how solving the next problem. GridSAM invokes httpclient classes from the HttpClientFactory class (org.apache.commons.vfs.provider.http), in the method createConnection(). public static HttpClient createConnection(HttpFileSystemConfigBuilder builder, String scheme, String hostname, int port, String username, String password, FileSystemOptions fileSystemOptions) throws FileSystemException { client.executeMethod(new HeadMethod()); } I am not using any authentication mechanism, and so username and passwd are null, but hostname, port and scheme has the proper values. Thus, in executeMethod() method of the HttpClient class: public int executeMethod(HostConfiguration hostconfig, final HttpMethod method, final HttpState state) throws IOException, HttpException { HostConfiguration defaulthostconfig = getHostConfiguration(); if (hostconfig == null) { hostconfig = defaulthostconfig; } URI uri = method.getURI(); } I received a null value for uri, while the hostconfig object has values for host attribute, but not for localAddress attribute or any other. Later it causes a NoHttpResponseException. The complete stack is: 2011-02-01 17:11:49,050 ERROR [TransferAgentFactory] source URI is not resolvable org.apache.commons.vfs.FileSystemException: Could not connect to HTTP server on magno. at org.apache.commons.vfs.provider.http.HttpClientFactory.createConnection(HttpClientFactory.java:186) at org.apache.commons.vfs.provider.http.HttpClientFactory.createConnection(HttpClientFactory.java:53) at org.apache.commons.vfs.provider.http.HttpFileProvider.doCreateFileSystem(HttpFileProvider.java:97) at org.apache.commons.vfs.provider.AbstractOriginatingFileProvider.getFileSystem(AbstractOriginatingFileProvider.java:103) at org.apache.commons.vfs.provider.AbstractOriginatingFileProvider.findFile(AbstractOriginatingFileProvider.java:82) at org.apache.commons.vfs.provider.AbstractOriginatingFileProvider.findFile(AbstractOriginatingFileProvider.java:66) at org.apache.commons.vfs.impl.DefaultFileSystemManager.resolveFile(DefaultFileSystemManager.java:706) at org.apache.commons.vfs.impl.DefaultFileSystemManager.resolveFile(DefaultFileSystemManager.java:623) at org.icenigrid.gridsam.core.plugin.transfer.protocol.AbstractTransferAgent.getFileObject(AbstractTransferAgent.java:239) at org.icenigrid.gridsam.core.plugin.transfer.protocol.TransferAgentFactory.resolveSourceFile(TransferAgentFactory.java:168) at org.icenigrid.gridsam.core.plugin.transfer.protocol.TransferAgentFactory.init(TransferAgentFactory.java:120) at org.icenigrid.gridsam.core.plugin.transfer.provider.AFTFileTransferJob.execute(AFTFileTransferJob.java:131) at org.quartz.core.JobRunShell.run(JobRunShell.java:202) at org.quartz.simpl.SimpleThreadPool $WorkerThread.run(SimpleThreadPool.java:525) Caused by: org.apache.commons.httpclient.NoHttpResponseException: The server magno failed to respond at org.apache.commons.httpclient.HttpMethodBase.readStatusLine(Unknown Source) at org.apache.commons.httpclient.HttpMethodBase.readResponse(Unknown Source) at org.apache.commons.httpclient.HttpMethodBase.execute(Unknown Source) at org.apache.commons.httpclient.HttpMethodDirector.executeWithRetry(Unknown Source) at org.apache.commons.httpclient.HttpMethodDirector.executeMethod(Unknown Source) at org.apache.commons.httpclient.HttpClient.executeMethod(Unknown Source) at org.apache.commons.httpclient.HttpClient.executeMethod(Unknown Source) at org.apache.commons.vfs.provider.http.HttpClientFactory.createConnection(HttpClientFactory.java:182) ... 13 more Maybe, the line numbers are not exactly correct since I have been some minor changes. The version of httpclient is 3.0.1 and vfs is 2.1. I am very pleased of any help or advise. Best regards. - To unsubscribe, e-mail: user-unsubscr...@commons.apache.org For additional commands, e-mail: user-h...@commons.apache.org
RE: [vfs] - Problem with httpclient
ssh username@magno (or whatever the IP is assigned to magno in hosts file) netstat -ab | grep 80 //if you do not have HTTPServer running on 80 you will get no results //if you do have HTTPServer running on Port 80 you should see output //also if your HttpClient executeMethod is declared as public int executeMethod(HostConfiguration hostconfig, final HttpMethod method, final HttpState state) throws IOException, HttpException //you should call executeMethod with all of the params initialised e.g. try { int n=client.executeMethod(hostconfig,method,state) } catch(IOException ioe) { log.debug(Handle your IOException from client.executeMethod here); } catch(HttpException http_exception) { log.debug(Handle your HttpException from client.executeMethod here); } Saludos Cordiales, Martin Gainty __ Verzicht und Vertraulichkeitanmerkung/Note de déni et de confidentialité Diese Nachricht ist vertraulich. Sollten Sie nicht der vorgesehene Empfaenger sein, so bitten wir hoeflich um eine Mitteilung. Jede unbefugte Weiterleitung oder Fertigung einer Kopie ist unzulaessig. Diese Nachricht dient lediglich dem Austausch von Informationen und entfaltet keine rechtliche Bindungswirkung. Aufgrund der leichten Manipulierbarkeit von E-Mails koennen wir keine Haftung fuer den Inhalt uebernehmen. Ce message est confidentiel et peut être privilégié. Si vous n'êtes pas le destinataire prévu, nous te demandons avec bonté que pour satisfaire informez l'expéditeur. N'importe quelle diffusion non autorisée ou la copie de ceci est interdite. Ce message sert à l'information seulement et n'aura pas n'importe quel effet légalement obligatoire. Étant donné que les email peuvent facilement être sujets à la manipulation, nous ne pouvons accepter aucune responsabilité pour le contenu fourni. Date: Thu, 3 Feb 2011 16:20:33 +0100 From: i.ma...@fdi.ucm.es Subject: Re: [vfs] - Problem with httpclient To: user@commons.apache.org I would like to emphasize that the URI is given by a insecure Globus GASS session (the files are transfered using wget, so the session is ok). This code does not fail with other kind of URIs. Thus, are this kind of URIs valid for httpclient? Regards. On Wed, 2011-02-02 at 10:13 +0100, Ismael Marín Carrión wrote: Dear all, I am working in the development of a driver for a Grid system. In our tests, we are using GridSAM, which use the httpclient and commons-vfs. I am writing you to get some advise of how solving the next problem. GridSAM invokes httpclient classes from the HttpClientFactory class (org.apache.commons.vfs.provider.http), in the method createConnection(). public static HttpClient createConnection(HttpFileSystemConfigBuilder builder, String scheme, String hostname, int port, String username, String password, FileSystemOptions fileSystemOptions) throws FileSystemException { client.executeMethod(new HeadMethod()); } I am not using any authentication mechanism, and so username and passwd are null, but hostname, port and scheme has the proper values. Thus, in executeMethod() method of the HttpClient class: public int executeMethod(HostConfiguration hostconfig, final HttpMethod method, final HttpState state) throws IOException, HttpException { HostConfiguration defaulthostconfig = getHostConfiguration(); if (hostconfig == null) { hostconfig = defaulthostconfig; } URI uri = method.getURI(); } I received a null value for uri, while the hostconfig object has values for host attribute, but not for localAddress attribute or any other. Later it causes a NoHttpResponseException. The complete stack is: 2011-02-01 17:11:49,050 ERROR [TransferAgentFactory] source URI is not resolvable org.apache.commons.vfs.FileSystemException: Could not connect to HTTP server on magno. at org.apache.commons.vfs.provider.http.HttpClientFactory.createConnection(HttpClientFactory.java:186) at org.apache.commons.vfs.provider.http.HttpClientFactory.createConnection(HttpClientFactory.java:53) at org.apache.commons.vfs.provider.http.HttpFileProvider.doCreateFileSystem(HttpFileProvider.java:97) at org.apache.commons.vfs.provider.AbstractOriginatingFileProvider.getFileSystem(AbstractOriginatingFileProvider.java:103) at org.apache.commons.vfs.provider.AbstractOriginatingFileProvider.findFile(AbstractOriginatingFileProvider.java:82) at org.apache.commons.vfs.provider.AbstractOriginatingFileProvider.findFile(AbstractOriginatingFileProvider.java:66) at org.apache.commons.vfs.impl.DefaultFileSystemManager.resolveFile(DefaultFileSystemManager.java:706
RE: [vfs] - Problem with httpclient
Dear Martin, thanks for your response. The GASS session does not uses the port 80 (and magno is a local domain). It opens a HTTP session such as $ globus-gass-server -i -p 8180 http://localhost:8180 and so, you can transfer files using the globus-url-copy (in a grid environment) or simply, using wget to a URI such as http://localhost:8180/out/test.txt, where /out/test.txt is on /, the file is downloaded. It seems rare since using a URI of a web server or tomcat servlet, this application has not problems. So, I guess that httpclient is not ready for this kind of HTTP services, no? By other hand, the application previously set the HostConfiguration, client.setHostConfiguration(config);. I am not the developer of this code, and so I unknown some details. Regards. On Thu, 2011-02-03 at 11:09 -0500, Martin Gainty wrote: ssh username@magno (or whatever the IP is assigned to magno in hosts file) netstat -ab | grep 80 //if you do not have HTTPServer running on 80 you will get no results //if you do have HTTPServer running on Port 80 you should see output //also if your HttpClient executeMethod is declared as public int executeMethod(HostConfiguration hostconfig, final HttpMethod method, final HttpState state) throws IOException, HttpException //you should call executeMethod with all of the params initialised e.g. try { int n=client.executeMethod(hostconfig,method,state) } catch(IOException ioe) { log.debug(Handle your IOException from client.executeMethod here); } catch(HttpException http_exception) { log.debug(Handle your HttpException from client.executeMethod here); } Saludos Cordiales, Martin Gainty __ Verzicht und Vertraulichkeitanmerkung/Note de déni et de confidentialité Diese Nachricht ist vertraulich. Sollten Sie nicht der vorgesehene Empfaenger sein, so bitten wir hoeflich um eine Mitteilung. Jede unbefugte Weiterleitung oder Fertigung einer Kopie ist unzulaessig. Diese Nachricht dient lediglich dem Austausch von Informationen und entfaltet keine rechtliche Bindungswirkung. Aufgrund der leichten Manipulierbarkeit von E-Mails koennen wir keine Haftung fuer den Inhalt uebernehmen. Ce message est confidentiel et peut être privilégié. Si vous n'êtes pas le destinataire prévu, nous te demandons avec bonté que pour satisfaire informez l'expéditeur. N'importe quelle diffusion non autorisée ou la copie de ceci est interdite. Ce message sert à l'information seulement et n'aura pas n'importe quel effet légalement obligatoire. Étant donné que les email peuvent facilement être sujets à la manipulation, nous ne pouvons accepter aucune responsabilité pour le contenu fourni. Date: Thu, 3 Feb 2011 16:20:33 +0100 From: i.ma...@fdi.ucm.es Subject: Re: [vfs] - Problem with httpclient To: user@commons.apache.org I would like to emphasize that the URI is given by a insecure Globus GASS session (the files are transfered using wget, so the session is ok). This code does not fail with other kind of URIs. Thus, are this kind of URIs valid for httpclient? Regards. On Wed, 2011-02-02 at 10:13 +0100, Ismael Marín Carrión wrote: Dear all, I am working in the development of a driver for a Grid system. In our tests, we are using GridSAM, which use the httpclient and commons-vfs. I am writing you to get some advise of how solving the next problem. GridSAM invokes httpclient classes from the HttpClientFactory class (org.apache.commons.vfs.provider.http), in the method createConnection(). public static HttpClient createConnection(HttpFileSystemConfigBuilder builder, String scheme, String hostname, int port, String username, String password, FileSystemOptions fileSystemOptions) throws FileSystemException { client.executeMethod(new HeadMethod()); } I am not using any authentication mechanism, and so username and passwd are null, but hostname, port and scheme has the proper values. Thus, in executeMethod() method of the HttpClient class: public int executeMethod(HostConfiguration hostconfig, final HttpMethod method, final HttpState state) throws IOException, HttpException { HostConfiguration defaulthostconfig = getHostConfiguration(); if (hostconfig == null) { hostconfig = defaulthostconfig; } URI uri = method.getURI(); } I received a null value for uri, while the hostconfig object has values for host attribute, but not for localAddress attribute or any other. Later it causes a NoHttpResponseException. The complete stack is: 2011-02-01 17:11:49,050 ERROR [TransferAgentFactory] source