Hello,

I've been working out the applet program since last
night but still could not get it correct. I think that
the codeBase variable path that was initialised in the
applet program is not correct. I put the
LoginApplet.class in
C:\jakarta-tomcat-4.1.31\webapps\myapp\applets. It's
just a matter of writing the codeBase variable the
correct way. Can anyone please give me any
suggestions? Please Help Me! Hoping for a reply. Thank
you.

TEH NORANIS   
--- Teh Noranis Mohd Aris <[EMAIL PROTECTED]>
wrote:

> Hi,
>    
>   I'm sorry, I didn't realize about the attachment
> capability for this mailing list. However here are
> the programs that I attached previously. Hope
> someone can help me out. Thank you.
>    
>   1. THE SERVLET PROGRAM:
>    
>   package myapp;
>   import javax.servlet.*;
> import javax.servlet.http.*;
> import java.io.ByteArrayOutputStream;
> import java.io.DataInputStream;
> import java.io.DataOutputStream;
> import java.io.IOException;
> import java.io.PrintWriter;
> import java.util.Hashtable;
>   public class AppletLogin extends HttpServlet
> {
>  public static String USER_KEY =
> "ServletLogin.user";
>  
>  static Hashtable crossRef = new Hashtable();
>  
>  public void doGet(HttpServletRequest req,
> HttpServletResponse resp)
>    throws ServletException, java.io.IOException
>    {
>     resp.setContentType("text/html");
>     
>     PrintWriter out = resp.getWriter();
>     
>     resp.setHeader("Expires", "Tues, 01 Jan 1980
> 00:00:00 GMT");
>     
>     HttpSession session = req.getSession();
>     String user = (String)
> session.getAttribute(USER_KEY);
>     
>     if (user == null)
>     {
>         user = (String)
> crossRef.get(session.getId());
>         
>         if (user != null)
>         {
>          session.setAttribute(USER_KEY, user);
>          crossRef.remove(session.getId());
>         }
>     
>      
>     }
>    
>    if (user == null)
>    {
>     login(out, req, resp);
>     return;
>    }
>    
>    out.println("<html>");
>    out.println("<head>");
>    out.println("<title>Welcome</title>");
>    out.println("</head>");
>    out.println("<body>");
>    out.println("<center><h2>Welcome to our
> site!</h2>");
>    out.println("<br>");
>    out.println("More cool stuff coming soon...");
>    out.println("</center>");
>    
>    out.println("</body>");
>    out.println("</html>");
>    out.flush();     
>  }
>  
>  public void doPost(HttpServletRequest req,
> HttpServletResponse resp)
>    throws ServletException, java.io.IOException
>  {
>   DataInputStream in = new
> DataInputStream(req.getInputStream());
>   
>   resp.setContentType("application/octet-stream");
>   
>   ByteArrayOutputStream byteOut = new
> ByteArrayOutputStream();
>   
>   DataOutputStream out = new
> DataOutputStream(byteOut);
>   
>   String sessionId = in.readUTF();
>   
>   String user = in.readUTF();
>   String password = in.readUTF();
>     
>   if (!validUser(user, password))
>   {
>    out.writeBoolean(false);
>   }
>   else
>   {
>    crossRef.put(sessionId, user);
>    out.writeBoolean(true);
>    
>    String nextPage = req.getScheme() + "://" +
>    
>    req.getServerName() + ":" +
>    req.getServerPort() +
>    req.getRequestURI();
>    
>    out.writeUTF(nextPage);
>   }
>   
>   out.flush();
>   
>   byte[] buf = byteOut.toByteArray();
>   
>   resp.setContentLength(buf.length);
>   
>   ServletOutputStream servletOut =
> resp.getOutputStream();
>   
>   servletOut.write(buf);
>   servletOut.close();
>  }
>   
>   protected void login (PrintWriter out, 
>                         HttpServletRequest req, 
>                         HttpServletResponse resp)
>     throws java.io.IOException
>   {
>    HttpSession session = req.getSession();
>    
>    out.println("<html>");
>    out.println("<head>");
>    out.println("<title>Login</title>");
>    out.println("<center><h2>Welcome! Please
> login</h2>");
>    out.println("<applet width=300 height=120");
>    out.println("name=\"LoginApplet\"");
>    out.println("codebase=\"" + req.getContextPath()
> + "/applets/\"");
>   
> out.println("code=\"webide.applets.LoginApplet\">");
>    out.println("<param name=\"servlet\" value=\"" +
>                req.getRequestURI() + "\">");
>       out.println("<param name=\"id\" value=\"" +
>                   session.getId() + "\">");
>       out.println("</applet>");
>       out.println("</center></body></html>");       
>  
>   }
>   
>   protected boolean validUser(String username,
> String password)
>   {
>    boolean valid = false;
>    
>    if ((username != null) && (username.length() >
> 0))
>    {
>     valid = username.equals(password);
>    }
>    
>    return valid;
>    
>   } 
>      
> }
>    
>   2. THE APPLET PROGRAM:
>    
>   package myapp.applets;
>   import java.applet.*;
> import java.awt.*;
> import java.io.*;
> import java.net.*;
>   public class LoginApplet extends Applet 
> {
>  TextField username;
>  TextField password;
>  Label message;
>  Button login;
>  String codeBase;
>  String servlet;
>  String nextDoc;
>  String sessionId;
>  
>  public void init() 
>  {
>   codeBase = "" + getCodeBase();
>   servlet = getParameter("servlet");
>   
>   if (servlet != null)
>   {
>    if (servlet.startsWith("/") &&
>        codeBase.endsWith("/"))
>        {
>         codeBase =
> codeBase.substring(0,codeBase.length() - 1);
> 
=== message truncated ===



 
____________________________________________________________________________________
Finding fabulous fares is fun.  
Let Yahoo! FareChase search your favorite travel sites to find flight and hotel 
bargains.
http://farechase.yahoo.com/promo-generic-14795097

---------------------------------------------------------------------
To start a new topic, e-mail: users@tomcat.apache.org
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to