Domanda

Sto tentando di utilizzare un risultato di flusso per restituire un'immagine da un'applicazione struts2. Mi sembra di avere problemi con la configurazione dell'azione. Ecco la configurazione:

    <result name="success" type="stream">
            <param name="contentType">image/jpeg</param>
            <param name="inputName">inputStream</param>
            <param name="contentDisposition">filename="${filename}"</param>
            <param name="bufferSize">1024</param>
    </result>

Il problema sembra essere il parametro inputName che secondo i documenti è:

  

il nome della proprietà InputStream dall'azione concatenata (default = inputStream).

Non sono sicuro di quale nome dovrei mettere lì. L'errore che ottengo è:

  

Impossibile trovare un java.io.InputStream con il nome [inputStream] nello stack di invocazione.

Qualcuno l'ha mai usato prima? Qualche consiglio?

Grazie.

È stato utile?

Soluzione 2

Ho trovato questo che ha spiegato che il InputStream deve essere creato da me. È logico che crei un InputStream dal file che voglio che l'utente scarichi e quindi passi lo Stream al risultato. Immagino sia la mia risposta.

Altri suggerimenti

Credo che il contentDisposition sia sbagliato, dovrebbe essere:

<param name="contentDisposition">attachment; filename="${filename}"</param>

( Chris )

Inputname definisce il nome del metodo che genera "stream" "

public InputStream getInputStream ()   {     restituisce nuovo ByteArrayInputStream (_bytes);   }

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