Interface StaplerResponse

  • All Superinterfaces:
    javax.servlet.http.HttpServletResponse, javax.servlet.ServletResponse
    All Known Implementing Classes:
    ResponseImpl, StaplerResponseWrapper

    public interface StaplerResponse
    extends javax.servlet.http.HttpServletResponse
    Defines additional operations made available by Stapler.
    Author:
    Kohsuke Kawaguchi
    See Also:
    Stapler.getCurrentResponse()
    • Field Summary

      • Fields inherited from interface javax.servlet.http.HttpServletResponse

        SC_ACCEPTED, SC_BAD_GATEWAY, SC_BAD_REQUEST, SC_CONFLICT, SC_CONTINUE, SC_CREATED, SC_EXPECTATION_FAILED, SC_FORBIDDEN, SC_FOUND, SC_GATEWAY_TIMEOUT, SC_GONE, SC_HTTP_VERSION_NOT_SUPPORTED, SC_INTERNAL_SERVER_ERROR, SC_LENGTH_REQUIRED, SC_METHOD_NOT_ALLOWED, SC_MOVED_PERMANENTLY, SC_MOVED_TEMPORARILY, SC_MULTIPLE_CHOICES, SC_NO_CONTENT, SC_NON_AUTHORITATIVE_INFORMATION, SC_NOT_ACCEPTABLE, SC_NOT_FOUND, SC_NOT_IMPLEMENTED, SC_NOT_MODIFIED, SC_OK, SC_PARTIAL_CONTENT, SC_PAYMENT_REQUIRED, SC_PRECONDITION_FAILED, SC_PROXY_AUTHENTICATION_REQUIRED, SC_REQUEST_ENTITY_TOO_LARGE, SC_REQUEST_TIMEOUT, SC_REQUEST_URI_TOO_LONG, SC_REQUESTED_RANGE_NOT_SATISFIABLE, SC_RESET_CONTENT, SC_SEE_OTHER, SC_SERVICE_UNAVAILABLE, SC_SWITCHING_PROTOCOLS, SC_TEMPORARY_REDIRECT, SC_UNAUTHORIZED, SC_UNSUPPORTED_MEDIA_TYPE, SC_USE_PROXY
    • Method Detail

      • forward

        void forward​(Object it,
                     String url,
                     StaplerRequest request)
              throws javax.servlet.ServletException,
                     IOException
        Evaluates the url against the given object and forwards the request to the result.

        This can be used for example inside an action method to forward a request to a JSP.

        Parameters:
        it - the URL is evaluated against this object. Must not be null.
        url - the relative URL (e.g., "foo" or "foo/bar") to resolve against the "it" object.
        request - Request to be forwarded.
        Throws:
        javax.servlet.ServletException
        IOException
      • forwardToPreviousPage

        void forwardToPreviousPage​(StaplerRequest request)
                            throws javax.servlet.ServletException,
                                   IOException
        Redirects the browser to where it came from (the referer.)
        Throws:
        javax.servlet.ServletException
        IOException
      • sendRedirect2

        void sendRedirect2​(@NonNull
                           String url)
                    throws IOException
        Works like HttpServletResponse.sendRedirect(String) except that this method escapes the URL.
        Throws:
        IOException
      • serveFile

        void serveFile​(StaplerRequest request,
                       URL res)
                throws javax.servlet.ServletException,
                       IOException
        Serves a static resource.

        This method sets content type, HTTP status code, sends the complete data and closes the response. This method also handles cache-control HTTP headers like "If-Modified-Since" and others.

        Throws:
        javax.servlet.ServletException
        IOException
      • serveLocalizedFile

        void serveLocalizedFile​(StaplerRequest request,
                                URL res)
                         throws javax.servlet.ServletException,
                                IOException
        Works like serveFile(StaplerRequest, URL) but chooses the locale specific version of the resource if it's available. The convention of "locale specific version" is the same as that of property files. So Japanese resource for foo.html would be named foo_ja.html.
        Throws:
        javax.servlet.ServletException
        IOException
      • serveFile

        void serveFile​(StaplerRequest req,
                       InputStream data,
                       long lastModified,
                       long expiration,
                       long contentLength,
                       String fileName)
                throws javax.servlet.ServletException,
                       IOException
        Serves a static resource.

        This method works like serveFile(StaplerRequest, URL) but this version allows the caller to fetch data from anywhere.

        Parameters:
        data - InputStream that contains the data of the static resource.
        lastModified - The timestamp when the resource was last modified. See URLConnection.getLastModified() for the meaning of the value. 0 if unknown, in which case "If-Modified-Since" handling will not be performed.
        expiration - The number of milliseconds until the resource will "expire". Until it expires the browser will be allowed to cache it and serve it without checking back with the server. After it expires, the client will send conditional GET to check if the resource is actually modified or not. If 0, it will immediately expire.
        contentLength - if the length of the input stream is known in advance, specify that value so that HTTP keep-alive works. Otherwise specify -1 to indicate that the length is unknown.
        fileName - file name of this resource. Used to determine the MIME type. Since the only important portion is the file extension, this could be just a file name, or a full path name, or even a pseudo file name that doesn't actually exist. It supports both '/' and '\\' as the path separator. If this string starts with "mime-type:", like "mime-type:foo/bar", then "foo/bar" will be used as a MIME type without consulting the servlet container.
        Throws:
        javax.servlet.ServletException
        IOException
      • serveExposedBean

        default void serveExposedBean​(StaplerRequest req,
                                      Object exposedBean,
                                      ExportConfig exportConfig)
                               throws javax.servlet.ServletException,
                                      IOException
        Serves the exposed bean in the specified flavor.

        This method performs the complete output from the header to the response body. If the flavor is JSON, this method also supports JSONP via the jsonp query parameter.

        The depth parameter may be used to specify a recursion depth as in Model.writeTo(Object,int,DataWriter)

        As of 1.146, the tree parameter may be used to control the output in detail; see NamedPathPruner(String) for details.

        ExportConfig is passed by the caller to control serialization behavior

        Throws:
        javax.servlet.ServletException
        IOException
        Since:
        1.251
      • getCompressedOutputStream

        OutputStream getCompressedOutputStream​(javax.servlet.http.HttpServletRequest req)
                                        throws IOException
        Works like ServletResponse.getOutputStream() but tries to send the response with gzip compression if the client supports it.

        This method is useful for sending out a large text content.

        Parameters:
        req - Used to determine whether the client supports compression
        Throws:
        IOException
      • reverseProxyTo

        int reverseProxyTo​(URL url,
                           StaplerRequest req)
                    throws IOException
        Performs the reverse proxy to the given URL.
        Returns:
        The status code of the response.
        Throws:
        IOException
      • setJsonConfig

        void setJsonConfig​(net.sf.json.JsonConfig config)
        The JsonConfig to be used when serializing java beans from js bound methods to JSON. Setting this to null will make the default config to be used.
        Parameters:
        config - the config
      • getJsonConfig

        net.sf.json.JsonConfig getJsonConfig()
        The JsonConfig to be used when serializing java beans to JSON previously set by setJsonConfig(JsonConfig). Will return the default config if nothing has previously been set.
        Returns:
        the config