This tool provides functionality of the optimal features of the
PINE mail tool so far.
Basic Functionality:
- Read, Modify and Update INBOX.
- Read, and Modify Folders; and save messages into Folders.
- Compose, Forward, and Reply to mail messages.
Extra Features:
- Display of sender's image, and the organization's logo of the currently selected mail.
- Font style and size customization.
- Gallery of icons related to the software industry.
- Online Help.
Future Support:
- Mime Parsing of the multi-part mime mail messages.
- Database support, to provide keyword search and remove redundancy.
- Evaluation of the contents of the mail to provide rating (Good, Bad and Ugly).
- Audio support.
Implementation:
Conforming to the internet standards, this applet has been implemented in java.
The WebMail applet contacts Jeeves, a java based server for all purposes. requests, and replies. The methodolgy used to get the incoming mails is contacting the IMAP server which is usually the default "postoffice" in our LAN setup and querying it to get the mails in the "INBOX". The response in the IMAP format from the server is parsed and stored in a custom storage format. This storage format is passed as an object from the Jeeves server to the mail applet.
The mail folders created by the user to sort and store the mails are parsed by a separate mail parser and here too, the response is stored in the same custom storage format. This, again as before, is sent to the mail applet on demand.
About Jeeves -- the Java Server:
Jeeves is JavaSoft's Internet server and framework for an extensible
family of Java-based network services. Jeeves defines the
Java-based Servlet APIs for the quick and easy creation, installation,
administration and security.
Servlets are Java objects that
extend the functionality of information servers, such as HTTP or Web
servers. A plain HTML document that a Web server retrieves is
static. A servlet, on the other hand, is executed for every request so
that it can output dynamic information. Servlets can be thought of as
server side applets. Like applets, servlets are also identified by a
URL address. Servlets are started when the server starts up, or just
before they are used.
An example scenario For Use ::
Accessing a database from a Web server
- Servlet initializes itself.
- Request comes from client.
- Server looks at the URL and invokes the servlet.
- The servlet gets arguments from ServletRequest.
- The servlet connects to the database (using JDBC), gets the necessary information, generates a dynamic response using the html package, and writes it out using functions in ServletResponse.
The core classes of WebMail have been developed as servlets which
after initialization, contact the mail server by sending requests and
get back incoming mails, and perform functions of deleting messages
etc..
References and Technologies used:
- Jeeves
- HTTPD server written entirely in Java and
compliant with the HTTP1.0 protocol. Functionality of Jeeves can be
enhanced by the user by writing new resources (servlets).
- Graphics Java Toolkit (GJT)
- Enhanced over Java's
Abstract Window Toolkit (java.awt), supports many jazzy
features. Image buttons have been implemented in WebMail using GJT.
- Internet Message Access Protocol (IMAP)
- Protocol used to get mails on demand from a remote mail server.
- RFC822
- This standard specifies a syntax for text messages that are sent among computer users, within the framework of "electronic mail".
- PINE Is Not Elm (PINE)
- E-Mail toolkit with character based user interface, developed by University of Washington.
Related Efforts:
- Netscape Communicator
It is a single product providing a complete set of tools needed by
users for effective everyday communication. Among other tools, it is
comprised of an enterprise-ready email client package called the
Netscape Messenger based on open
standards. It provides features such as rich text mail, searching, integrated HTML editing, security, directory access, and support for mobile users. It is fully POP3, SMTP and IMAP4 compliant.
- OSF WebMail
- HotJava Views
HotJava Views is a Java-based user environment that provides
intuitive "push-button" access to Java applications across the
enterprise. It includes e-mail client - Mail View. It is a simple
IMAP4/SMTP compliant mail client that enables e-mail messages to be
edited, sent and saved-all while providing extensive integration with
other tools. For example, users can receive calendar attachments in
e-mail and automatically schedule them in their calendar, or click on a live URL attachment to view the associated Web pages using an HTML viewer.
System Requirements:
- To run the applet: Any internet browser supporting Java VM, like Netscape 2.0 and above.
- To run a personal server: Any platform which supports Java, like AIX, Solaris, WindowsNT, Windows95.
For Question or Comments, contact Sangeeta Aggarwal sangeeta@npac.syr.edu