Class WebResponse

java.lang.Object
org.apache.wicket.request.Response
org.apache.wicket.request.http.WebResponse
Direct Known Subclasses:
BufferedWebResponse, MockWebResponse, PartialPageUpdate.ResponseBuffer, ServletWebResponse, WebSocketResponse

public abstract class WebResponse extends Response
Base class for web-related responses.
Author:
Matej Knopp
  • Field Details

  • Constructor Details

  • Method Details

    • addCookie

      public abstract void addCookie(jakarta.servlet.http.Cookie cookie)
      Add a cookie to the web response
      Parameters:
      cookie -
    • clearCookie

      public abstract void clearCookie(jakarta.servlet.http.Cookie cookie)
      Convenience method for clearing a cookie.
      Parameters:
      cookie - The cookie to set
      See Also:
    • isHeaderSupported

      public abstract boolean isHeaderSupported()
      Indicates if the response supports setting headers. When this method returns false, setHeader(String, String) and its variations will thrown an UnsupportedOperationException.
      Returns:
      True when this WebResponse supports setting headers.
    • setHeader

      public abstract void setHeader(String name, String value)
      Set a header to the string value in the servlet response stream.
      Parameters:
      name -
      value -
    • addHeader

      public abstract void addHeader(String name, String value)
      Add a value to the servlet response stream.
      Parameters:
      name -
      value -
    • setDateHeader

      public abstract void setDateHeader(String name, Instant date)
      Set a header to the date value in the servlet response stream.
      Parameters:
      name -
      date -
    • setContentLength

      public abstract void setContentLength(long length)
      Set the content length on the response, if appropriate in the subclass. This default implementation does nothing.
      Parameters:
      length - The length of the content
    • setContentType

      public abstract void setContentType(String mimeType)
      Set the content type on the response, if appropriate in the subclass. This default implementation does nothing.
      Parameters:
      mimeType - The mime type
    • setContentRange

      public void setContentRange(String contentRange)
      Sets the content range of the response. If no content range is set the client assumes the whole content. Please note that if the content range is set, the content length, the status code and the accept range must be set right, too.
      Parameters:
      contentRange - the content range
    • setAcceptRange

      public void setAcceptRange(String acceptRange)
      Sets the accept range (e.g. bytes)
      Parameters:
      acceptRange - the accept range header information
    • setLastModifiedTime

      public void setLastModifiedTime(Instant time)
      Set the contents last modified time, if appropriate in the subclass.
      Parameters:
      time - The last modified time
    • setAttachmentHeader

      public void setAttachmentHeader(String filename)
      Convenience method for setting the content-disposition:attachment header. This header is used if the response should prompt the user to download it as a file instead of opening in a browser.

      The file name will be encoded

      Parameters:
      filename - file name of the attachment
    • setInlineHeader

      public void setInlineHeader(String filename)
      Convenience method for setting the content-disposition:inline header. This header is used if the response should be shown embedded in browser window while having custom file name when user saves the response. browser.

      The file name will be encoded

      Parameters:
      filename - file name of the attachment
    • setStatus

      public abstract void setStatus(int sc)
      Sets the status code for this response.
      Parameters:
      sc - status code
    • sendError

      public abstract void sendError(int sc, String msg)
      Send error status code with optional message.
      Parameters:
      sc -
      msg -
    • encodeRedirectURL

      public abstract String encodeRedirectURL(CharSequence url)
      Encodes urls used to redirect. Sometimes rules for encoding URLs for redirecting differ from encoding URLs for links, so this method is broken out away form Response.encodeURL(CharSequence).
      Parameters:
      url -
      Returns:
      encoded URL
    • sendRedirect

      public abstract void sendRedirect(String url)
      Redirects the response to specified URL. The implementation is responsible for properly encoding the URL. Implementations of this method should run passed in url parameters through the encodeRedirectURL(CharSequence) method.
      Parameters:
      url -
    • isRedirect

      public abstract boolean isRedirect()
      Returns:
      true is sendRedirect(String) was called, false otherwise.
    • flush

      public abstract void flush()
      Flushes the response.
    • disableCaching

      public void disableCaching()
      Make this response non-cacheable
    • enableCaching

      public void enableCaching(Duration duration, WebResponse.CacheScope scope)
      Make this response cacheable

      when trying to enable caching for web pages check this out: WICKET-4357

      Parameters:
      duration - maximum duration before the response must be invalidated by any caches. It should not exceed one year, based on RFC-2616.
      scope - controls which caches are allowed to cache the response
      See Also: