我是用JSP做的,收发邮件,mail.jar和activation.jar我都放在了tomcat\common\lib目录下了,下面是程序片段:
Properties props = System.getProperties();
Session foldersession = Session.getDefaultInstance(props,null);
foldersession.setDebug(true);
URLName urln = new URLName("pop3://"+session.getAttribute("mailuser")+":"+session.getAttribute("mailpwd")+"@"+session.getAttribute("mailhost")+"/");
Store store = foldersession.getStore(urln);
store.connect();
Folder inbox = store.getFolder("INBOX");
inbox.open(Folder.READ_WRITE);
if(action.equals("delete")){
if(msg!=null){
int imsg = Integer.parseInt(msg);
Message message = inbox.getMessage(imsg);
if(message!=null){
message.setFlag(Flags.Flag.DELETED,true);
inbox.close(true);
}
}
response.sendRedirect("message.jsp?action = list");
}
else if(action.equals("list")){
int count = inbox.getMessageCount();
for(int i = 1;i<= count;i++){
Message message = inbox.getMessage(i);
if(!message.isSet(Flags.Flag.DELETED)){ %>
<form>
[<%= i %>]<a href="maildetail.jsp?msg=<%= i %>">标题<%= message.getSubject() %></a>
<a href="message.jsp?action = delete&msg=<%= i %>">删除</a>
</form>
<%}
}
}
还程序还是报错:
javax.servlet.ServletException: javax/activation/DataSource
org.apache.jasper.runtime.PageContextImpl.doHandlePageException(PageContextImpl.java:867)
org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImpl.java:800)
org.apache.jsp.crm.message.message_jsp._jspService(message_jsp.java:256)
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:133)
javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:311)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:301)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:248)
javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
root cause java.lang.NoClassDefFoundError: javax/activation/DataSource
com.sun.mail.pop3.POP3Folder.createMessage(POP3Folder.java:299)
com.sun.mail.pop3.POP3Folder.getMessage(POP3Folder.java:280)
org.apache.jsp.crm.message.message_jsp._jspService(message_jsp.java:191)
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:133)
javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:311)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:301)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:248)
javax.servlet.http.HttpServlet.service(HttpServlet.java:856)是activation.jar包放的不对吗?还是程序上有问题?请大家指教,分不多,意思意思。
Properties props = System.getProperties();
Session foldersession = Session.getDefaultInstance(props,null);
foldersession.setDebug(true);
URLName urln = new URLName("pop3://"+session.getAttribute("mailuser")+":"+session.getAttribute("mailpwd")+"@"+session.getAttribute("mailhost")+"/");
Store store = foldersession.getStore(urln);
store.connect();
Folder inbox = store.getFolder("INBOX");
inbox.open(Folder.READ_WRITE);
if(action.equals("delete")){
if(msg!=null){
int imsg = Integer.parseInt(msg);
Message message = inbox.getMessage(imsg);
if(message!=null){
message.setFlag(Flags.Flag.DELETED,true);
inbox.close(true);
}
}
response.sendRedirect("message.jsp?action = list");
}
else if(action.equals("list")){
int count = inbox.getMessageCount();
for(int i = 1;i<= count;i++){
Message message = inbox.getMessage(i);
if(!message.isSet(Flags.Flag.DELETED)){ %>
<form>
[<%= i %>]<a href="maildetail.jsp?msg=<%= i %>">标题<%= message.getSubject() %></a>
<a href="message.jsp?action = delete&msg=<%= i %>">删除</a>
</form>
<%}
}
}
还程序还是报错:
javax.servlet.ServletException: javax/activation/DataSource
org.apache.jasper.runtime.PageContextImpl.doHandlePageException(PageContextImpl.java:867)
org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImpl.java:800)
org.apache.jsp.crm.message.message_jsp._jspService(message_jsp.java:256)
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:133)
javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:311)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:301)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:248)
javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
root cause java.lang.NoClassDefFoundError: javax/activation/DataSource
com.sun.mail.pop3.POP3Folder.createMessage(POP3Folder.java:299)
com.sun.mail.pop3.POP3Folder.getMessage(POP3Folder.java:280)
org.apache.jsp.crm.message.message_jsp._jspService(message_jsp.java:191)
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:133)
javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:311)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:301)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:248)
javax.servlet.http.HttpServlet.service(HttpServlet.java:856)是activation.jar包放的不对吗?还是程序上有问题?请大家指教,分不多,意思意思。
解决方案 »
- 求救啊
- 子查询的问题select id,(select top 1 username from stu b where a.id=b.id) as usera from stu a group by id如何取得其中子查询的值呢
- ArrayList取值问题
- 请问如何捕捉windows 鼠标拖动文件事件
- 文件读写的问题(急)
- 十万火急,请进来帮忙(在线等待)
- 为什么报错[Microsoft][SQLServer2000 Driver for jdbc][SQLServer]将截断字符串或二进制数据?????
- jdbc连sybase数据库报错,头都大了!
- 新人求助, 一个java的基础问题
- 各位大俠幫幫我,很簡單的問題!
- 这段代码到底错在哪里?
- 请教C++和JAVA进行Socket通信的问题?
引入到应用的WEB-INF/lib/了?
如果是eclipse的话,选中项目名称,属性->构建路径->库->添加jar