import javax.servlet.*;
import javax.servlet.http.*;
import java.io.*;
import java.util.*;

public class Servlet1 extends HttpServlet {

    private static final String CONTENT_TYPE = "text/html";

    // Servlets command for Jetspeed
    private static final String SERVLETS = "/servlets";

    //Process the HTTP Get request
    public void doGet(HttpServletRequest request, HttpServletResponse response)
	throws ServletException, IOException
    {
        response.setContentType(CONTENT_TYPE);
        PrintWriter out = response.getWriter();

	String context = request.getContextPath();
	String servletRoot = request.getServletPath();
	if("/portal".equals(servletRoot))
	{
	    // this servlet has been called by the invoker inside the portal
	    // i.e. /jetspeed/portal/servlets/servlet1
	    // next servlet call must be similar.
	    servletRoot = context + servletRoot + SERVLETS;
	}
	else
	{
	    // the call has been made directly i.e. /jetspeed/servlet1
	    servletRoot = context;
	}
	String nextServlet = servletRoot + "/servlet2";

        out.println("<html><head><title>Servlet1</title></head><body>");
	out.println("<p>Hello!</p>");
	if( request.getParameter("x_name") == null ) {

	    out.println("<form method=\"get\" action=\"" + nextServlet + "\">");
	    out.println("<p>What is your name, please? ");
	    out.println("<input type=\"text\" name=\"x_name\" size=\"20\"><br>");
	    out.println("<input type=\"submit\" name=\"x_submit\" value=\"Continue\">");
	    out.println("</p></form>");
	}
        out.println("</body></html>");
    }
    //Process the HTTP Post request
    public void doPost(HttpServletRequest request, HttpServletResponse response)
	throws ServletException, IOException
    {
	doGet( request, response );
    }
}
