Gracias Profesor_Falken
Siguiendo tus instrucciones he conseguido que funcione (por lo menos en modo debug)
Me ha surgido otro problema, y es que, en el código, se lee el usuario y contraseña para la página donde tiene que conectarse de un fichero de texto, que está en formato:
usuario = pepe
contraseña = pepa
Y lo lee con este código:
Código:
this.properties = new Properties();
try {
this.properties.load(getClass().getClassLoader().getResourceAsStream("cierre.properties"));
} catch (IOException ex) {
ex.printStackTrace();
}
el problema es que no reconoce esta sentencia:
Código:
this.properties.load(getClass().getClassLoader().getResourceAsStream("cierre.properties"));
por lo que yo la he cambiado para leer el fichero en formato secuencial y separar el contenido de cada línea en partes.
He utilizado la sentencia tokenizer, junto a FileReader y BufferReadeer, modificando el código hasta llegar a esta parte:
Código:
String a;
String b;
while( ( linea = buff.readLine() ) != null ) {
//Aqui dentro manejamos la linea
StringTokenizer st = new StringTokenizer(linea,"=;",true);
if(st.countTokens()>2){
a=st.nextToken();
b=a.replace(" ","");
a.replaceAll("\\s","");
System.out.println(a);
if(a.indexOf("usuario")>=0){
st.nextToken();
a=st.nextToken();
b=a.replace(" ","");
a.replaceAll("\\s","");
a="pepe"; // esto lo he puesto para que funcione en la prueba
properties.setProperty(CIERRE_USER, a);
}
if(a.indexOf("clave")>=0){
st.nextToken();
a=st.nextToken();
b=a.replace(" ","");
a.replaceAll("\\s","");
a="pepa"; // esto lo he puesto para que funcione en la prueba
properties.setProperty(CIERRE_PASS, a);
}
}
System.out.println(linea);
}
El problema es que los parámetros recogidos llevan algo delante y detrás que impiden el funcionamiento correcto. Para la prueba he colocado los valores manualmente, pero eso invalida el fichero y la facilidad de cambiarlos en el futuro sin tener que retocar el código.
Cuando veo los valores con el debug, aparecen como " pepe " y " pepa ", por lo que está claro que falta algo en la sentencia replaceAll para eliminarlo.
¿Que puedo hacer para que me queden limpios los valores "pepe" y "pepa"?
o ¿Hay otra opción mejor para hacer la separación?
Un saludo
José Antonio Gracia