자바 메일로 간단한 html 메시지를 보내야합니다. 그리고 인터넷에서 설명과 함께 좋은 예제를 찾으려고 할 때마다 다음 예제는 더 화가 났고 화를 냈습니다.JavaMail을 사용하기위한 환경 구성 방법은 무엇입니까?
모든 바보 같은 예제에는 코멘트와 훌륭한 면책 조항 만 다른 복사 및 붙여 넣기 Java 코드가 포함되어 있습니다. 먼저 smtp 및 pop3 서버를 구성해야합니다.
나는 구체적인 제품에 대한 광고를 만들고 싶지 않지만 서버 구성은 가장 어려운 부분이라고 생각합니다. 그래서, 구체적인 서버 (Kerio, 예를 들어, 또는 다른 하나) 구성에 관한 유용한 정보 (Java 코드없이)를 누군가에게 줄 수 있습니까?
250 2.0.0 Reset state
javax.mail.SendFailedException: Invalid Addresses;
nested exception is:
com.sun.mail.smtp.SMTPAddressFailedException: 550 5.7.1 Relaying to <[email protected]> denied (authentication required)
UPD : 내가 지금 무엇을 가지고
다음 예외입니다. 모든 이전 텍스트의 간단한 재구성은 다음과 같습니다. Windows, jdk 등이 없다고 상상해보십시오. 그리고 당신은 자바 프로그램을 만들고 당신의 컴퓨터에서 실행하기를 원합니다. 그리고이 프로그램은 "Hello world!"를 보내야합니다. 귀하의 Gmail 계정에. 단계를 나열하십시오.
UPD2. 여기 코드는 다음과 같습니다
Properties props = new Properties();
props.setProperty ("mail.transport.protocol", "smtp");
props.setProperty ("mail.host", "smtp.gmail.com");
props.setProperty ("mail.user", "[email protected]");
props.setProperty ("mail.password", "password_from_email_above");
Session mailSession = Session.getDefaultInstance (props, null);
mailSession.setDebug (true);
Transport transport = mailSession.getTransport();
MimeMessage message = new MimeMessage (mailSession);
message.setSubject ("HTML mail with images");
message.setFrom (new InternetAddress ("[email protected]"));
message.setContent ("<h1>Hello world</h1>", "text/html");
message.addRecipient (Message.RecipientType.TO,
new InternetAddress ("[email protected]"));
transport.connect();
transport.sendMessage (message,
message.getRecipients (Message.RecipientType.TO));
그리고 예외입니다 : 당신이 SMTP 서버를 구성 할 수있는 튜토리얼을 찾고 있다면
RSET
250 2.1.5 Flushed 3sm23455365fge.10
com.sun.mail.smtp.SMTPSendFailedException: 530 5.7.0 Must issue a STARTTLS command first. 3sm23455365fge.10
at com.sun.mail.smtp.SMTPTransport.issueSendCommand(SMTPTransport.java:1829)
at com.sun.mail.smtp.SMTPTransport.mailFrom(SMTPTransport.java:1368)
at com.sun.mail.smtp.SMTPTransport.sendMessage(SMTPTransport.java:886)
at com.teamdev.imgmail.MailSender.main(MailSender.java:33)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
...
귀하의 질문은 너무 막연한는 의미로 대답하는 것입니다. 호스트 및 호스트에서 실행되는 구성 요소에 대해 자세히 알려주십시오. 브랜드 이름을 짓고, 우리는 상관하지 않습니다. 당신이하고 싶은 일, 일하는 것과하지 않는 것에 대해 말해주십시오. –
@Carl Smotricz : UPD 섹션을 추가했습니다. – Roman
업데이트가 많은 * 더 좋은 질문입니다. 이를 위해 Google은 사용자를 위해 아주 큰 서버를 운영하기 때문에 자신의 SMTP 서버가 필요하지 않은 것으로 나타났습니다. –