【问题标题】:read email form the gmail using imap in jsp在 jsp 中使用 imap 从 gmail 读取电子邮件
【发布时间】:2013-04-12 19:54:36
【问题描述】:

我想使用带有 servlet 和 jsp 的 imap 阅读来自 gmail 的电子邮件。 但我不能这样做。我进入了简单的 Java 类。但是,当我尝试将此代码放入 jsp 和 servlet 时,都会出现错误。 我使用了以下代码。

试试{
java.util.Properties 属性 = System.getProperties();
properties.setProperty("mail.store.protocol", "imaps");
javax.mail.Session s = javax.mail.Session.getDefaultInstance(properties, null);
//创建会话实例
System.out.println("已连接");
javax.mail.Store store = s.getStore("imaps");//创建存储实例
store.connect("pop.gmail.com", "studentusecmp@gmail.com", "##########");
//设置你的用户名和密码
System.out.println(store);
文件夹收件箱 = store.getFolder("inbox");
//设置你想阅读邮件的文件夹
inbox.open(Folder.READ_WRITE);//设置收件箱的访问类型
Message messages[] = inbox.getMessages();// 获取收件箱消息
对于 (int i = 0; 我 System.out.println("发件人:" + messages[i].getFrom()[0]); //打印 发件人的电子邮件 ID System.out.println("Sub : " + 消息[i].getSubject()); //打印邮件主题
System.out.println("接收日期:"+messages[i].getReceivedDate());
System.out.println("描述:"+messages[i].getDescription());
}catch(Exception e) { e.printStackTrace(); }

和错误

堆栈跟踪:在 org.apache.jasper.compiler.DefaultErrorHandler.javacError(DefaultErrorHandler.java:97) 在 org.apache.jasper.compiler.ErrorDispatcher.javacError(ErrorDispatcher.java:330) 在 org.apache.jasper.compiler.JDTCompiler.generateClass(JDTCompiler.java:457) 在 org.apache.jasper.compiler.Compiler.compile(Compiler.java:374) 在 org.apache.jasper.compiler.Compiler.compile(Compiler.java:352) 在 org.apache.jasper.compiler.Compiler.compile(Compiler.java:339) 在 org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:594) 在 org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:344) 在 org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:390) 在 org.apache.jasper.servlet.JspServlet.service(JspServlet.java:333) 在 javax.servlet.http.HttpServlet.service(HttpServlet.java:722) 在 org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:304) 在 org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210) 在 org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:240) 在 org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:164) 在 org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:462) 在 org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:164) 在 org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:100) 在 org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:563) 在 org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118) 在 org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:399) 在 org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:317) 在 org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:204) 在 org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:182) 在 org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:311) 在 java.util.concurrent.ThreadPoolExecutor.runWorker(未知来源) 在 java.util.concurrent.ThreadPoolExecutor$Worker.run(未知来源) 在 java.lang.Thread.run(Unknown Source)

我做错了什么?请帮助我。
谢谢。
-chintan

【问题讨论】:

  • 两条建议 - 1. 请将您的代码包装在正确的标签中。在这一点上很难挽救它。 2 - 如果此代码是从 JSP 运行的,请帮大家一个忙,并将其移至服务组件。目前看来代码甚至无法编译。 javacError
  • 我用 script-let 标签包装我的代码。有什么影响吗?
  • 您不应在发布问题时发布密码。
  • 谢谢。我忘了,下次我会小心的。再次感谢。@Sao
  • @chintan 请做正确的事并立即更改您的密码。它现在在这里不可见的事实并不意味着它不再存在于数据库中。

标签: java jsp email


【解决方案1】:

好的。经过一番谷歌搜索,我得到了答案。并逐步检查代码。它在 /WebContent/lib/ 文件夹中找不到 jar 文件。我手动放的。它工作正常。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-07-19
    • 2021-01-09
    • 2020-08-18
    • 2018-11-02
    • 1970-01-01
    • 2012-03-05
    相关资源
    最近更新 更多