2014-07-10 18 views
7

quando ho un metodo in Jersey che ascolta una richiesta POST e quando ho un InputStream come argomento nel metodo da cui voglio ottenere i dati, devo chiudere questo InputStream o lo manterrà?Richieste POST Jersey e chiusura di InputStream

Non ho trovato alcuna informazione su di esso. Avevo letto RESTful Java con JAX-RS 2.0 un po 'indietro, e non ricordo se fosse menzionato. Sfogliandolo ora, ho trovato diversi esempi di codice e lo stream non è chiuso. Penserei che non sia necessario, ma volevo chiederlo.

+0

hai trovato la risposta? Passerò quell'ingressoStream come variabile di riferimento a EJB e lo chiuderò lì nel blocco try-finally. Cosa ne pensi? –

+0

@AzamatAlmukhametov Vorrei anche sapere se hai trovato una risposta per questo – Aarjav

risposta

0

Come si ottiene il riferimento InputStream? Attraverso un MessageBodyReader? In tal caso, se si utilizza un MessageBodyReader di quanto non si deve chiudere l'InputStream. C'è anche un avvertimento esplicito per questo nella documentazione.

7.2.2.2. MessageBodyReader.readFrom

Comunque questo link vale a Jersey v2. Non so cosa sia la versione 1. Quale versione usi?

+0

Ci scusiamo per la risposta tardiva. Non è in MessageBodyReader, so già di non chiudere quelli o l'output in MessageBodyWriter per quella materia. È l'InputStream che ottieni quando fai una richiesta POST. L'argomento del metodo non annotato con qualcosa come '@ QueryParam' o' @ PathParam' è quindi l'InputStream oi dati che vengono inviati al server dal client. – nomve

Problemi correlati