[jboss-jira] [JBoss JIRA] (JGRP-1860) Custom classloader in RpcDispatcher
Todd Sandor (Jira)
issues at jboss.org
Fri Jan 24 13:47:11 EST 2020
[ https://issues.redhat.com/browse/JGRP-1860?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13956472#comment-13956472 ]
Todd Sandor commented on JGRP-1860:
-----------------------------------
We are a Redhat customer - this issue was raised on our behalf. We are not in the process of upgrading from JBoss EAP7.1 to 7.2 and the Groups version was changed from jgroups-3.6.14.Final-redhat-1.jar to jgroups-4.0.15.Final-redhat-00001.jar and at this point can not compile our application code (JGRP-1860).
These changes do not seem to have been ported to JGroups 4 (7.2.0 uses 4.0.15.Final-redhat-00001.jar). Is it possible to get these ported to JGroups 4?
I have raised case Redhat https://access.redhat.com/support/cases/#/case/02568685 for this.
We have also found that org.jgroups.util.UUID is not backwards compatible between the above releases ...but it is not related to JGRP-1860 .. The issues are described in the above case.
Cheers
> Custom classloader in RpcDispatcher
> -----------------------------------
>
> Key: JGRP-1860
> URL: https://issues.redhat.com/browse/JGRP-1860
> Project: JGroups
> Issue Type: Feature Request
> Affects Versions: 3.2.13
> Reporter: Dennis Reed
> Assignee: Bela Ban
> Priority: Major
> Fix For: 3.4.5, 3.5
>
>
> RpcDispatcher is hard-coded to use JGroups' classloader when marshalling the users's custom objects over RPC.
> RpcDispatcher uses Util.objectFromByteBuffer to unmarshall, which uses an ObjectInputStream. ObjectInputStream uses the classloader of its caller's class (Util).
> RpcDispatcher does allow a custom marshaller to be used (implementing RpcDispatcher.Marshaller), but since Util.objectFromByteBuffer hard-codes the use of ObjectInputStream, a custom marshaller cannot simply set the classloader and then delegate back to the default JGroups code.
> Util.objectFromBuffer should be enhanced to use a custom ObjectInputStream implementation that overrides resolveClass to use a custom classloader, and an API should be added to RpcDispatcher to pass in the classloader to use.
--
This message was sent by Atlassian Jira
(v7.13.8#713008)
More information about the jboss-jira
mailing list