示例#1
0
  public static String inspect(HttpServletRequest request) {

    TextTable sRequestAttributes =
        new TextTable("Special [R] Attributes#Value", TextTable.ALIGN_CENTER);
    TextTable ttRequestAttributes = new TextTable("Attr  [R]#Value", TextTable.ALIGN_CENTER);
    TextTable ttRequestParameters = new TextTable("Param [R]#Value", TextTable.ALIGN_CENTER);
    TextTable ttSessionAttributes = new TextTable("Attr  [S]#Value", TextTable.ALIGN_CENTER);
    StringBuffer sb = new StringBuffer();
    Enumeration<String> enumElemente = null;
    String value = null;
    String valueOriginal = null;
    String attr = null;

    // AFISEAZA ATRIBUTELE SPECIALE ALE REQUESTULUI
    if (AFISEAZA_ATRIBUTE_SPECIALE_REQUEST) {
      sRequestAttributes.addRow(
          "LOCALE".concat("#").concat(RequestContextUtils.getLocale(request).toString()),
          TextTable.ALIGN_LEFT);
      sRequestAttributes.addRow(
          "URL".concat("#").concat(request.getRequestURI()), TextTable.ALIGN_LEFT);
      sRequestAttributes.addRow(
          "QS"
              .concat("#")
              .concat((request.getQueryString() != null ? request.getQueryString() : "")),
          TextTable.ALIGN_LEFT);
      sRequestAttributes.addRow(
          "METHOD".concat("#").concat(request.getMethod()), TextTable.ALIGN_LEFT);
      sb.append(sRequestAttributes.getTable());
    }

    // AFISEAZA ATRIBUTELE REQUEST
    if (AFISEAZA_ATRIBUTE_REQUEST) {
      enumElemente = request.getAttributeNames();
      while (enumElemente.hasMoreElements()) {
        attr = enumElemente.nextElement();
        valueOriginal = request.getAttribute(attr).toString();
        if (valueOriginal.length() > MAX_LENGTH) {
          value = valueOriginal.substring(0, MAX_LENGTH);
        } else {
          value = valueOriginal;
        }
        ttRequestAttributes.addRow(attr.concat("#").concat(value), TextTable.ALIGN_LEFT);
      }
      sb.append(ttRequestAttributes.getTable());
    }

    // AFISEAZA PARAMETRII REQUEST
    if (AFISEAZA_PARAMETRII_REQUEST) {
      String[] valuesOriginal = null;
      enumElemente = request.getParameterNames();
      while (enumElemente.hasMoreElements()) {
        attr = (String) enumElemente.nextElement();
        valuesOriginal = request.getParameterValues(attr);
        // daca sunt mai multe cu acelasi nume
        if (valuesOriginal != null) {
          for (int i = 0; i < valuesOriginal.length; i++) {
            if (valuesOriginal[i].length() > MAX_LENGTH) {
              value = valuesOriginal[i].substring(0, MAX_LENGTH);
            } else {
              value = valuesOriginal[i];
            }
            ttRequestParameters.addRow(attr.concat("#").concat(value), TextTable.ALIGN_LEFT);
          }
        } else {
          valueOriginal = request.getParameter(attr).toString();
          if (valueOriginal.length() > MAX_LENGTH) {
            value = valueOriginal.substring(0, MAX_LENGTH);
          } else {
            value = valueOriginal;
          }

          ttRequestParameters.addRow(attr.concat("#").concat(value), TextTable.ALIGN_LEFT);
        }
      }
      sb.append(ttRequestParameters.getTable());
    }

    // AFISEAZA ATRIBUTELE SESIUNII
    if (AFISEAZA_ATRIBUTE_SESIUNE) {
      HttpSession ses = request.getSession();
      enumElemente = ses.getAttributeNames();
      while (enumElemente.hasMoreElements()) {
        attr = (String) enumElemente.nextElement();
        valueOriginal = request.getSession().getAttribute(attr).toString();
        if (valueOriginal.length() > MAX_LENGTH) {
          value = valueOriginal.substring(0, MAX_LENGTH);
        } else {
          value = valueOriginal;
        }
        ttSessionAttributes.addRow(attr.concat("#").concat(value), TextTable.ALIGN_LEFT);
      }
      ttSessionAttributes.addRow(
          "SESSION ID ".concat("#").concat(request.getSession().getId()), TextTable.ALIGN_LEFT);
      sb.append(ttSessionAttributes.getTable());
    }
    return sb.toString();
  }