Package javax.servlet

Interface AsyncListener

  • All Superinterfaces:
    java.util.EventListener


    public interface AsyncListener
    extends java.util.EventListener
    Listener that will be notified in the event that an asynchronous operation initiated on a ServletRequest to which the listener had been added has completed, timed out, or resulted in an error.
    Since:
    Servlet 3.0
    • Method Detail

      • onComplete

        void onComplete​(AsyncEvent event)
                 throws java.io.IOException
        Notifies this AsyncListener that an asynchronous operation has been completed.

        The AsyncContext corresponding to the asynchronous operation that has been completed may be obtained by calling getAsyncContext on the given event.

        In addition, if this AsyncListener had been registered via a call to AsyncContext.addListener(AsyncListener, ServletRequest, ServletResponse), the supplied ServletRequest and ServletResponse objects may be retrieved by calling getSuppliedRequest and getSuppliedResponse, respectively, on the given event.

        Parameters:
        event - the AsyncEvent indicating that an asynchronous operation has been completed
        Throws:
        java.io.IOException - if an I/O related error has occurred during the processing of the given AsyncEvent
      • onTimeout

        void onTimeout​(AsyncEvent event)
                throws java.io.IOException
        Notifies this AsyncListener that an asynchronous operation has timed out.

        The AsyncContext corresponding to the asynchronous operation that has timed out may be obtained by calling getAsyncContext on the given event.

        In addition, if this AsyncListener had been registered via a call to AsyncContext.addListener(AsyncListener, ServletRequest, ServletResponse), the supplied ServletRequest and ServletResponse objects may be retrieved by calling getSuppliedRequest and getSuppliedResponse, respectively, on the given event.

        Parameters:
        event - the AsyncEvent indicating that an asynchronous operation has timed out
        Throws:
        java.io.IOException - if an I/O related error has occurred during the processing of the given AsyncEvent
      • onError

        void onError​(AsyncEvent event)
              throws java.io.IOException
        Notifies this AsyncListener that an asynchronous operation has failed to complete.

        The AsyncContext corresponding to the asynchronous operation that failed to complete may be obtained by calling getAsyncContext on the given event.

        In addition, if this AsyncListener had been registered via a call to AsyncContext.addListener(AsyncListener, ServletRequest, ServletResponse), the supplied ServletRequest and ServletResponse objects may be retrieved by calling getSuppliedRequest and getSuppliedResponse, respectively, on the given event.

        Parameters:
        event - the AsyncEvent indicating that an asynchronous operation has failed to complete
        Throws:
        java.io.IOException - if an I/O related error has occurred during the processing of the given AsyncEvent
      • onStartAsync

        void onStartAsync​(AsyncEvent event)
                   throws java.io.IOException
        Notifies this AsyncListener that a new asynchronous cycle is being initiated via a call to one of the ServletRequest.startAsync() methods.

        The AsyncContext corresponding to the asynchronous operation that is being reinitialized may be obtained by calling getAsyncContext on the given event.

        In addition, if this AsyncListener had been registered via a call to AsyncContext.addListener(AsyncListener, ServletRequest, ServletResponse), the supplied ServletRequest and ServletResponse objects may be retrieved by calling getSuppliedRequest and getSuppliedResponse, respectively, on the given event.

        This AsyncListener will not receive any events related to the new asynchronous cycle unless it registers itself (via a call to AsyncContext.addListener(javax.servlet.AsyncListener)) with the AsyncContext that is delivered as part of the given AsyncEvent.

        Parameters:
        event - the AsyncEvent indicating that a new asynchronous cycle is being initiated
        Throws:
        java.io.IOException - if an I/O related error has occurred during the processing of the given AsyncEvent