Source Code for Cookie Example

#include <sl/java.hpp>
#include <servlet/servlet_headers.h>
using namespace sl::java::lang;
using namespace sl::java::io;
using namespace sl::java::util;
using namespace servlet;
using namespace servlet::http;

class CookieExample : public HttpServlet {
public :
    void doGet(HttpServletRequest &request, HttpServletResponse &response)
        throw (ServletException)
    {
        response.setContentType("text/html;charset=ISO-8859-1");

        PrintWriter out = response.getWriter();
        
        // print out cookies

        std::vector<Cookie> cookies = request.getCookies();
        if (cookies.size()) {
            out.println("Your browser is sending the following cookies:");
            std::vector::iterator i = cookies.begin();
            for (; i != cookies.end(); i++) {
                out.println("Cookie Name : " + i->getName());
                out.println("Cookie Value: " + i->getValue());
            }
        }

        // set a cookie

        std::string cookieName  = request.getParameter("cookiename");
        std::string cookieValue = request.getParameter("cookievalue");
        if (cookieName.length() && cookieValue.length()) {
            Cookie cookie(cookieName, cookieValue);
            response.addCookie(cookie);
            out.println("You just send the following cookie to your browser:");
            out.println("<br>");
            out.println("Name:  " + cookieName + "<br>");
            out.println("Value: " + cookieValue);
        }
    }
};

SL_REGIST_LODABLE_CLASS(CookieExample);