Domanda

Ho un'azione in struts 2 dove apre un FileInputStream, legge un'immagine e la mostra in un jsp.

La domanda è che quando struts ha finito di ottenere l'immagine, si prenderà automaticamente cura del FileInputStream e del close() o il flusso verrà lasciato open?

È stato utile?

Soluzione

Struts2 si occuperà di chiudere il flusso di input una volta che avrà svolto il lavoro per te.

Ecco il link al codice sorgente e puoi benissimo vedere che è stato fatto attenzione a chiudere lo stream.

Struts2 StreamResult Codice sorgente

Ecco lo snippet di codice dallo stesso:

 finally {

           if (inputStream != null) inputStream.close();
           if (oOutput != null) oOutput.close();
        }

La speranza ti darà un'idea chiara di come stanno andando le cose.

Altri suggerimenti

Il risultato chiuderà il flusso di input;tutto ciò che fa l'azione è fornire il flusso.Il codice non ha più il controllo del flusso di input una volta restituita l'azione.

Il codice pertinente è in org.apache.struts2.dispatcher.StreamResult:doExecute.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top