Methods Summary |
---|
private boolean | check(java.lang.String value)
if(value == null || value.equals(""))
return false;
return true;
|
private void | displayMessage(Message msg, java.io.PrintWriter out)
if (msg != null){
Object o = msg.getContent();
if ( o instanceof String){
handleStringMessage(msg,(String) o, out);
} else if ( o instanceof Multipart ) {
Multipart mpart = (Multipart) o;
Part part = null;
File file = null;
//FileWriter writer = null;
FileOutputStream stream = null;
InputStream input = null;
String fileName = "";
for (int i = 0; i < mpart.getCount(); i++){
part = mpart.getBodyPart(i);
Object partContent = part.getContent();
if (partContent instanceof String){
handleStringMessage(msg,(String) partContent, out);
} else {
fileName = part.getFileName();
if (! check(fileName)){
fileName = "file"+new java.util.Date().getTime();}
file = new File(attachFolder + System.getProperty("file.separator") + fileName);
//writer = new FileWriter(file);
stream = new FileOutputStream(file);
input = part.getInputStream();
int ch;
while ( (ch = input.read()) != -1){
//writer.write(ch);
stream.write(ch);
}
input.close();
out.println("Handled attachment named: "+fileName+"<br /><br />");
}// if
}//for
}//else if instanceof multipart
} else{
out.println("<h2>The received email message returned null.</h2>");
}// if msg != null
|
public void | handleMessages(javax.servlet.http.HttpServletRequest request, java.io.PrintWriter out)
HttpSession httpSession = request.getSession();
String user = (String) httpSession.getAttribute("user");
String password = (String) httpSession.getAttribute("pass");
String popAddr = (String) httpSession.getAttribute("pop");
Store popStore = null;
Folder folder = null;
if (! check(popAddr))
popAddr = AttachBean.DEFAULT_SERVER;
try {
if ((! check(user)) || (! check(password)))
throw new ServletException(
"A valid username and password is required to check email.");
Properties properties = System.getProperties();
Session session = Session.getDefaultInstance(properties);
popStore = session.getStore("pop3");
popStore.connect(popAddr, user, password);
folder = popStore.getFolder("INBOX");
if (! folder.exists())
throw new ServletException("An 'INBOX' folder does not exist for the user.");
folder.open(Folder.READ_ONLY);
Message[] messages = folder.getMessages();
int msgLen = messages.length;
if (msgLen == 0)
out.println("<h2>The INBOX folder does not yet contain any email messages.</h2>");
for (int i = 0; i < msgLen; i++){
displayMessage(messages[i], out);
out.println("<br /><br />");
}//for
} catch (Exception exc) {
out.println("<h2>Sorry, an error occurred while accessing the email messages.</h2>");
out.println(exc.toString());
} finally {
try{
if (folder != null)
folder.close(false);
if (popStore != null)
popStore.close();
} catch (Exception e) { }
}
|
private void | handleStringMessage(javax.mail.Part part, java.lang.String emailContent, java.io.PrintWriter out)
if (part instanceof Message){
Message msg = (Message) part;
if (msg.getFrom()[0] instanceof InternetAddress){
out.println(
"Message received from: " + ((InternetAddress) msg.getFrom()[0]).getAddress() +"<br />");
}
out.println("Message content type: " + msg.getContentType() +"<br />");
out.println("Message content: " + emailContent +"<br />");
}
|
public void | sendMessage(javax.servlet.http.HttpServletRequest request, java.io.PrintWriter out)
setSmtpHost( request.getParameter("smtp") );
setFrom(request.getParameter("from"));
setTo(request.getParameter("to"));
setSubject(request.getParameter("subject"));
setContent(request.getParameter("content"));
Properties properties = System.getProperties();
properties.put("mail.smtp.host", smtpHost);
Session session = Session.getDefaultInstance(properties);
Message mailMsg = new MimeMessage(session);
InternetAddress[] addresses = null;
try {
if (to != null) {
addresses = InternetAddress.parse(to, false);
mailMsg.setRecipients(Message.RecipientType.TO, addresses);
} else {
throw new MessagingException("The mail message requires a 'To' address.");
}
if (from != null) {
mailMsg.setFrom(new InternetAddress(from));
} else {
throw new MessagingException("The mail message requires a valid 'From' address.");
}
mailMsg.setSubject(subject);
mailMsg.setText(content);
Transport.send(mailMsg);
out.println("<h2>The message was sent successfully</h2>");
} catch (Exception exc) {
out.println("<h2>Sorry, an error occurred while sending the message.</h2>");
out.println(exc.toString());
}
|
public void | setAttachFolder(java.lang.String folder)
this.attachFolder = folder;
|
public void | setContent(java.lang.String content)
if (check(content)){
this.content = content;
} else {
this.content = DEFAULT_CONTENT;
}
|
public void | setFrom(java.lang.String from)
if (check(from)){
this.from = from;
} else {
this.from = DEFAULT_FROM;
}
|
public void | setSmtpHost(java.lang.String host)
if (check(host)){
this.smtpHost = host;
} else {
this.smtpHost = DEFAULT_SERVER;
}
|
public void | setSubject(java.lang.String subject)
if (check(subject)){
this.subject = subject;
} else {
this.subject = DEFAULT_SUBJECT;
}
|
public void | setTo(java.lang.String to)
if (check(to)){
this.to = to;
} else {
this.to = DEFAULT_TO;
}
|