Java email方面的问题 我用Java做了java web email,可是在读取邮件的时候出现下面这个问题,DEBUG POP3: server doesn't support TOP, disabling it请教高手? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 public static void readEmail(String filePath) { /* * 链接邮箱 */ String emailUserName = "**@**.com"; String userPassword = "******"; Security.addProvider(new com.sun.net.ssl.internal.ssl.Provider()); Properties props = System.getProperties(); props.setProperty("mail.pop3.socketFactory.fallback", "false"); props.setProperty("mail.pop3.port", "25"); props.setProperty("mail.pop3.socketFactory.port", "25"); props.setProperty("mail.imap.socketFactory.fallback", "false"); props.setProperty("mail.imap.port", "143"); props.setProperty("mail.imap.socketFactory.port", "143"); Session session = Session.getDefaultInstance(props, null); URLName urln = new URLName("imap", "mail.mingoe.com", 143, null, emailUserName, userPassword); Store store; try { store = session.getStore(urln); store.connect(); /* * 读取邮件 */ Folder inbox = store.getFolder("Inbox"); inbox.open(Folder.READ_WRITE); FetchProfile profile = new FetchProfile(); profile.add(FetchProfile.Item.ENVELOPE); if (inbox.getMessageCount() > 0) { Message[] messages = inbox.getMessages(); String imgPath = null; HibernateFaceImple hibernateFaceImple = HibernateFaceFactory.getHibernateFace(); for (int i = 0; i < messages.length; i++) { imgPath = PHONE_DIR + "\\"; MimeMessage mimeMessageTemp = (MimeMessage)messages[i]; MimeMessage mimeMessage = new MimeMessage(mimeMessageTemp); try { if (mimeMessage.getContentType().indexOf("multipart/mixed") != -1) { Address[] addresses = mimeMessage.getFrom(); Address address = addresses[0]; String fileName = getEmailName(address.toString()); String strFileName = filePath + fileName + "_" + new Date().getTime() + ".jpg"; imgPath = imgPath + fileName + "_" + new Date().getTime() + ".jpg"; List<?> userNames = UserFaceImple.getInstance().getUserNames(hibernateFaceImple, fileName, Constants.EmailState_Actived); if (userNames == null || userNames.size() == 0) { continue; } MimeMultipart mm = (MimeMultipart)mimeMessage.getContent(); BodyPart bp = mm.getBodyPart(1); BASE64DecoderStream stream64 = (BASE64DecoderStream)bp.getContent(); byte[] fileByte = new byte[1024]; stream64.read(fileByte); InputStream in = bp.getInputStream(); FileOutputStream out = new FileOutputStream(strFileName); int data; while ((data = in.read()) != -1) { out.write(data); } in.close(); out.close(); Transaction transaction = hibernateFaceImple.openTransaction(); } } catch (IOException e) { e.printStackTrace(); } } inbox.close(true); } else { throw new RuntimeException("No any new mail!"); } } catch (Exception e) { e.printStackTrace(); } } public static void readEmail(String filePath) {/** 链接邮箱*/String emailUserName = "**@**.com";//邮箱地址String userPassword = "******";//邮箱密码Security.addProvider(new com.sun.net.ssl.internal.ssl.Provider());Properties props = System.getProperties();props.setProperty("mail.pop3.socketFactory.fallback", "false");props.setProperty("mail.pop3.port", "25");props.setProperty("mail.pop3.socketFactory.port", "25");props.setProperty("mail.imap.socketFactory.fallback", "false");props.setProperty("mail.imap.port", "143");props.setProperty("mail.imap.socketFactory.port", "143");Session session = Session.getDefaultInstance(props, null);URLName urln = new URLName("imap", "mail.mingoe.com", 143, null, emailUserName, userPassword);Store store;try {store = session.getStore(urln);store.connect();/** 读取邮件*/Folder inbox = store.getFolder("Inbox");inbox.open(Folder.READ_WRITE);FetchProfile profile = new FetchProfile();profile.add(FetchProfile.Item.ENVELOPE);if (inbox.getMessageCount() > 0) {Message[] messages = inbox.getMessages();String imgPath = null;HibernateFaceImple hibernateFaceImple = HibernateFaceFactory.getHibernateFace();for (int i = 0; i < messages.length; i++) {imgPath = PHONE_DIR + "\\";MimeMessage mimeMessageTemp = (MimeMessage)messages[i];MimeMessage mimeMessage = new MimeMessage(mimeMessageTemp);try {if (mimeMessage.getContentType().indexOf("multipart/mixed") != -1) {Address[] addresses = mimeMessage.getFrom();Address address = addresses[0];String fileName = getEmailName(address.toString());String strFileName = filePath + fileName + "_" + new Date().getTime() + ".jpg";imgPath = imgPath + fileName + "_" + new Date().getTime() + ".jpg";List<?> userNames = UserFaceImple.getInstance().getUserNames(hibernateFaceImple,fileName, Constants.EmailState_Actived);if (userNames == null || userNames.size() == 0) {continue;}MimeMultipart mm = (MimeMultipart)mimeMessage.getContent();BodyPart bp = mm.getBodyPart(1);BASE64DecoderStream stream64 = (BASE64DecoderStream)bp.getContent();byte[] fileByte = new byte[1024];stream64.read(fileByte);InputStream in = bp.getInputStream();FileOutputStream out = new FileOutputStream(strFileName);int data;while ((data = in.read()) != -1) {out.write(data);}in.close();out.close();Transaction transaction = hibernateFaceImple.openTransaction();}} catch (IOException e) {e.printStackTrace();}}inbox.close(true);} else {throw new RuntimeException("No any new mail!");}} catch (Exception e) {e.printStackTrace();}} 加密机请求消息封装方法问题--急!!! 求一个struts2+spring+hibernate项目源码,学习用 jsp自定义标签传值问题 新手上路,有工作吗?????(十万火急!!!!!!!!!!) 菜鸟问题 Apache与Tomcat的安装及整合(100) 小弟初学JSP,TOMCAT总是提示404错误,请帮忙 用weblogic的wtc怎样调tuxedo的服务啊?请举例说明。 碰到了一个奇怪问题,请帮忙. Mybatis批量插入数据,三万条数据左右卡死,求教 关于cvs使用的一点问题 Junit是hibernate里的东西吗?
/*
* 链接邮箱
*/
String emailUserName = "**@**.com";
String userPassword = "******"; Security.addProvider(new com.sun.net.ssl.internal.ssl.Provider());
Properties props = System.getProperties();
props.setProperty("mail.pop3.socketFactory.fallback", "false");
props.setProperty("mail.pop3.port", "25");
props.setProperty("mail.pop3.socketFactory.port", "25"); props.setProperty("mail.imap.socketFactory.fallback", "false");
props.setProperty("mail.imap.port", "143");
props.setProperty("mail.imap.socketFactory.port", "143"); Session session = Session.getDefaultInstance(props, null); URLName urln = new URLName("imap", "mail.mingoe.com", 143, null, emailUserName, userPassword);
Store store;
try {
store = session.getStore(urln);
store.connect(); /*
* 读取邮件
*/
Folder inbox = store.getFolder("Inbox");
inbox.open(Folder.READ_WRITE);
FetchProfile profile = new FetchProfile();
profile.add(FetchProfile.Item.ENVELOPE); if (inbox.getMessageCount() > 0) {
Message[] messages = inbox.getMessages();
String imgPath = null;
HibernateFaceImple hibernateFaceImple = HibernateFaceFactory.getHibernateFace();
for (int i = 0; i < messages.length; i++) {
imgPath = PHONE_DIR + "\\";
MimeMessage mimeMessageTemp = (MimeMessage)messages[i];
MimeMessage mimeMessage = new MimeMessage(mimeMessageTemp);
try {
if (mimeMessage.getContentType().indexOf("multipart/mixed") != -1) {
Address[] addresses = mimeMessage.getFrom();
Address address = addresses[0];
String fileName = getEmailName(address.toString());
String strFileName = filePath + fileName + "_" + new Date().getTime() + ".jpg";
imgPath = imgPath + fileName + "_" + new Date().getTime() + ".jpg"; List<?> userNames = UserFaceImple.getInstance().getUserNames(hibernateFaceImple,
fileName, Constants.EmailState_Actived);
if (userNames == null || userNames.size() == 0) {
continue;
} MimeMultipart mm = (MimeMultipart)mimeMessage.getContent();
BodyPart bp = mm.getBodyPart(1);
BASE64DecoderStream stream64 = (BASE64DecoderStream)bp.getContent();
byte[] fileByte = new byte[1024];
stream64.read(fileByte);
InputStream in = bp.getInputStream();
FileOutputStream out = new FileOutputStream(strFileName);
int data;
while ((data = in.read()) != -1) {
out.write(data);
}
in.close();
out.close();
Transaction transaction = hibernateFaceImple.openTransaction(); }
} catch (IOException e) {
e.printStackTrace();
}
}
inbox.close(true);
} else {
throw new RuntimeException("No any new mail!");
} } catch (Exception e) {
e.printStackTrace();
} }
/*
* 链接邮箱
*/
String emailUserName = "**@**.com";//邮箱地址
String userPassword = "******";//邮箱密码Security.addProvider(new com.sun.net.ssl.internal.ssl.Provider());
Properties props = System.getProperties();
props.setProperty("mail.pop3.socketFactory.fallback", "false");
props.setProperty("mail.pop3.port", "25");
props.setProperty("mail.pop3.socketFactory.port", "25");props.setProperty("mail.imap.socketFactory.fallback", "false");
props.setProperty("mail.imap.port", "143");
props.setProperty("mail.imap.socketFactory.port", "143");Session session = Session.getDefaultInstance(props, null);URLName urln = new URLName("imap", "mail.mingoe.com", 143, null, emailUserName, userPassword);
Store store;
try {
store = session.getStore(urln);
store.connect();/*
* 读取邮件
*/
Folder inbox = store.getFolder("Inbox");
inbox.open(Folder.READ_WRITE);
FetchProfile profile = new FetchProfile();
profile.add(FetchProfile.Item.ENVELOPE);if (inbox.getMessageCount() > 0) {
Message[] messages = inbox.getMessages();
String imgPath = null;HibernateFaceImple hibernateFaceImple = HibernateFaceFactory.getHibernateFace();
for (int i = 0; i < messages.length; i++) {
imgPath = PHONE_DIR + "\\";MimeMessage mimeMessageTemp = (MimeMessage)messages[i];
MimeMessage mimeMessage = new MimeMessage(mimeMessageTemp);try {
if (mimeMessage.getContentType().indexOf("multipart/mixed") != -1) {
Address[] addresses = mimeMessage.getFrom();
Address address = addresses[0];
String fileName = getEmailName(address.toString());
String strFileName = filePath + fileName + "_" + new Date().getTime() + ".jpg";
imgPath = imgPath + fileName + "_" + new Date().getTime() + ".jpg";List<?> userNames = UserFaceImple.getInstance().getUserNames(hibernateFaceImple,
fileName, Constants.EmailState_Actived);
if (userNames == null || userNames.size() == 0) {
continue;
}MimeMultipart mm = (MimeMultipart)mimeMessage.getContent();
BodyPart bp = mm.getBodyPart(1);
BASE64DecoderStream stream64 = (BASE64DecoderStream)bp.getContent();
byte[] fileByte = new byte[1024];
stream64.read(fileByte);InputStream in = bp.getInputStream();
FileOutputStream out = new FileOutputStream(strFileName);
int data;
while ((data = in.read()) != -1) {
out.write(data);
}
in.close();
out.close();Transaction transaction = hibernateFaceImple.openTransaction();}
} catch (IOException e) {
e.printStackTrace();
}
}
inbox.close(true);
} else {
throw new RuntimeException("No any new mail!");
}} catch (Exception e) {
e.printStackTrace();
}}