Salir por un proxy

Edorta
05 de Julio del 2003
Buenas, agradecer de antemano la ayuda que me podais prestar.
Aqui va el problema. Desde una página que tiene un icono (applet) ejecuto una dirección de internet y me sale el cuadro de mensaje de autentificación del usuario por el proxy. Lo que yo necesito es que no salga ese cuadro y me vaya directamente a la dirección.

El código que tengo es el siguiente:
****************************************************************************************************
//Funcion**********************************
* Función que se salta el login y la password que pide el proxy.
* Nos saltamos el meter los datos del proxy.
*/
private void SaltarProxy() throws Exception {

System.setProperty("proxySet", "true");
System.setProperty("http.proxyHost", "192.168.4.97");
System.setProperty("http.proxyPort", "80");

URL url = new URL("http://www.google.com/");
URLConnection connection = url.openConnection();
//El usuario y la password se tiene que recoger de los atributos del
//portal. getParameter("usuario"); getParameter("clave")
String password = "cinc:cinc";

String encoded = new Base64Encode(password).processString();
connection.setRequestProperty("Proxy-Authorization", "Basic" + encoded);
System.out.println("Despues del request el encoded es: " + encoded);
connection.setRequestProperty("User-Agent", "Mozilla/4.0 (compatible; MSIE 5.5; Windows NT 5.0)");
connection.setRequestProperty("Accept", "text/html, image/*");

connection.setDoInput(true);
connection.setDoOutput(true);
connection.setUseCaches(false);

connection.connect();
}
*/

//Funcion**********************************
private void SaltarProxy() throws MalformedURLException, IOException {

System.getProperties().put("proxySet","true");
System.getProperties().put("proxyHost","192.168.4.97");
System.getProperties().put("proxyPort","80");

URL url = new URL("http://www.euskalnet.net/elorta/");
URLConnection conn = url.openConnection();

String authString="mike:mike";
String auth = "Basic " + new BASE64Encoder().encode(authString.getBytes());

conn.setRequestProperty("Proxy-Authorization",auth);

}

/** Cuando pinchamos sobre el icono (Applet), se ejecuta este
* evento. Cada vez que se pintxa sobre el applet, se lanza un internet
* explorer (navegador) nuevo. Cada lanzamiento de un nuevo navegador, lo
* asociamos a un proceso, y los vamos guardando en un vector, para destruirlos
* todos cuando se destruya el applet.
*/
public void LlamarEjecutable(ActionEvent e) {
try {
Aplicaciones.Fichero.Ejecutar("regedit /s C:\startup.reg");

vecexplorer.addElement(Aplicaciones.Fichero.EjecutarProceso(BuscarRutaExplorer()));
// Función que salta el proxy
SaltarProxy();
}
catch (Exception err)
{
err.printStackTrace();
}
}
****************************************************************************************************

Ninguna de las dos funciones SaltarProxy funcionan o es que no se como ejecutarlo en la página.

Bueno, gracias por todo

Edorta

joel
05 de Julio del 2003
Edorta:
Te mando este código que tal vez puedas utilizar. Te pido me remitas si te sirvió o no; traté de utilizar tu clase para que sea más sencillo.
Saludos desde la Ciudad de México.
Joel

public class SaltarProxy {
private final static String proxyHost = "192.168.4.97";
private final static String proxyPort = "80";

public static void main(String[] args) throws Exception {
URL dirurl;

String content,url,inputLine;
url = "http://www.google.com";
dirurl = new URL(url);
try {
System.setProperty("javax.net.debug", "all");
System.setProperty("http.proxyHost",proxyHost);
System.setProperty("http.proxyPort",proxyPort);
System.setProperty("http.proxySet", "true");

us = "cinc";
pwd = "cinc";
String userPassword= us+":"+pwd;
String encoding = new sun.misc.BASE64Encoder().encode(userPassword.getBytes());
HttpURLConnection urlc = (HttpURLConnection) dirurl.openConnection();
urlc.setRequestProperty("Proxy-Authorization", "Basic " + encoding);
System.out.println("RESPONSE ==> " + urlc.getResponseCode());
// 200 = OK;

}catch( Exception e){
System.out.println("ERROR ==> " + e);
}
}
}

joel
05 de Julio del 2003
Corrigiendo dirección de correo