Quote Originariamente inviata da andbin Visualizza il messaggio
Innanzitutto, ovviamente, il client non "vede" il file-system del server (se sviluppi e testi sulla tua macchina, allora la macchina è sia client che server e il file-system è comune ... ma devi ignorare questo caso particolare in questo scenario).
Il client fa solo richieste a dei URL sul server tramite HTTP e cosa sia mappato a tali URL ... dipende appunto dal server.

Hai almeno 3 possibilità:
- Se il documento lo puoi generare "al volo" a fronte di una request, non c'è nemmeno bisogno di scrivere un file su file-system. Potresti inviarlo direttamente sulla response. Se puoi usare questo approccio o no, dipende da svariati fattori.

- Scrivi il file sul file-system del server in una qualunque directory, anche temporanea. Poi realizzi una Servlet o qualunque altra cosa che puoi eseguire lato server (a seconda della tecnologia/framework usato) per leggere il file e inviarlo sulla response.

- Scrivi il file in una directory che sia direttamente accessibile tramite HTTP sul server e che quindi possa essere servita direttamente dal server HTTP senza eseguire Servlet o quant'altro.

Ciao andbin, grazie per le tue gentili risposte. Ti spiego meglio in dettaglio :
lato server vado a recuperare un oggetto (un pdf) e lo scrivo su un file all'interno del file system del server, ritorno al client il path di tale oggetto e lo apreo nel browser tramite un window.open(path).
Lato server eseguo operazioni tipiche di scrittura su file, tra cui File file = new File(path) : il mio problema è proprio come settare questo path, io ho fatto path = ./nomefile.pdf ! Ora essendo in locale, il file system del mio server sarà sotto C (infatti l'URL del pdf sarà del tipo C:\....\nomefile.pdf); considera che in futuro il server sarà su una macchina diversa da quella del client. Quando vado a richiamare window.open(path) lato client, mi dà "Accesso Negato". Come posso risolvere ?