You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@felix.apache.org by "Julian Sedding (JIRA)" <ji...@apache.org> on 2011/09/06 00:20:09 UTC

[jira] [Updated] (FELIX-3104) Registering/unregistering HttpService with CometdServiceImpl repeatedly causes ClassCastException

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

Julian Sedding updated FELIX-3104:
----------------------------------

    Attachment: FELIX-3104.patch

proposed patch

> Registering/unregistering HttpService with CometdServiceImpl repeatedly causes ClassCastException
> -------------------------------------------------------------------------------------------------
>
>                 Key: FELIX-3104
>                 URL: https://issues.apache.org/jira/browse/FELIX-3104
>             Project: Felix
>          Issue Type: Bug
>          Components: HTTP Service
>    Affects Versions: http-2.2.0
>            Reporter: Julian Sedding
>            Priority: Minor
>         Attachments: FELIX-3104.patch
>
>
> CometdServiceImpl uses org.mortbay.cometd.continuation.ContinuationCometdServlet in its implementation, which in turn extends org.mortbay.cometd.AbstractCometdServlet. AbstractCometdServlet places a Bayeux object in a servlet context attribute in its init() method, but never cleans it up on destroy(). This can lead to a ClassCastException if the servlet's init() method is called repeatedly, and the ClassLoader used to create the object stored in the servlet context attribute is not the same that was used to load the AbstractCometdServlet class. However, this is what seems to happen if the cometd bundle is restarted (may only be the case with the patch from FELIX-3102 applied).

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira