You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@servicemix.apache.org by "Freeman Fang (Assigned) (JIRA)" <ji...@apache.org> on 2012/03/20 01:57:37 UTC

[jira] [Assigned] (SM-2149) ClassCastException in OsgiMailcapCommandMap

     [ https://issues.apache.org/jira/browse/SM-2149?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Freeman Fang reassigned SM-2149:
--------------------------------

    Assignee: Freeman Fang
    
> ClassCastException in OsgiMailcapCommandMap
> -------------------------------------------
>
>                 Key: SM-2149
>                 URL: https://issues.apache.org/jira/browse/SM-2149
>             Project: ServiceMix
>          Issue Type: Bug
>          Components: servicemix-mail
>         Environment: $ java -version
> java version "1.6.0_30"
> Java(TM) SE Runtime Environment (build 1.6.0_30-b12)
> Java HotSpot(TM) 64-Bit Server VM (build 20.5-b03, mixed mode)
> Slackware 13.37 64 bit
> Linux 2.6.38.4 x86_64
>            Reporter: Andrew Clemons
>            Assignee: Freeman Fang
>            Priority: Minor
>         Attachments: 01_servicemix_activation.diff, stack_trace
>
>
> I am using the service mix javax.activation and javax.mail bundles:
>       <dependency>
>         <groupId>org.apache.servicemix.bundles</groupId>
>         <artifactId>org.apache.servicemix.bundles.javax.mail</artifactId>
>         <version>1.4.1_5</version>
>       </dependency>
>       <dependency>
>         <groupId>org.apache.servicemix.specs</groupId>
>         <artifactId>org.apache.servicemix.specs.activation-api-1.1</artifactId>
>         <version>1.9.0</version>
>       </dependency>
> For various reasons I am also using:
>       <dependency>
>         <groupId>org.ops4j.pax.web</groupId>
>         <artifactId>pax-web-jetty-bundle</artifactId>
>         <version>1.1.2</version>
>       </dependency>
> That bundle includes java-mail and activation as part of the bundle itself and
> also includes a mailcap file. The
> org.apache.servicemix.specs.activation.Activator picks that up and adds the
> mailcap entries to the OsgiMailcapCommandMap.
> $ unzip -q -c pax-web-jetty-bundle-1.1.2.jar  META-INF/mailcap
> #
> # @(#)mailcap   1.8 05/04/20
> #
> # Default mailcap file for the JavaMail System.
> #
> # JavaMail content-handlers:
> #
> text/plain;;            x-java-content-handler=com.sun.mail.handlers.text_plain
> text/html;;             x-java-content-handler=com.sun.mail.handlers.text_html
> text/xml;;              x-java-content-handler=com.sun.mail.handlers.text_xml
> multipart/*;;           x-java-content-handler=com.sun.mail.handlers.multipart_mixed; x-java-fallback-entry=true
> message/rfc822;;        x-java-content-handler=com.sun.mail.handlers.message_rfc822
> #
> # can't support image types because java.awt.Toolkit doesn't work on servers
> #
> #image/gif;;            x-java-content-handler=com.sun.mail.handlers.image_gif
> #image/jpeg;;           x-java-content-handler=com.sun.mail.handlers.image_jpeg
> When I then try to send a multipart email, the DataContentHandler comes from
> the pax-web-jetty-bundle, but that instance comes from its classloader and is
> not assignable to the DataContentHandler as seen by the
> org.apache.servicemix.specs.activation-api-1.1 bundle. This results in a
> ClassCastException on line 60 in OsgiMailcapCommandMap which propagates up the
> call stack.
> I'll attached a patch which fixes the problem for me and an example stack
> trace.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira