1 39 40 package demo; 41 42 import java.io.*; 43 import javax.mail.*; 44 import javax.mail.internet.*; 45 import javax.servlet.*; 46 import javax.servlet.http.*; 47 48 54 public class AttachmentServlet extends HttpServlet { 55 56 59 public void doGet(HttpServletRequest request, HttpServletResponse response) 60 throws IOException, ServletException { 61 62 HttpSession session = request.getSession(); 63 ServletOutputStream out = response.getOutputStream(); 64 int msgNum = Integer.parseInt(request.getParameter("message")); 65 int partNum = Integer.parseInt(request.getParameter("part")); 66 MailUserBean mailuser = (MailUserBean)session.getAttribute("mailuser"); 67 68 if (mailuser.isLoggedIn()) { 70 try { 71 Message msg = mailuser.getFolder().getMessage(msgNum); 72 73 Multipart multipart = (Multipart)msg.getContent(); 74 Part part = multipart.getBodyPart(partNum); 75 76 String sct = part.getContentType(); 77 if (sct == null) { 78 out.println("invalid part"); 79 return; 80 } 81 ContentType ct = new ContentType(sct); 82 83 response.setContentType(ct.getBaseType()); 84 InputStream is = part.getInputStream(); 85 int i; 86 while ((i = is.read()) != -1) 87 out.write(i); 88 out.flush(); 89 out.close(); 90 91 } catch (MessagingException ex) { 92 throw new ServletException(ex.getMessage()); 93 } 94 } else { 95 getServletConfig().getServletContext(). 96 getRequestDispatcher("/index.html"). 97 forward(request, response); 98 } 99 } 100 } 101 102
| Popular Tags
|