]
Tristan Tarrant updated ISPN-5551:
----------------------------------
Fix Version/s: 8.0.0.Alpha2
7.2.3.Final
8.0.0.Final
Infinispan AS modules artifact should include JBoss Marshalling
---------------------------------------------------------------
Key: ISPN-5551
URL:
https://issues.jboss.org/browse/ISPN-5551
Project: Infinispan
Issue Type: Bug
Affects Versions: 7.2.2.Final
Reporter: Horia Chiorean
Assignee: Tristan Tarrant
Fix For: 8.0.0.Alpha2, 7.2.3.Final, 8.0.0.Final
Infinispan 7 provides the following Maven artifact:
{code:xml}
<dependency>
<groupId>org.infinispan</groupId>
<artifactId>infinispan-as-embedded-modules</artifactId>
<type>zip</type>
</dependency>
{code}
which can be used (and is used by ModeShape) when running in a JBoss AS instance.
However, this artifact does not contain the version of JBoss Marshalling that a
particular version of Infinspan requires but rather picks up the {{main}} version which is
available in the container:
{code:xml}
<module name="org.jboss.marshalling"/>
<module name="org.jboss.marshalling.river"
services="import"/>
{code}
Because of this, when deploying Infinispan 7.2.x in Wildfly 8.2.0, Infinispan will pick
up the version of marshalling delivered by Wildfly (1.4.9.Final instead of 1.4.10.Final)
causing class cast exceptions like:
{code:java}
Caused by: java.lang.ClassCastException: java.lang.String cannot be cast to
org.jboss.marshalling.Externalizer
at
org.jboss.marshalling.river.RiverUnmarshaller.doReadClassDescriptor(RiverUnmarshaller.java:1012)
at
org.jboss.marshalling.river.RiverUnmarshaller.doReadNewObject(RiverUnmarshaller.java:1256)
at
org.jboss.marshalling.river.RiverUnmarshaller.doReadObject(RiverUnmarshaller.java:276)
at
org.jboss.marshalling.river.RiverUnmarshaller.doReadObject(RiverUnmarshaller.java:209)
at org.jboss.marshalling.AbstractObjectInput.readObject(AbstractObjectInput.java:41)
at
org.infinispan.commons.marshall.jboss.AbstractJBossMarshaller.objectFromObjectStream(AbstractJBossMarshaller.java:135)
[infinispan-commons.jar:7.2.0.Final]
at
org.infinispan.marshall.core.VersionAwareMarshaller.objectFromByteBuffer(VersionAwareMarshaller.java:101)
[infinispan-core.jar:7.2.0.Final]
at
org.infinispan.commons.marshall.AbstractDelegatingMarshaller.objectFromByteBuffer(AbstractDelegatingMarshaller.java:80)
[infinispan-commons.jar:7.2.0.Final]
at
org.infinispan.marshall.core.MarshalledEntryImpl.unmarshall(MarshalledEntryImpl.java:114)
[infinispan-core.jar:7.2.0.Final]
... 162 more
{code}