Tiens, toi aussi tu as des softs perso qui tournent au boulot? ;-)

Merci,
Ca marche avec une java.net.HttpUrlConnection mais pas avec le HttpClient. Enfin c'est 
pas grave car en fait je n'ai plus besoin de requ�tes POST.

Par contre, pour l'encodeur BASE64 j'ai pris celui du HTTPClient que j'ai adapt� (j'ai 
rendu la classe et les m�thodes publiques).

-----Original Message-----
From: "Rodolphe Godreul" <[EMAIL PROTECTED]>
To: <[EMAIL PROTECTED]>
Date: Wed, 3 Jul 2002 16:30:57 +0200
Subject: RE: pb pour passer � travers un proxy authentifi�

salut patrice.
je ne connais pas HttpClient
mais pour un soft perso qui tourne sous tomcat
et qui fonctionne au boulot
ou j ai un proxy avec authentification,
j utilise le code suivant.
j imlagine que HttpClient n est pas tres different.
par rapport a la version precedente ou je n avais pas non plus d authentification,
j ai rajoute la partie :
[
String auth = "Basic " + new BASE64Encoder().encode((proxyuser_ + ":" + 
proxypassword_).getBytes());
connection.setRequestProperty("Proxy-Authorization", auth);
]



    public void init(ServletConfig config) throws ServletException {
        super.init(config);
        try {
            context_ = new InitialContext();
            // Set Proxy
            proxyhost_ = (String) context_.lookup("java:comp/env/proxy-host");
            proxyport_ = (String) context_.lookup("java:comp/env/proxy-port");
            proxyuser_ = (String) context_.lookup("java:comp/env/proxy-user");
            proxypassword_ = (String) context_.lookup("java:comp/env/proxy-password");
            if (proxyhost_ != null && proxyport_ != null && proxyhost_.length() > 0 && 
proxyport_.length() > 0) {
                Properties props = System.getProperties();
                props.put("proxySet", "true");
                props.put("proxyHost", proxyhost_);
                props.put("proxyPort", proxyport_);
            }
        } catch (Exception e) {
            throw new UnavailableException(e.toString(), 10);
        }
    }

private void makeMeteogramImage(HttpServletRequest req, HttpServletResponse resp) 
throws ServletException, IOException {
        try {

......

            URLConnection connection = new URL(noaaurl.toString()).openConnection();
            if (connection == null) throw new RuntimeException("Connection " + 
noaaurl.toString() + " null !");
            if (proxyuser_ != null && proxypassword_ != null) {
                String auth = "Basic " + new BASE64Encoder().encode((proxyuser_ + ":" 
+ proxypassword_).getBytes());
                connection.setRequestProperty("Proxy-Authorization", auth);
            }
            connection.setUseCaches(false);
            resp.setContentType(connection.getContentType());
            resp.setContentLength(connection.getContentLength());
            BufferedInputStream is = new 
BufferedInputStream(connection.getInputStream());

.......

        } catch (Exception e) {
            e.printStackTrace();
            log("BUILD_METEOGRAMIMAGE", e);
            resp.sendError(HttpServletResponse.SC_INTERNAL_SERVER_ERROR , 
e.toString());
        }
    }



>>-----Original Message-----
>>From: Patrice Godard [mailto:[EMAIL PROTECTED]]
>>Sent: Wednesday, July 03, 2002 4:10 PM
>>To: [EMAIL PROTECTED]
>>Subject: pb pour passer � travers un proxy authentifi�
>>
>>
>>Bonjour,
>>Je n'arrive pas, avec le org.apache.commons.httpclient.HttpClient 
>>� passer � travers un proxy squid n�cessitant une authentification.
>>
>>Voici mes param�tres de JVM:
>>-Dhttp.proxyHost=adresseIP_proxy 
>>-Dhttp.proxyPort=80 
>>-Dhttp.proxyUserName=UserName 
>>-Dhttp.proxyPassword=Password
>>
>>J'ai une FileNotFoundException.
>>
>>Avant mon proxy ne n�cessitait pas d'authentification et �a 
>>marchait parfaitement.
>>
>>Quelqu'un a une id�e?
>>
>>Patrice
>>
>>-- Use Opera, the most user-friendly web browser on Earth --
-- Use Opera, the most user-friendly web browser on Earth --

Répondre à