All Downloads are FREE. Search and download functionalities are using the official Maven repository.

net.sourceforge.jwebunit.tests.util.ParamsServlet Maven / Gradle / Ivy

There is a newer version: 2.4
Show newest version
/******************************************************************************
 * JWebUnit project (http://jwebunit.sourceforge.net)                         *
 * Distributed open-source, see full license under LICENCE.txt                *
 ******************************************************************************/
package net.sourceforge.jwebunit.tests.util;

import java.io.IOException;
import java.io.PrintWriter;
import java.util.Iterator;
import java.util.List;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.apache.commons.fileupload.FileItem;
import org.apache.commons.fileupload.FileItemFactory;
import org.apache.commons.fileupload.FileUploadException;
import org.apache.commons.fileupload.disk.DiskFileItemFactory;
import org.apache.commons.fileupload.servlet.ServletFileUpload;

public class ParamsServlet extends HttpServlet {

    private static final long serialVersionUID = 1L;

    protected void doGet(HttpServletRequest request,
            HttpServletResponse response) throws ServletException, IOException {
        doPost(request, response);
    }

    protected void doPost(HttpServletRequest request,
            HttpServletResponse response) throws ServletException, IOException {
        response.setContentType("text/html");
        PrintWriter out = response.getWriter();
        out.write(HtmlHelper.getStart("Submitted parameters"));
        out.write("

Submitted parameters

\n

Params are:"); /* * Prints POST and GET parameters as name=value1[,value2...] separated * with spaces */ // Check that we have a file upload request boolean isMultipart = ServletFileUpload.isMultipartContent(request); if (isMultipart) { // Create a factory for disk-based file items FileItemFactory factory = new DiskFileItemFactory(); // Create a new file upload handler ServletFileUpload upload = new ServletFileUpload(factory); // Parse the request List /* FileItem */items = null; try { items = upload.parseRequest(request); } catch (FileUploadException e) { throw new ServletException(e); } String ref = null; // Process the uploaded items Iterator iter = items.iterator(); while (iter.hasNext()) { FileItem item = (FileItem) iter.next(); if (item.isFormField()) { out.write(" " + item.getFieldName() + "=" + item.getString()); if (item.getFieldName().equals("myReferer")) { ref = item.getString(); } } else { String fieldName = item.getFieldName(); String fileName = item.getName(); String contentType = item.getContentType(); boolean isInMemory = item.isInMemory(); long sizeInBytes = item.getSize(); out.write(" " + item.getFieldName() + "=" + item.getName() + "{" + new String(item.get()) + "}"); } } out.write("

\n"); out.write(HtmlHelper.getLinkParagraph("return", ref)); } else { java.util.Enumeration params = request.getParameterNames(); for (; params.hasMoreElements();) { String p = params.nextElement().toString(); String[] v = request.getParameterValues(p); out.write(" " + p + "="); int n = v.length; if (n > 0) { out.write(v[0] != null ? v[0] : ""); for (int i = 1; i < n; i++) { out.write("," + (v[i] != null ? v[i] : "")); } } } out.write("

\n"); String ref = request.getHeader("Referer"); if (ref == null) { if (request.getParameterValues("myReferer") != null) { ref = request.getParameterValues("myReferer")[0]; } } out.write(HtmlHelper.getLinkParagraph("return", ref)); } out.write(HtmlHelper.getEnd()); } }




© 2015 - 2025 Weber Informatics LLC | Privacy Policy