Immer classcastexception-Fehler in java

Hallo, ich bin immer folgende exception

Exception in thread "main" java.lang.Classcastexception-Fehler: javax.E-mail.util.SharedByteArrayInputStream kann nicht umgewandelt werden, javax.E-mail.Multipart

Bin ich nicht immer jede Zusammenstellung Ausnahme in der Eclipse-IDE, aber wenn ich versuche das Projekt erstellen, erhalte ich diese exception.

Nachdem das Projekt zu erstellen, ich bin mit dem Projekt, die durch die java -jar-Datei, so dass Ihr nicht die Befriedigung der if(content instanceof Multipart) - Bedingung, aber wenn ich arbeite mit der Eclipse-IDE seine Arbeitsmethoden in Ordnung. Jeder Zeiger wird sehr hilfreich für mich,

Aus der eclipse-IDE, ich bin immer die megssage.getContent() als javax.mail.internet.MimeMultipart@1dc0e7a
aber beim ausführen mit der jar-Datei, die ich bin immer der Inhalt, wie
javax.mail.util.SharedByteArrayInputStream@2f0d54

Bitte können Sie mir sagen, was ist der Unterschied zwischen Ihnen.

Geänderte code:

 InputStream inStream = null;
    if(!message.getContentType().contains("text/plain")){
        Object content = message.getContent();          
        if (message.isMimeType("multipart/*")) {  
            //message.isMimeType("multipart/*")||
            Multipart multipart = (Multipart) content;
            for (int j = 0; j < multipart.getCount(); j++) {
                BodyPart bodyPart = multipart.getBodyPart(j);
                inStream = bodyPart.getInputStream();
                fileName=bodyPart.getFileName();
                } 
        }
        else{
        System.out.println("content not instance of multipart");    
        }`enter code here`  

Bitte kann jemand mir helfen bei der Lösung dieses Problem..

Vielen Dank im Voraus...

  • Sind Sie sicher, dass Sie die gleiche Quelle?
  • Ja, ich bin die gleiche Quelle ....
  • Sehe ich etwas ähnlich wie in meinem Projekt, und ich bemerkte Sie in der Dokumentation für getContent () - Zustände "Für die content-Typen bekannt sind, die DataHandler-system, ein input-stream zurückgegeben wird, wie der Inhalt." Ist es möglich, das ausführen von code in einem anderen Kontext erstellt eine Nachricht mit einer anderen DataHandler? Vielleicht in den OPs, wenn seine eclipse-classpath findet verschiedene Versionen des E-mail-Klassen, bauen die Nachricht dann seinen Befehl Zeile-classpath und instanziieren verschiedene DataHandlers.
InformationsquelleAutor ramesh | 2011-08-26
Schreibe einen Kommentar