diff options
Diffstat (limited to 'spss.slinterface/WEB-INF/src/test')
2 files changed, 129 insertions, 0 deletions
diff --git a/spss.slinterface/WEB-INF/src/test/at/gv/egovernment/moa/spss/slinterface/DataURLBean.java b/spss.slinterface/WEB-INF/src/test/at/gv/egovernment/moa/spss/slinterface/DataURLBean.java new file mode 100644 index 000000000..4cf099a45 --- /dev/null +++ b/spss.slinterface/WEB-INF/src/test/at/gv/egovernment/moa/spss/slinterface/DataURLBean.java @@ -0,0 +1,46 @@ +/* + * Created on 25.11.2003 + * + * (c) Stabsstelle IKT-Strategie des Bundes + */ +package test.at.gv.egovernment.moa.spss.slinterface; + +/** + * @author Gregor Karlinger (mailto:gregor.karlinger@cio.gv.at) + */ +public class DataURLBean +{ + String title_; + String contentType_; + String content_; + + public DataURLBean() + { + super(); + title_="unknown"; + contentType_="unknown"; + content_="unknown"; + } + + public DataURLBean(String title, String contentType, String content) + { + title_ = title; + contentType_ = contentType; + content_ = content; + } + + public String getTitle() + { + return title_; + } + + public String getContentType() + { + return contentType_; + } + + public String getContent() + { + return content_; + } +} diff --git a/spss.slinterface/WEB-INF/src/test/at/gv/egovernment/moa/spss/slinterface/DataURLServlet.java b/spss.slinterface/WEB-INF/src/test/at/gv/egovernment/moa/spss/slinterface/DataURLServlet.java new file mode 100644 index 000000000..ff4cbbe59 --- /dev/null +++ b/spss.slinterface/WEB-INF/src/test/at/gv/egovernment/moa/spss/slinterface/DataURLServlet.java @@ -0,0 +1,83 @@ +/* + * Created on 25.11.2003 + * + * (c) Stabsstelle IKT-Strategie des Bundes + */ +package test.at.gv.egovernment.moa.spss.slinterface; + +import java.io.IOException; + +import javax.servlet.RequestDispatcher; +import javax.servlet.ServletException; +import javax.servlet.http.HttpServlet; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; + +import org.apache.log4j.Logger; + +import at.gv.egovernment.moa.spss.slinterface.Constants; +import at.gv.egovernment.moa.spss.slinterface.Utils; + +/** + * @author Gregor Karlinger (mailto:gregor.karlinger@cio.gv.at) + */ +public class DataURLServlet extends HttpServlet +{ + private static Logger logger_ = Logger.getLogger(Constants.LH_TEST_); + + public DataURLServlet() + { + super(); + } + + /* ---------------------------------------------------------------------------------------------------- */ + + public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException + { + // Read content form POST request + try + { + logger_.debug("Received POST request:"); + logger_.debug("Content type: \"" + request.getContentType() + "\"."); + byte[] contentBytes = Utils.readFromInputStream(request.getInputStream()); + String contentStr = new String(contentBytes); + logger_.debug("Content:\n" + new String(contentStr)); + + StringBuffer contentStrBuf = new StringBuffer(contentStr); + int startPos = 0; + while (startPos < contentStrBuf.length()) + { + if (contentStrBuf.charAt(startPos) == '<') + { + contentStrBuf.replace(startPos, startPos + 1, "<"); + startPos += 4; + } + startPos++; + } + contentStr = contentStrBuf.toString(); + + DataURLBean dataURLBean = new DataURLBean("Data URL Results", request.getContentType(), contentStr); + request.setAttribute("dataURLResult", dataURLBean); + } + catch (Exception e) + { + String message = "Failed to read content from POST request."; + logger_.error(message, e); + throw new ServletException(message, e); + } + + // Invoke response JSP page + try + { + response.setContentType("text/html"); + RequestDispatcher dispatcher = request.getRequestDispatcher("/pages/test/dataURL.jsp"); + dispatcher.include(request, response); + } + catch (IOException e) + { + String message = "Failed to send simple HTML answer to client."; + logger_.error(message, e); + throw new ServletException(message, e); + } + } +} |