Hi Leute
Ich versuche E-Mails abzufragen und diese anschließend in eine Ecxel Tabelle einzutragen.
In meiner E-Mail steht z.B. A 3,86. Dies splitte ich auf . A (String s2 = s1.substring(0, 1) und 3,86 (String s4 = s1.substring(2, 6). Nachdem ich die Werte als String habe will ich die Zahl 3,86 in ein Excel-Blatt schreiben. Doch es geht leider nicht.
Direkt vom Servlet ist es kein Problem (z.B. out.println( "hallo"); ).
Deshalb habe ich auch versucht ein Errorhandling anzugehen. Hier hab ich herausgefunden das das Programm in Public String getMail gar nicht hinein geht sondern nur error ausgibt ( return "error"; wenn er nicht in String getMail geht).
Könnte einer von euch mir vielleicht sagen wo der Fehler liegt. Bin wirklich schon ziemlich verzweifelt.
Danke schon im Vorraus für die Bemühungen.
MfG Lerold1
Ich versuche E-Mails abzufragen und diese anschließend in eine Ecxel Tabelle einzutragen.
In meiner E-Mail steht z.B. A 3,86. Dies splitte ich auf . A (String s2 = s1.substring(0, 1) und 3,86 (String s4 = s1.substring(2, 6). Nachdem ich die Werte als String habe will ich die Zahl 3,86 in ein Excel-Blatt schreiben. Doch es geht leider nicht.
Direkt vom Servlet ist es kein Problem (z.B. out.println( "hallo"); ).
Deshalb habe ich auch versucht ein Errorhandling anzugehen. Hier hab ich herausgefunden das das Programm in Public String getMail gar nicht hinein geht sondern nur error ausgibt ( return "error"; wenn er nicht in String getMail geht).
Könnte einer von euch mir vielleicht sagen wo der Fehler liegt. Bin wirklich schon ziemlich verzweifelt.
Danke schon im Vorraus für die Bemühungen.
MfG Lerold1
Code:
import java.util.*;
import java.io.*;
import javax.mail.*;
import javax.mail.internet.*;
import javax.servlet.*;
import javax.servlet.http.*;
public class ExcelServlet extends HttpServlet {
private String s3 = null;
private Store store = null;
private Folder folder = null;
private PrintWriter out = null;
public String getMail( String host, String user, String passwd )
{
Session session = Session.getDefaultInstance( new Properties() );
try{
store = session.getStore( "pop3" );
}
catch(NoSuchProviderException nsse){
out.println("No such store exception");
}
try{
store.connect( host, user, passwd );
}
catch(MessagingException me){
out.println("Messaging exception during connect");
}
try{
folder = store.getFolder( "inbox" );
}
catch(MessagingException me){
out.println("Messaging exception during getFolder");
}
try{
folder.open( Folder.READ_ONLY );
}
catch(MessagingException me){
out.println("Messaging exception during open");
}
try{
Message message[] = folder.getMessages();
for ( int i = 0; i < message.length; i++ )
{
Message m = message[i];
Multipart mp = (Multipart)m.getContent();
for ( int j = 0; j < mp.getCount(); j++ )
{
Part part = mp.getBodyPart( j );
String disposition = part.getDisposition();
if ( disposition == null )
{
MimeBodyPart mimePart = (MimeBodyPart)part;
if ( mimePart.isMimeType("text/plain") )
{
BufferedReader in = new BufferedReader(
new InputStreamReader(mimePart.getInputStream()) );
String s1 = in.readLine();
String s2 = s1.substring(0, 1);
String s4 = s1.substring(2, 6);
}
}
}
}
}
catch(MessagingException me){
out.println("Messaging exception during getMessages");
}
catch(IOException ioe){
out.println("Messaging exception during IO");
}
try{
folder.close( false );
store.close();
}
catch(MessagingException me){
out.println("Problems to close the store");
}
return "error";
}
protected void processRequest(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("application/vnd.ms-excel");
out = response.getWriter();
s3 = getMail("elmail.htl-klu.at", "user1", "123456");
out.println( s3 );
out.println( "hallo");
out.close();
}
// <editor-fold defaultstate="collapsed" desc="HttpServlet methods. Click on the + sign on the left to edit the code.">
/** Handles the HTTP <code>GET</code> method.
* @param request servlet request
* @param response servlet response
*/
protected void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
processRequest(request, response);
}
/** Handles the HTTP <code>POST</code> method.
* @param request servlet request
* @param response servlet response
*/
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
processRequest(request, response);
}
/** Returns a short description of the servlet.
*/
public String getServletInfo() {
return "Short description";
}
// </editor-fold>
}