Ovvio che se il file di testo ha più righe, dovrai prima leggerle tutte e poi portarle nella JSP.
La cosa più semplice e banale è creare un ArrayList con tutte le righe e, nella JSP, scorrerlo, stampandole.
Nella servlet:
codice:
ArrayList righe = new ArrayList();
BufferedReader br = new BufferedReader( ... );
String linea = "";
while((linea = br.readLine()) != null) {
// Metto la riga letta nell'ArrayList
righe.add( linea );
}
br.close();
// Metto l'ArrayList in sessione:
tuaSessione.setAttribute("righe", righe);
Nella JSP (senza utilizzare JSTL):
codice:
<%
ArrayList righe = (ArrayList) session.getAttribute("righe");
for(int i=0; i<righe.size(); i++) {
out.print((String) righe.get(i) + "
");
}
%>
Nella JSP (utilizzando JSTL):
codice:
<c:forEach items="${righe}" var="riga">
${riga}
</c:forEach>
Il problema del ClassCastException ce l'hai per un ovvio motivo: stai cercando di convertire un array di char ( char[] ) in un oggetto Charater, che sono due cose notevolmente diverse. Il primo è un oggetto che rappresenta una serie di caratteri, il secondo è un oggetto che rappresenta un wrapper per un singolo carattere...
Ciao.