Plugins that define the same class name (i.e. package and class name) will have a problem if they try to send that class through the cluster. Hazelcast will deserialize the class and will use the first class definition found in the list of plugins.
The sequence of search for this class loader is first check the hazelcast plugin that includes checking the Openfire core. If not found then try with the other plugins.
A mechanism should be provided that can be used to ensure that the correct classloader is used.