Qual è il comportamento esatto di AsyncContext dopo il timeout? Funziona ancora e restituisce la risposta usando getResponse()?JavaEE 6 Comportamento AsyncContext dopo il timeout
risposta
Java Servlet 3.0 Maintenance Release a pagina 34 si legge:
Una chiamata a questo metodo -
ServletRequest.startAsync(ServletRequest req, ServletResponse res)
- assicura che la risposta non viene commesso quando alla chiusura dell'applicazione fuori del metodo di servizio. Viene eseguito quando viene richiamato AsyncContext.complete su AsyncContext restituito o su AsyncContext restituito o su AsyncContext e non ci sono ascoltatori associati a gestire lo timeout. Il timer per i timeout asincroni non si avvia fino a quando la richiesta e la risposta associata non sono state restituite dal contenitore. È possibile utilizzare AsyncContext per scrivere sulla risposta dal thread asincrono . Può anche essere usato per segnalare che la risposta non è chiusa e confermata.
Da the javadoc of the javax.servlet.AsyncContext interface:
Nel caso in cui un'operazione asincrona è scaduta, il contenitore deve percorrere seguente procedura:
- valere in loro metodo onTimeout, tutti AsyncListener istanze registrate con ServletRequest su cui è stata avviata l'operazione asincrona .
- Se nessuno degli ascoltatori ha chiamato complete() o nessuno dei metodi dispatch(), eseguire una spedizione di errore con un codice di stato uguale a in HttpServletResponse.SC_INTERNAL_SERVER_ERROR.
- Se è stata trovata alcuna pagina di errore di corrispondenza, o la pagina di errore non ha chiamato i metodi completi() o qualsiasi della spedizione(), chiamata completa()."
L'ultima riga di cui sopra è di più importanza - ci sarà una chiamata a AsyncContext.complete()
The javadoc says:.
Completa l'operazione asincrona che è stato avviato su richiesta che è stato utilizzato per questo initialze AsyncContext, chiudendo la risposta che è stato utilizzato per inizializzare questo AsyncContext
Con AsyncContext
chiuso, le chiamate alla maggior parte dei suoi metodi generano IllegalStateException
.
- 1. Configurazione JAAS e modulo di login LDAP in JavaEE 6
- 2. JavaEE 6: javax.naming.NameAlreadyBoundException: utilizzare rebind per eseguire l'override
- 3. Maven: JavaEE-VS API jboss-JavaEE-6.0
- 4. Reindirizzamento dopo HttpSession timeout
- 5. Come posso evitare il reverse engineering dei file JavaEE 6 .war?
- 6. Comportamento di timeout di diversi browser?
- 7. Comportamento di future.get con 0 timeout
- 8. comportamento Timeout in HttpWebRequest.GetResponse() vs GetResponseAsync()
- 9. Impossibile eseguire il deployment del progetto JavaEE
- 10. strano comportamento di Buf.subbuf in Perl 6
- 11. Che cos'è "Facet" in JavaEE?
- 12. PhantomJS2 si disconnette dopo il timeout: come eseguire il debug?
- 13. Come scollegare il socket ZeroMQ dopo il timeout?
- 14. Come impostare il timeout della sessione dopo il login passportjs?
- 15. Comportamento del pulsante Indietro dopo il reindirizzamento-Get
- 16. "javaee-endorsed-api-6.0" mancante
- 17. JDBCTemplate per JavaEE e CDI
- 18. JavaEE 6: Come iniettare la risorsa JMS in un client JMS autonomo?
- 19. Comportamento indifferente del livello di zoom in IOS 6 mapview
- 20. La risposta AsyncContext non corrisponde alla richiesta originale in entrata?
- 21. Eccezione non rilevata dopo il timeout Ext.Ajax.request in Chrome
- 22. Nodejs + expressjs riproduce la richiesta dopo il timeout del server
- 23. perché select() restituisce sempre 0 dopo il primo timeout
- 24. Angular2 - TypeScript: incrementa un numero dopo il timeout in AppComponent
- 25. HTTP 504 timeout dopo esattamente 120 secondi
- 26. Script PHP Timeout dopo 45 secondi
- 27. Devo chiamare EndInvoke dopo un timeout?
- 28. HttpURLConnection getInputStream: timeout sempre dopo 180 secondi
- 29. Come svanire un messaggio dopo un timeout
- 30. Migliori pratiche di configurazione delle soluzioni JavaEE
grazie per la vostra risposta :-) – xwinus
@xwinus se vi piace la risposta, approvarla. –
@JacekLaskowski: +1. Penso che tu abbia indirettamente risposto ai posters anche altre domande [qui] (http://stackoverflow.com/questions/15228031/java-lang-illegalstateexception-not-suspended-when-asynccontextcomplete)! – brainOverflow