webapp.README.txt
上传用户:dinglihq
上传日期:2013-02-04
资源大小:99958k
文件大小:5k
源码类别:

Java编程

开发平台:

Java

  1. This demo illustrates the use of JavaMail APIs in a 3-tiered web 
  2. application. It must be deployed on a web server that supports
  3. servlet and JSP-based web applications (e.g. Tomcat) using at least
  4. J2SE 1.3 and Servlet 2.2.
  5. +-----------+        +-----------+        +-----------+
  6. |   IMAP    |        |           |        |           |
  7. |  Server   |<-IMAP->| JavaMail  |<-HTTP->|    WWW    |
  8. +-----------+        | Web app   |--HTML->|  Browser  |
  9. |   SMTP    |<-SMTP->|           |        |           |
  10. |  Server   |        |           |        |           |
  11. +-----------+        +-----------+        +-----------+
  12. The JavaMail Web application supports the following functionality:
  13. * login to an IMAP server
  14. * list all the messages in the INBOX folder
  15. * view the selected message
  16. * compose and send a message
  17. It is comprised of an HTML document and several Web components 
  18. (servlets, JSP pages and custom tags) and is packaged in a Web 
  19. archive with the following contents:
  20. index.html
  21. login.jsp
  22. folders.jsp
  23. messageheaders.jsp
  24. messagecontent.jsp
  25. compose.jsp
  26. send.jsp
  27. errorpage.jsp
  28. errordetails.jsp
  29. logout.jsp
  30. WEB-INF/
  31. WEB-INF/classes/
  32. WEB-INF/classes/demo/AttachmentServlet.class
  33. WEB-INF/classes/demo/FilterServlet.class
  34. WEB-INF/classes/demo/MailUserBean.class
  35. WEB-INF/lib/
  36. WEB-INF/lib/jtl.jar
  37. WEB-INF/web.xml
  38. The collection of .html and .jsp files provide the client-side view 
  39. of the JavaMail Web application. 
  40.   index.html
  41.       |
  42.   login.jsp
  43.       |
  44.          folders.jsp
  45.       |
  46.       messageheaders.jsp
  47.       |
  48.              / 
  49.             /   
  50.     compose.jsp  messagecontent.jsp
  51.          |
  52.      send.jsp
  53. The WEB-INF/web.xml file contains the web applications deployment
  54. descriptor. It is an XML document that contains configuration and
  55. deployment information for the application.
  56. As per the Servlet specification, the WEB-INF/classes directory
  57. contains servlet and utility classes used by the web application.
  58. The FilterServlet acts as the Controller of the JavaMail Web 
  59. application. All requests are mapped to this servlet. It checks
  60. to see that the user is logged in to the server before forwarding the
  61. request to the appropriate JSP page. The AttachmentServlet is used
  62. to render non-text attachments and the MailUserBean is a utility class
  63. used to maintain information about the mail user.
  64. The WEB-INF/lib directory (also defined in the Servlet specification)
  65. contains the Java archive file for the javamail custom tag library.
  66. The follow tags are furnished in the javamail tag library:
  67. <javamail:sendmail 
  68.  mailuser="mailuserbean"
  69.  [host="hostname"] [port="port"]
  70.  sender="email address" recipient="email address" 
  71.  [cc="email address"] [bcc="email address"] [subject="subject"]>
  72. body of the message
  73. </javamail:sendmail>
  74. Description: Used to send messages.
  75. <javamail:message id="messageinfo"
  76.  folder="folder"
  77.  num="message number"/>
  78. Description: Used to read a single message.
  79. <javamail:listmessages id="mailinfobean"
  80.  folder="folder"
  81. </javamail:listmessages>
  82. Description: Used to iterate through list of messages. The body of the 
  83. tag is repeated for each message in the list.
  84. Building and Packaging the JavaMail Web application
  85. All source for this demo can be found in the following directories:
  86. src/classes
  87. src/docroot
  88. src/taglib
  89. Build scripts (build.sh and build.bat) are provided for building and
  90. packaging the demo. Before executing the build scripts, be sure that 
  91. the following are in your CLASSPATH:
  92. mail.jar the JavaMail jar file
  93. activation.jar the JAF jar file
  94. servlet.jar the servlet/JSP jar file
  95. The following steps are performed when building and packaging the demo.
  96. 1. Create a directory named "src/docroot/WEB-INF/classes/demo".
  97. 2. Create a directory named "src/docroot/WEB-INF/lib".
  98. 3. Compile the files from the "src/classes/demo" directory and add them
  99.    to "src/docroot/WEB-INF/classes/demo".
  100. 4. Compile the files from the "src/tablib" directory.
  101. 5. Create an archive (jtl.jar) of the taglib classes and add it
  102.    to "src/docroot/WEB-INF/lib".
  103. 6. Create a web archive file of the contents of "src/docroot" (and all
  104.    of its sub-directories).
  105. (For a list of the contents of the resulting web archive,
  106.  see the beginning of this document.)
  107. A note on sending mail
  108. In order to send mail using the JavaMail Web App, it is necessary to identify
  109. an SMTP host. This can be accomplished in a couple of ways.
  110. 1. Use the TOMCAT_OPTS environment variable.
  111.    Add the following to the TOMCAT_OPTS environment variable:
  112. -Dmail.smtp.host=yourSMTPmailservername
  113.    Restart your web server.
  114. 2. Modify the send.jsp file and update the javamail.war file:
  115.    Add the following parameter to the <javamail:sendmail> tag:
  116. host="yourSMTPmailservername"
  117.    Repackage the javamail.war file to include the modified send.jsp file.