2013-04-14 7 views
5

Non riesco a creare e quindi scrivere un file in Tomcat. Il file viene creato se eseguo il programma java (solo la parte di codice di scrittura) come un'applicazione Java , ma non riesce in Tomcat.Impossibile scrivere un file mentre si utilizza Tomcat

non ci sono messaggi di errore. Il file non è semplicemente creato per niente!

Si prega di suggerire se mi manca qualcosa qui:

//code inside the servlet 
public void setData(HttpServletRequest request){ 
    name=request.getParameter("name"); 
    address=request.getParameter("address"); 


    BufferedWriter dataOut; 
    try { 
     System.out.println("Wrinting file..."); 
     dataOut = new BufferedWriter(new FileWriter("data.txt", true)); 




     dataOut.write("name:"); 
     dataOut.flush(); 

     dataOut.write("address"); 
     dataOut.flush(); 

     dataOut.write("\n"); 
     dataOut.flush(); 

     dataOut.close(); 
     System.out.println("File write complete!"); 
    } 
    catch(Exception e){ 
     e.printStackTrace(); 
    } 
+0

In realtà il file viene creato, ma dove lo stai cercando? –

+0

poiché non è stato specificato il percorso completo del file, verrà creato nel contesto corrente di tomcat. Specificare l'esempio di percorso completo dataOut = new BufferedWriter (nuovo FileWriter ("d: \\ data.txt", vero)); controlla la D: – aymankoo

risposta

6

Sembra che il file in realtà viene creato senza problemi.

In realtà potrebbe mancare dove viene salvato.

Modifica questa linea:

System.out.println("File write complete!"); 

A:

System.out.println("File write complete! Saved to: "+new File("data.txt").getAbsolutePath()); 

E si potrebbe risolvere il mistero.

+0

Grazie !! Il file sembra essere salvato nella root..si trova il percorso ... – Rookie

3

Il file è in fase di creazione, ma sta utilizzando un percorso relativo. Verrà creato relativo nel percorso di esecuzione, che su Tomcat non sarà dove sei abituato.

Utilizzare un percorso assoluto o stampare la posizione.

+0

grazie !!! ho ricevuto questo messaggio .. Scrittura completa del file! Salvato in: /Users/macbookpro/Downloads/eclipse/Eclipse.app/Contents/MacOS/data.txt come posso salvarlo nella cartella Contenuto Web? – Rookie

+0

come faccio a salvarlo nella cartella dei contenuti web? – Rookie

+1

Piuttosto che il percorso relativo "data.txt", usa un percorso assoluto: "/Users/path/to/web-content/data.txt", o usa un percorso relativo che lo posizionerà dove lo vuoi (Io so dove si trova la cartella in relazione al punto in cui si trova il file): "../../../path/to/web-content/data.txt" –

Problemi correlati