无法访问所有';gmail&x27;在java中使用pop3的消息
我的java邮件接收程序 我在java程序中使用mail.1.4.jar和激活jar 使用JavaMail API接收电子邮件需要遵循5个步骤。 他们是:无法访问所有';gmail&x27;在java中使用pop3的消息,java,email,Java,Email,我的java邮件接收程序 我在java程序中使用mail.1.4.jar和激活jar 使用JavaMail API接收电子邮件需要遵循5个步骤。 他们是: 获取会话对象 创建POP3存储对象并连接pop服务器 创建文件夹对象并将其打开 从数组中的文件夹中检索邮件并将其打印 关闭存储和文件夹对象 这是我的密码: public class receive_Email { public static void main(String[] args) { String ho
获取会话对象
创建POP3存储对象并连接pop服务器
创建文件夹对象并将其打开
从数组中的文件夹中检索邮件并将其打印
关闭存储和文件夹对象
这是我的密码:
public class receive_Email {
public static void main(String[] args) {
String host="pop.gmail.com";
String mailStorType="pop3";
String Username="***********@gmail.com";
String Password="*******";
receiveMail(host, mailStorType, Username, Password);
}
// method for Receive email.....!
public static void receiveMail(String pop3Host,String sotreType,String user,String password){
/// 1) get session object
Properties props=new Properties();
props.put("mail.pop3.host", pop3Host );
Session sessEmail=Session.getDefaultInstance(props);
// 2) create pop3 store object and connect with pop server
try {
POP3Store emailStore=(POP3Store)sessEmail.getStore(sotreType);
emailStore.connect(user,password);
// 3) create Folder object and open it
Folder emailFolder=emailStore.getFolder("INBOX");
emailFolder.open(Folder.READ_ONLY);
// 4) Retrieve the messages in the folder and display it
Message[] messages=emailFolder.getMessages();
int i=0;
for(Message m : messages){
System.out.println("------------------------------------------------");
System.out.println("Email Number : "+m.getMessageNumber());
System.out.println("Subject : "+m.getSubject());
System.out.println("From : "+m.getFrom());
try {
System.out.println("Subject : "+m.getContent().toString());
} catch (IOException e) {
System.out.println("No messages are available.............!");
e.printStackTrace();
}
} // end for loop
// 5) Close the Folder and email store
emailFolder.close(false);
emailStore.close();
} catch (NoSuchProviderException e) {
e.printStackTrace();
} catch (MessagingException e) {
e.printStackTrace();
}
}
}
我得到的例外是:
javax.mail.MessagingException: Connect failed;
nested exception is:
java.net.ConnectException: Connection timed out: connect
at com.sun.mail.pop3.POP3Store.protocolConnect(POP3Store.java:148)
at javax.mail.Service.connect(Service.java:275)
at javax.mail.Service.connect(Service.java:156)
at javax.mail.Service.connect(Service.java:176)
at com.mwh.DBConnect.receive_Email.receiveMail(receive_Email.java:37)
at com.mwh.DBConnect.receive_Email.main(receive_Email.java:22)
Caused by: java.net.ConnectException: Connection timed out: connect
.....
..
任何关于消除此异常的建议。。。提前谢谢 我很确定GMail只接受SSL连接。请尝试以下代码:
import com.sun.mail.pop3.POP3Store;
import javax.mail.Folder;
import javax.mail.Message;
import javax.mail.MessagingException;
import javax.mail.NoSuchProviderException;
import javax.mail.Session;
import java.io.IOException;
import java.util.Properties;
public class receive_Email {
public static void main(String[] args) {
String host="pop.gmail.com";
int port=995;
String mailStorType="pop3";
String Username="***********@gmail.com";
String Password="*******";
receiveMail(host, port, mailStorType, Username, Password);
}
// method for Receive email.....!
public static void receiveMail(String pop3Host, int port, String sotreType,String user,String password){
/// 1) get session object
Properties props = new Properties();
props.put("mail.pop3.ssl.enable", "true"); // Use SSL
Session sessEmail = Session.getInstance(props);
// 2) create pop3 store object and connect with pop server
try {
POP3Store emailStore = (POP3Store) sessEmail.getStore(sotreType);
emailStore.connect(pop3Host, port, user, password);
// 3) create Folder object and open it
Folder emailFolder=emailStore.getFolder("INBOX");
emailFolder.open(Folder.READ_ONLY);
// 4) Retrieve the messages in the folder and display it
Message[] messages=emailFolder.getMessages();
for(Message m : messages){
System.out.println("------------------------------------------------");
System.out.println("Email Number : "+m.getMessageNumber());
System.out.println("Subject : "+m.getSubject());
System.out.println("From : "+m.getFrom());
try {
System.out.println("Subject : "+m.getContent().toString());
} catch (IOException e) {
System.out.println("No messages are available.............!");
e.printStackTrace();
}
} // end for loop
// 5) Close the Folder and email store
emailFolder.close(false);
emailStore.close();
} catch (NoSuchProviderException e) {
e.printStackTrace();
} catch (MessagingException e) {
e.printStackTrace();
}
}
}
我很确定GMail只接受SSL连接。请尝试以下代码:
import com.sun.mail.pop3.POP3Store;
import javax.mail.Folder;
import javax.mail.Message;
import javax.mail.MessagingException;
import javax.mail.NoSuchProviderException;
import javax.mail.Session;
import java.io.IOException;
import java.util.Properties;
public class receive_Email {
public static void main(String[] args) {
String host="pop.gmail.com";
int port=995;
String mailStorType="pop3";
String Username="***********@gmail.com";
String Password="*******";
receiveMail(host, port, mailStorType, Username, Password);
}
// method for Receive email.....!
public static void receiveMail(String pop3Host, int port, String sotreType,String user,String password){
/// 1) get session object
Properties props = new Properties();
props.put("mail.pop3.ssl.enable", "true"); // Use SSL
Session sessEmail = Session.getInstance(props);
// 2) create pop3 store object and connect with pop server
try {
POP3Store emailStore = (POP3Store) sessEmail.getStore(sotreType);
emailStore.connect(pop3Host, port, user, password);
// 3) create Folder object and open it
Folder emailFolder=emailStore.getFolder("INBOX");
emailFolder.open(Folder.READ_ONLY);
// 4) Retrieve the messages in the folder and display it
Message[] messages=emailFolder.getMessages();
for(Message m : messages){
System.out.println("------------------------------------------------");
System.out.println("Email Number : "+m.getMessageNumber());
System.out.println("Subject : "+m.getSubject());
System.out.println("From : "+m.getFrom());
try {
System.out.println("Subject : "+m.getContent().toString());
} catch (IOException e) {
System.out.println("No messages are available.............!");
e.printStackTrace();
}
} // end for loop
// 5) Close the Folder and email store
emailFolder.close(false);
emailStore.close();
} catch (NoSuchProviderException e) {
e.printStackTrace();
} catch (MessagingException e) {
e.printStackTrace();
}
}
}
我很确定GMail只接受SSL连接。请尝试以下代码:
import com.sun.mail.pop3.POP3Store;
import javax.mail.Folder;
import javax.mail.Message;
import javax.mail.MessagingException;
import javax.mail.NoSuchProviderException;
import javax.mail.Session;
import java.io.IOException;
import java.util.Properties;
public class receive_Email {
public static void main(String[] args) {
String host="pop.gmail.com";
int port=995;
String mailStorType="pop3";
String Username="***********@gmail.com";
String Password="*******";
receiveMail(host, port, mailStorType, Username, Password);
}
// method for Receive email.....!
public static void receiveMail(String pop3Host, int port, String sotreType,String user,String password){
/// 1) get session object
Properties props = new Properties();
props.put("mail.pop3.ssl.enable", "true"); // Use SSL
Session sessEmail = Session.getInstance(props);
// 2) create pop3 store object and connect with pop server
try {
POP3Store emailStore = (POP3Store) sessEmail.getStore(sotreType);
emailStore.connect(pop3Host, port, user, password);
// 3) create Folder object and open it
Folder emailFolder=emailStore.getFolder("INBOX");
emailFolder.open(Folder.READ_ONLY);
// 4) Retrieve the messages in the folder and display it
Message[] messages=emailFolder.getMessages();
for(Message m : messages){
System.out.println("------------------------------------------------");
System.out.println("Email Number : "+m.getMessageNumber());
System.out.println("Subject : "+m.getSubject());
System.out.println("From : "+m.getFrom());
try {
System.out.println("Subject : "+m.getContent().toString());
} catch (IOException e) {
System.out.println("No messages are available.............!");
e.printStackTrace();
}
} // end for loop
// 5) Close the Folder and email store
emailFolder.close(false);
emailStore.close();
} catch (NoSuchProviderException e) {
e.printStackTrace();
} catch (MessagingException e) {
e.printStackTrace();
}
}
}
我很确定GMail只接受SSL连接。请尝试以下代码:
import com.sun.mail.pop3.POP3Store;
import javax.mail.Folder;
import javax.mail.Message;
import javax.mail.MessagingException;
import javax.mail.NoSuchProviderException;
import javax.mail.Session;
import java.io.IOException;
import java.util.Properties;
public class receive_Email {
public static void main(String[] args) {
String host="pop.gmail.com";
int port=995;
String mailStorType="pop3";
String Username="***********@gmail.com";
String Password="*******";
receiveMail(host, port, mailStorType, Username, Password);
}
// method for Receive email.....!
public static void receiveMail(String pop3Host, int port, String sotreType,String user,String password){
/// 1) get session object
Properties props = new Properties();
props.put("mail.pop3.ssl.enable", "true"); // Use SSL
Session sessEmail = Session.getInstance(props);
// 2) create pop3 store object and connect with pop server
try {
POP3Store emailStore = (POP3Store) sessEmail.getStore(sotreType);
emailStore.connect(pop3Host, port, user, password);
// 3) create Folder object and open it
Folder emailFolder=emailStore.getFolder("INBOX");
emailFolder.open(Folder.READ_ONLY);
// 4) Retrieve the messages in the folder and display it
Message[] messages=emailFolder.getMessages();
for(Message m : messages){
System.out.println("------------------------------------------------");
System.out.println("Email Number : "+m.getMessageNumber());
System.out.println("Subject : "+m.getSubject());
System.out.println("From : "+m.getFrom());
try {
System.out.println("Subject : "+m.getContent().toString());
} catch (IOException e) {
System.out.println("No messages are available.............!");
e.printStackTrace();
}
} // end for loop
// 5) Close the Folder and email store
emailFolder.close(false);
emailStore.close();
} catch (NoSuchProviderException e) {
e.printStackTrace();
} catch (MessagingException e) {
e.printStackTrace();
}
}
}
我得到了我需要的答案,谢谢用户1232141,谢谢你的友好回复。。 我从这个参考中得到了解决方案stactoverflow:
以下是对我有用的代码:
publicstaticvoidreceiveemail(字符串pop3Host、字符串storeType、最终字符串用户、最终字符串密码){
试试{
//1) 获取会话对象
Properties props=新属性();
props.put(“mail.pop3.host”、“pop.gmail.com”);
props.put(“mail.pop3.ssl.enable”,“true”);//使用ssl
props.put(“mail.pop3.user”,user);
props.put(“mail.pop3.socketFactory”,995);
put(“mail.pop3.socketFactory.class”,“javax.net.ssl.SSLSocketFactory”);
props.put(“mail.pop3.port”,995);
Session Session=Session.getDefaultInstance(props,new Authenticator(){
@凌驾
受保护的密码身份验证getPasswordAuthentication(){
返回新的PasswordAuthentication(用户、密码);
}
});
//2) 创建POP3存储对象并连接pop服务器
Store emailStore=(Store)session.getStore(storeType);
emailStore.connect(“pop.gmail.com”,995,用户,密码);
//3) 创建文件夹对象并将其打开
文件夹emailFolder=emailStore.getFolder(“收件箱”);
emailFolder.open(文件夹只读);
//4) 从数组中的文件夹中检索邮件并打印
Message[]messages=emailFolder.getMessages();
对于(inti=0;i
正如您所见,我编辑了提供的方法receiveEmail(..{..},并得到了答案,
感谢srackoverflow用户@wael您的问题帮助我找到了所需的解决方案。。。谢谢大家…我得到了我所需要的答案,谢谢用户1232141对你们的友好回复。。 我从这个参考中得到了解决方案stactoverflow:
以下是对我有用的代码:
publicstaticvoidreceiveemail(字符串pop3Host、字符串storeType、最终字符串用户、最终字符串密码){
试试{
//1) 获取会话对象
Properties props=新属性();
props.put(“mail.pop3.host”、“pop.gmail.com”);
props.put(“mail.pop3.ssl.enable”,“true”);//使用ssl
props.put(“mail.pop3.user”,user);
props.put(“mail.pop3.socketFactory”,995);
put(“mail.pop3.socketFactory.class”,“javax.net.ssl.SSLSocketFactory”);
props.put(“mail.pop3.port”,995);
Session Session=Session.getDefaultInstance(props,new Authenticator(){
@凌驾
受保护的密码身份验证getPasswordAuthentication(){
返回新的PasswordAuthentication(用户、密码);
}
});
//2) 创建POP3存储对象并连接pop服务器
Store emailStore=(Store)session.getStore(storeType);
emailStore.connect(“pop.gmail.com”,995,用户,密码);
//3) 创建文件夹对象并将其打开
文件夹emailFolder=emailStore.getFolder(“收件箱”);
emailFolder.open(文件夹只读);
//4) 从数组中的文件夹中检索邮件并打印
Message[]messages=emailFolder.getMessages();
对于(inti=0;i