Bonjour, j'ai lu pas mal de posts concernant ce sujet, mais j'avoue que je suis un peu dépité la..
j'essaye de récupérer des mails contenant du html ou des images, et donc je recois un Message dont je recupère le contenu, mon probleme c'est que je ne peux pas le mettre sous la forme d'un MultiPart..
tout d'abord voila la partie de code qui me pose probleme :
Voila l'erreur que je recois
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38 public MailMessage(final Message msg) { Multipart messageMultipart; try { messageMultipart = (Multipart)msg.getContent();// c'est ici que j'ai l'erreur int n = messageMultipart.getCount(); contenuTexte=new String[n]; for(int j=0;j<n;j++){ Part part = messageMultipart.getBodyPart(j); String disposition = part.getDisposition(); if((disposition!=null)&&((disposition.equals(Part.ATTACHMENT)))){//si c'est un fichier joint contenuTexte[n]=null;//on met null dans le texte File save = new File("C:\\HD4\\"+part.getFileName()); FileWriter ecriture = new FileWriter(save); InputStreamReader lecture = new InputStreamReader(part.getInputStream()); while(lecture.read()!=-1){ecriture.write(lecture.read());} lecture.close(); ecriture.close(); } if((disposition!=null)&&(disposition.equals(Part.INLINE))){//si c'est un texte String _content=new String(); InputStreamReader lecture = new InputStreamReader(part.getInputStream()); while(lecture.read()!=-1){_content = _content.concat(String.valueOf(lecture.read()));} contenuTexte[n]=_content; lecture.close(); } }catch (ClassCastException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (MessagingException e) { // TODO Auto-generated catch block e.printStackTrace(); } }
Si quelqu'un a une idée..
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 java.lang.ClassCastException: java.lang.String at com.orange.sce.application.impl.MailMessage.<init>(MailMessage.java:90)
Merci d'avance!!
Partager