GERONIMO-5414 Mail cannot handle image/jpeg



git-svn-id: https://svn.apache.org/repos/asf/geronimo/javamail/trunk@959385 13f79535-47bb-0310-9956-ffa450edef68
diff --git a/geronimo-javamail_1.4/geronimo-javamail_1.4_provider/src/main/java/org/apache/geronimo/javamail/handlers/AbstractImageHandler.java b/geronimo-javamail_1.4/geronimo-javamail_1.4_provider/src/main/java/org/apache/geronimo/javamail/handlers/AbstractImageHandler.java
index 1ac6c73..4a54c66 100644
--- a/geronimo-javamail_1.4/geronimo-javamail_1.4_provider/src/main/java/org/apache/geronimo/javamail/handlers/AbstractImageHandler.java
+++ b/geronimo-javamail_1.4/geronimo-javamail_1.4_provider/src/main/java/org/apache/geronimo/javamail/handlers/AbstractImageHandler.java
@@ -18,13 +18,14 @@
 
 import java.awt.Graphics2D;
 import java.awt.Image;
-import java.awt.datatransfer.DataFlavor;
+import java.awt.datatransfer.DataFlavor;  
 import java.awt.datatransfer.UnsupportedFlavorException;
 import java.awt.image.BufferedImage;
 import java.awt.image.RenderedImage;
 import java.io.IOException;
 import java.io.OutputStream;
 import java.util.Iterator;
+import javax.activation.ActivationDataFlavor; 
 import javax.activation.DataContentHandler;
 import javax.activation.DataSource;
 import javax.activation.UnsupportedDataTypeException;
@@ -38,9 +39,9 @@
  * @version $Rev$ $Date$
  */
 public class AbstractImageHandler implements DataContentHandler {
-    private final DataFlavor flavour;
+    private final ActivationDataFlavor flavour;
 
-    public AbstractImageHandler(DataFlavor flavour) {
+    public AbstractImageHandler(ActivationDataFlavor flavour) {
         this.flavour = flavour;
     }
 
@@ -53,9 +54,9 @@
     }
 
     public Object getContent(DataSource ds) throws IOException {
-        Iterator i = ImageIO.getImageReadersByMIMEType(ds.getContentType());
+        Iterator i = ImageIO.getImageReadersByMIMEType(flavour.getMimeType());
         if (!i.hasNext()) {
-            throw new UnsupportedDataTypeException("Unknown image type " + ds.getContentType());
+            throw new UnsupportedDataTypeException("Unknown image type " + flavour.getMimeType());
         }
         ImageReader reader = (ImageReader) i.next();
         ImageInputStream iis = ImageIO.createImageInputStream(ds.getInputStream());
@@ -64,9 +65,9 @@
     }
 
     public void writeTo(Object obj, String mimeType, OutputStream os) throws IOException {
-        Iterator i = ImageIO.getImageWritersByMIMEType(mimeType);
+        Iterator i = ImageIO.getImageWritersByMIMEType(flavour.getMimeType());
         if (!i.hasNext()) {
-            throw new UnsupportedDataTypeException("Unknown image type " + mimeType);
+            throw new UnsupportedDataTypeException("Unknown image type " + flavour.getMimeType());
         }
         ImageWriter writer = (ImageWriter) i.next();
         writer.setOutput(os);
diff --git a/geronimo-javamail_1.4/geronimo-javamail_1.4_provider/src/main/resources/META-INF/mailcap b/geronimo-javamail_1.4/geronimo-javamail_1.4_provider/src/main/resources/META-INF/mailcap
index e7f94ff..2783191 100644
--- a/geronimo-javamail_1.4/geronimo-javamail_1.4_provider/src/main/resources/META-INF/mailcap
+++ b/geronimo-javamail_1.4/geronimo-javamail_1.4_provider/src/main/resources/META-INF/mailcap
@@ -21,8 +21,11 @@
 text/html;;     x-java-content-handler=org.apache.geronimo.javamail.handlers.TextHtmlHandler

 text/xml;;      x-java-content-handler=org.apache.geronimo.javamail.handlers.TextXmlHandler

 

-image/gif;;     x-java-content-handler=org.apache.geronimo.javamail.handlers.ImageGifHandler

-image/jpeg;;    x-java-content-handler=org.apache.geronimo.javamail.handlers.ImageJpegHandler

+## These are not implemented in the reference implementation because the required support                  

+## is not available on server JVMs. 

+## image/gif;;     x-java-content-handler=org.apache.geronimo.javamail.handlers.ImageGifHandler

+## image/jpeg;;    x-java-content-handler=org.apache.geronimo.javamail.handlers.ImageJpegHandler

+## image/jpg;;    x-java-content-handler=org.apache.geronimo.javamail.handlers.ImageJpegHandler

 

 multipart/*;;   x-java-content-handler=org.apache.geronimo.javamail.handlers.MultipartHandler

 message/rfc822;; x-java-content-handler=org.apache.geronimo.javamail.handlers.RFC822MessageHandler