code: @Override
      protected void doGet(final HttpServletRequest _req,
                           final HttpServletResponse _res)
          throws ServletException
      {
          final String oid = _req.getParameter(CheckoutServlet.PARAM_OID);
  
          try {
              final Instance instance = Instance.get(oid);
              if (instance.isValid()) {
                  final Checkout checkout = new Checkout(instance);
                  final InputStream input = checkout.execute();
                  _res.setContentType(this.getServletContext().getMimeType(
                                  checkout.getFileName()));
                  _res.setContentLength((int) checkout.getFileLength());
                  _res.addHeader("Content-Disposition", "inline; filename=\""
                                  + checkout.getFileName() + "\"");
                  IOUtils.copy(input, _res.getOutputStream());
              }
          } catch (final IOException e) {
              throw new ServletException(e);
          } catch (final EFapsException e) {
              throw new ServletException(e);
          }
      }
docs: The method checks the file from the object out and returns them
  in a output stream to the web client. The object
  id must be given with paramter {@link #PARAM_OID}.<br/>
  
  @param _req request variable
  @param _res response variable
  @throws ServletException on error