2016-03-06 149 views
0

經過數小時的搜索後,我得到了從tutorialpoints web site的JSP頁面發送電子郵件的代碼,我試着在教程中提到的整個代碼也添加了推薦的jar文件。但是,像這樣用實際電子郵件ID每次設置後 -使用JSP從本地主機發送郵件時發生錯誤

// Recipient's email ID needs to be mentioned. 
    String to = "[email protected]"; 
    // Sender's email ID needs to be mentioned 
    String from = "[email protected]"; 
    // Assuming you are sending email from localhost 
    String host = "localhost"; 
    // Get system properties object 
    Properties properties = System.getProperties(); 

    // Setup mail server 
    properties.setProperty("mail.cbsecsnip.in", host); 
    properties.setProperty("mail.user", "[email protected]"); 
    properties.setProperty("mail.password", "password"); 
    // Get the default Session object. 
    Session mailSession = Session.getDefaultInstance(properties); 

我得到的例外 -

javax.mail.SendFailedException:發送失敗;嵌套異常是: 類javax.mail.SendFailedException:無效的地址;嵌套0​​異常是:class javax.mail.SendFailedException:553我們不要 中繼非本地郵件,對不起。

在javax.mail.Transport.send0(Transport.java:218)在 javax.mail.Transport.send(Transport.java:80)在 org.apache.jsp.addstudent_jsp._jspService(addstudent_jsp.java :168)at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)at javax.servlet.http.HttpServlet.service(HttpServlet.java:722)at org.apache.jasper.servlet .JspServletWrapper.service(JspServletWrapper.java:433) 在 org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:389) 在org.apache.jasper.servlet.JspServlet.service(JspServlet.java: 333) at javax.servlet.http.HttpServlet.service(HttpServlet.jav一:722)在 org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:304) 在 org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210) 在 有機apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:224) 在 org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:185) 在 org.apache.catalina.authenticator.AuthenticatorBase。 invoke(AuthenticatorBase.java:472) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:151) at org.apache.catalina.valves.E rrorReportValve.invoke(ErrorReportValve.java:100) 在 org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:929) 在 org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java: 118) 在 org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:405) 在 org.apache.coyote.http11.Http11AprProcessor.process(Http11AprProcessor.java:269) 在 org.apache .coyote.AbstractProtocol $ AbstractConnectionHandler.process(AbstractProtocol.java:515) at org.apache.tomcat.util.net.AprEndpoint $ SocketProcessor.run(AprEndpoint.java:1773) at(ThreadPoolExecutor.java:603) java.lang.Thread.run(Thread。)。 java:722)

如果有人能幫我從這個異常中解脫出來。

回答

0

javax.mail.SendFailedException: 553 We do not relay non-local mail, sorry.

你需要用你被允許通過轉發郵件的SMTP服務器。如果您有權訪問正在運行的系統,則只需重新配置SMTP服務器以允許中繼(以安全方式,而不是所有互聯網)。如果不是,與那些做的人談話。

+0

我需要修改哪些屬性 - 請參閱原始帖子的編輯部分 – cbsecommerce

+0

問題不在於您的代碼中,而是在郵件服務器中。如果您擁有郵件服務器,則需要重新配置它以允許中繼。如果您不擁有郵件服務器,則需要使用允許中繼的其他郵件服務器。 –

+0

「中繼」是指通過服務器發送郵件,其中發件人電子郵件或收件人電子郵件均不屬於服務器。換句話說,它只是在其他地方傳播。 –

相關問題