L'ho modificato un pò ma ancora nulla,
questa è la chiamata nella servlet:
codice:
------------------- compreso tra try catch ----------------------
fos = new FileOutputStream(getServletContext().getRealPath("/WEB-INF/File_del_Server/Calendario_" + serie +"_1314.txt"), true);
-----------------------------------------------------------------
esito = DbHandler.salvaNelFile(fos, s, g, sC, sFC, r);
il metodo nella classe DbHandler è:
codice:
public static boolean salvaNelFile(FileOutputStream fos, String serie,
String giornata, String squadraCasa, String squadraFuoriCasa,
String risultato) {
Connection con = getHsqlDbConnection();
ResultSet res = null;
boolean result = false;
try {
ObjectOutputStream oos=new ObjectOutputStream(fos); // throws IOException
String intestazioniGiornate = "Giornata 1\nData\tIncontro\tRisultato";
String query = "select * from CALENDARIO" + serie + " WHERE 1=1 ORDER BY _id";
res = con.createStatement().executeQuery(query);
System.out.println(intestazioniGiornate);
oos.writeObject(intestazioniGiornate);
int conteggio = 0, numGiornata = 1;
while(res.next()){
if(serie.equals("A") && conteggio == 10 ||
serie.equals("B") && conteggio == 11 ||
serie.equals("1A") && conteggio == 9 ||
serie.equals("1B") && conteggio == 8 ||
serie.equals("2A") && conteggio == 9 ||
serie.equals("2B") && conteggio == 9) {
conteggio = 0;
oos.writeObject("");
numGiornata++;
intestazioniGiornate = "Giornata " + numGiornata + "\nData\tIncontro\tRisultato";
System.out.println(intestazioniGiornate);
oos.writeObject(intestazioniGiornate);
}
String d = res.getString("Data");
String c = res.getString("Casa");
String o = res.getString("Ospiti");
String r = res.getString("Risultato");
int posizioneTrattino = r.indexOf("-");
String risCasa = "";
String risOspiti = "";
if(posizioneTrattino != -1){ // c'è il trattino
risCasa = r.substring(0, posizioneTrattino);
risOspiti = r.substring(posizioneTrattino + 1);
}
String nuovaRiga = d + "\t" + c + "\t" + o + "\t" + risCasa + "\t" + risOspiti;
System.out.println("nuovariga= Serie " + serie + " " + nuovaRiga);
oos.writeObject(nuovaRiga); // throws IOException
conteggio++;
}
oos.flush();
oos.close();
result = true;
}
catch (Exception e) {
e.printStackTrace();
result = false;
}
finally{
if (connection != null) closeDb();
}
return result;
}
questa volta le operazioni le esegue (mi aiuto con le System.out.println) ma i file non vengono scritti mai, c'è sempre quello che c'era prima (quando vengono letti per intenderci) e non mi viene dato nessun errore.
Qualche consiglio?