Ciao ragazzi ho imparato a scrivere sul file xml con il java e utilizzando la pagina del jsp.

Il codice della pagina index.jsp è questo:


codice:


<%@page contentType="text/html" pageEncoding="UTF-8"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">

<html>
    <body >
        <center>
            
            <h1>REGISTRAZIONE UTENTE</h1>
            <%@ include file="/menu1.jsp" %>
            <form action="registrazione.jsp" method=post>
                <center>
                    <table cellpadding=2 cellspacing=1 border="1">
                        <th colspan=2>
                            <font size=5>Registrazione utente
                            </font>
                            

                            <font size=2 color="red"><sup>*</sup>Campi Obbligatori

</font>
                        </th>
                        <tr>
                            <td  valign=top>
        
                                <center>
                                    Informazioni dell'Utente


                                 
                                    <sup>*</sup>Nome:
<input type="text" name="nome" value="">
         
                                    <sup>*</sup>Cognome:
<input type="text" name="cognome" value="">
 
                                    <sup>*</sup>Città:
<input type="text" name="citta" value="">
 
                                    <sup>*</sup>Provincia:
<input type="text" name="provincia" value=""> 
 
                                    <sup>*</sup>CAP:
<input type="text" name="codice_postale" value="">

                                    <sup>*</sup>E-mail:
<input type="text" name="email" value="">


                                    Vuoi ricevere novità per E-mail?

                                    <input type="radio" name="notifica" value="si" checked>Si
                                    <input type="radio" name="notifica" value="no" >No 
                                    </center>
                                
                            </td>
                            <td  valign=top>
                                <center>
                                    Informazioni di Login dell'Utente


                                    <sup>*</sup>Username:
<input type="text" name="utente" size=20 value="">

                                    <sup>*</sup>Password:
<input type="password" name="password1" size=20 value="">

                                    <sup>*</sup>Conferma:
<input type="password" name="password2" size=20 value="">


                                    <input type="submit" value="Registrati"><input type="reset" value="Pulisci">    
                                </center>
                            </td>
                            
                        </tr>
                        
                    </table>
                </center>
            </form>
        </center>
    </body>
</html>

Il codice della pagina jsp detta registrazione.jsp è questo:

codice:


<%@page contentType="text/html" pageEncoding="UTF-8"%>
<%@page import="java.io.*, java.*"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">

<%!
    public static FileOutputStream Output;
    public static PrintStream file;
    int errore;

%>
<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
        <title>JSP Page</title>
    </head>
    <body>
        <%@ include file="menu1.jsp" %>
        <h1>REGISTRAZIONE AVVENUTA CON SUCCESSO! SELEZIONA "Login" DAL MENU!!</h1>
        <form action="index.jsp" method=post>
            <%

        if (request.getParameter("nome") == "") {
            errore = 1;
            %>
            <font color="#FF0000">Errore : </font>Non hai inserito nessun nome.

            <%
        }
        if (request.getParameter("cognome") == "") {
            errore = 1;
            %>
            <font color="#FF0000">Errore : </font>Non hai inserito nessun cognome.

            <%
        }
        if (request.getParameter("citta") == "") {
            errore = 1;
            %>
            <font color="#FF0000">Errore : </font>Non hai inserito nessuna città.

            <%
        }
        if (request.getParameter("provincia") == "") {
            errore = 1;
            %>
            <font color="#FF0000">Errore : </font>Non hai inserito nessuna provincia.

            <%
        }
        if (request.getParameter("codice_postale") == "") {
            errore = 1;
            %>
            <font color="#FF0000">Errore : </font>Non hai inserito nessun CAP.

            <%
        }
        if (request.getParameter("email") == "") {
            errore = 1;
            %>
            <font color="#FF0000">Errore : </font>Non hai inserito nessun indirizzo e-mail.

            <%
        }
        if (request.getParameter("utente") == "") {
            errore = 1;
            %>
            <font color="#FF0000">Errore : </font>Non hai inserito nessun nome utente.

            <%
        }
        if (request.getParameter("password1") == "") {
            errore = 1;
            %>
            <font color="#FF0000">Errore : </font>Non hai inserito nessuna password.

            <%
        }
        if (request.getParameter("password2") == "") {
            errore = 1;
            %>
            <font color="#FF0000">Errore : </font> Non hai inserito nessuna password di conferma.
            <%
        }
        if (errore == 1) {
            %>
            

<input type="submit" value="Torna indietro">
            <%            }
            %>
        </form>

        <%

        if (errore == 0) {

            try {
                
                Output = new FileOutputStream("C:/Users/CrisLoveStefy/Desktop/Dati xml/utente.xml");
                file = new PrintStream(Output);
            } catch (Exception e) {
                out.println("Impossibile caricare il file utente.xml!");
            }

            file.println("<?xml version=\"1.0\"?>");

            file.println("<Utenti>");

            file.println("<Record>");

            file.println("<Nome>" + request.getParameter("nome") + "</Nome>");

            file.println("<Cognome>" + request.getParameter("cognome") + "</Cognome>");

            file.println("<Paese>" + request.getParameter("citta") + "</Paese>");

            file.println("<Provincia>" + request.getParameter("provincia") + "</Provincia>");

            file.println("<Codicepostale>" + request.getParameter("codice_postale") + "</Codicepostale>");

            file.println("<Email>" + request.getParameter("email") + "</Email>");

            if (request.getParameter("notifica").contentEquals("si")) {
                file.println("<Notifica_mail>" + "Abilitata" + "</Notifica_mail>");
            } else {
                file.println("<Notifica_mail>" + "Disabilitata" + "</Notifica_mail>");
            }

            file.println("<Username>" + request.getParameter("utente") + "</Username>");

            file.println("<Password>" + request.getParameter("password1") + "</Password>");

            file.println("</Record>");

            file.println("</Utenti>");

            file.close();
            
        }

        %>
    </body>
</html>
Il mio problema sta nel fatto che ogni volta che registro un'utente mi si cancella l'utente precedentemente registrato nel file xml . Che cosa devo inserire per far sì che il file se è strutturato in questo modo:

codice:
<?xml version="1.0"?>
<Utenti>
<Record>
<Nome>Pinco</Nome>
<Cognome>Pallino</Cognome>
<Paese>xxx</Paese>
<Provincia>xxx</Provincia>
<Codicepostale>xxx</Codicepostale>
<Email>xxx@xxx.it</Email>
<Notifica_mail>Abilitata</Notifica_mail>
<Username>xxxx</Username>
<Password>xxxx</Password>
</Record>
</Utenti>
diventi ad ogni registrazione si aggiunge un record nuovo!

ad esempio

codice:
<?xml version="1.0"?>
<Utenti>
<Record>
<Nome>Pinco</Nome>
<Cognome>Pallino</Cognome>
<Paese>xxx</Paese>
<Provincia>xxx</Provincia>
<Codicepostale>xxx</Codicepostale>
<Email>xxx@xxx.it</Email>
<Notifica_mail>Abilitata</Notifica_mail>
<Username>xxxx</Username>
<Password>xxxx</Password>
</Record>
<Record>
<Nome>Tizio</Nome>
<Cognome>Caio</Cognome>
<Paese>yyy</Paese>
<Provincia>yyy</Provincia>
<Codicepostale>yyy</Codicepostale>
<Email>yyy@yyy.it</Email>
<Notifica_mail>Abilitata</Notifica_mail>
<Username>yyy</Username>
<Password>yyy</Password>
</Record>
</Utenti>
:quote:

Cosa devo fare, o meglio che devo inserire :master: per farlo funzionare in questo modo?

Cordialmente
Grazie
Attendo e spero in una risposta anche con le modifiche al mio codice al più presto possibile.....grazie ancora!