Exemplo n.º 1
0
  public void doGet(HttpServletRequest request, HttpServletResponse response)
      throws ServletException, IOException {
    String[] files = request.getParameterValues("file");
    if (logger.isDebugEnabled()) {
      logger.debug("Resource servlet received request to load files: {}", Arrays.toString(files));
    }

    if (files == null || files.length == 0) {
      logger.warn("No resource specified, 'file' parameter is empty.");
      response.sendError(
          HttpServletResponse.SC_BAD_REQUEST, "No resource specified, 'file' parameter is empty.");
      return;
    }

    try {
      String requestedExtension = FilenameUtils.getExtension(request.getRequestURI());
      logger.trace("Request done with extension {}", requestedExtension);

      String answer = null;
      if ("json".equals(requestedExtension)) {
        /* If extension was .json, then it will return all resources as
         * a JSON object.
         */
        response.setContentType(CONTENT_TYPE_JSON);
        answer = renderContentAsJson(files);
      } else {
        // Any other extension will set content type for the type of the first file requested
        response.setContentType(
            TypeFactory.getType(FilenameUtils.getExtension(files[0])).getContentType());
        answer = renderContentAsText(files);
      }

      logger.trace("--- Sending response to client ---\n{}", answer);
      response.getWriter().write(answer);
    } catch (ResourceNotFoundException ex) {
      response.sendError(
          HttpServletResponse.SC_NOT_FOUND, "Resource not found: " + ex.getMessage());
      logger.warn("Resource not found.", ex);
    } catch (Exception ex) {
      response.sendError(
          HttpServletResponse.SC_INTERNAL_SERVER_ERROR,
          "Error while loading resource: " + ex.getMessage());
      logger.error("Error while loading resoruce.", ex);
    }
  }
  @RequestMapping(method = RequestMethod.GET)
  public ModelAndView editForm(HttpServletRequest request) {

    String userName = SecurityContextHolder.getContext().getAuthentication().getName();

    User user = null;

    Object successMessage = ControllerUtils.getSuccessMessage(request);

    if (userName != null) {
      user = userService.loadUser(userName);
    }

    if (user == null) {
      log.warn(ResourceNotFoundException.getLogMessage("User", userName));
      throw new ResourceNotFoundException();
    }

    ModelAndView mav = new ModelAndView("config/users/password");
    mav.addObject(user);
    mav.addObject("successMessage", successMessage);
    return mav;
  }