2012-06-09 2 views
5

Im tring để gửi một email đơn giản với mã này bằng cách sử dụng công cụ ứng dụng của google. Nhưng không có gì xảy ra, có điều gì tôi phải cấu hình để sử dụng api thư không? Điều này chạy trên máy chủ cục bộ. Tôi đang sử dụng gmail làm máy chủ thư.Gửi email bằng công cụ ứng dụng google

String host = "smtp.google.com"; 
String to = "[email protected]"; 
String from = "[email protected]"; 
String subject = "this is a test"; 
String messageText = "test"; 
boolean sessionDebug = false; 
// Create some properties and get the default Session. 
Properties props = System.getProperties(); 
props.put("mail.host", host); 
props.put("mail.transport.protocol", "smtp"); 
Session mailSession = Session.getDefaultInstance(props, null); 

// Set debug on the Session 
// Passing false will not echo debug info, and passing True will. 

mailSession.setDebug(sessionDebug); 

// Instantiate a new MimeMessage and fill it with the 
// required information. 

Message msg = new MimeMessage(mailSession); 
msg.setFrom(new InternetAddress(from)); 
InternetAddress[] address = { new InternetAddress(to) }; 
msg.setRecipients(Message.RecipientType.TO, address); 
msg.setSubject(subject); 
msg.setSentDate(new Date()); 
msg.setText(messageText); 

// Hand the message to the default transport service 
// for delivery. 

Transport.send(msg); 

Trả lời

9

Khi chạy máy chủ phát triển AppEngine tại địa phương, bất cứ điều gì gửi qua dịch vụ Mail sẽ không thực sự được gửi - nó chỉ sẽ được đăng nhập vào giao diện điều khiển

Xem here

Khi một ứng dụng đang chạy trong máy chủ phát triển gọi dịch vụ Thư để gửi thư email, tin nhắn được in vào nhật ký. Máy chủ phát triển Java không gửi thư email.

Bên cạnh đó, địa chỉ from phải (từ here)

  • Các email của người quản trị ứng dụng
  • Email của hiện đang đăng nhập người dùng đăng nhập bằng tài khoản Google
  • Địa chỉ nhận email hợp lệ từ ứng dụng
+0

Vì vậy, không có cách nào để gửi email từ dự án GAE? Hoặc không sử dụng cách này? – Nick

+0

Bạn có thể, chỉ từ các địa chỉ cụ thể và máy chủ phát triển cục bộ chỉ ghi nhật ký email vào bảng điều khiển – jimr

1

Người gửi phải là địa chỉ email Gmail của riêng bạn thay vì [email protected]

Lý do là vì máy chủ SMTP cần phải xác nhận bạn.

0

Khác với email không hoạt động trên địa phương lưu trữ hoặc do email người gửi không được xác thực, tôi đã trải qua email đó không hoạt động ngay cả khi phiên bản không phải là phiên bản mặc định. Tôi không thể tìm thấy tài liệu này ở bất cứ đâu.

Ví dụ: nondefaultversion-dot-myapp.appspot.com (email không hoạt động, không có bản ghi lỗi) myapp.appspot.com (công trình email)

Vui lòng xác nhận nếu người khác cũng đã phải đối mặt với vấn đề này.

1

Dường như GAE không cho phép sử dụng tài khoản quản trị nữa. bạn cần sử dụng tài khoản dịch vụ: [email protected]

Dự án trước đây của tôi vẫn hoạt động với tài khoản quản trị, nhưng các dự án được tạo gần đây không cho phép tôi sử dụng bất kỳ tài khoản quản trị nào.