Hejsan!
Har en servlet som ska anropa en jsp sida med hjälp av ett URL objekt, problem jag har är att jag måste gå via en proxy och logga in på denna för att komma åt sidan. Detta har helt plötsligt slutat att fungera (inget har ändrats på proxy server säger de som sköter den men jag tror annat...) så jag började söka lite på nätet och såg att jag nog gjort fel förut har dåinnan jag skapar koppling till sidan satt:
System.setProperty("http.proxySet", "true");
System.setProperty("http.proxyHost", "127.0.0.1");
System.setProperty("http.proxyPort", "8080");
System.setProperty("http.proxyUser", "xxx");
System.setProperty("http.proxyPassword", "yyy");
Tydligen så ska man istället sätta en request property på URL objekt och skicka med användarnamn och lösenord base64 kodat. Har sett lite olika exempel på vad denna request property ska heta:
URL url = new URL(urlString);
String userPassword = "username:password";
String encoded = new sun.misc.BASE64Encoder().encode (userPassword.getBytes());
URLConnection uc = url.openConnection();
// Detta sätts i vissa exempel
uc.setRequestProperty ("Authorization", "Basic " + encoded );
// Denna sätts i andra exempel
uc.setRequestProperty ("Proxy-Authorization", encoded );
Så min fråga är vilken ska man egentligen använda sig av, fungerar båda eller beror det kanske på proxy servern som man kopplar upp sig emot?