[
http://jira.jboss.com/jira/browse/JBREM-677?page=comments#action_12387670 ]
Ron Sigal commented on JBREM-677:
---------------------------------
I've been able to demonstrate a problem using
org.jboss.remoting.marshal.compress.CompressingMarshaller and JBossSerialization. The
same example runs fine with java serialization.
Upon the first invocation, the client prints the following stack trace:
[java] ERROR 15-11 03:38:52,600 (SocketClientInvoker.java:handleException:122) -Got
marshalling exception, exiting
[java] java.lang.ClassCastException:
org.jboss.serial.objectmetamodel.DataContainer$DataContainerDirectOutput
[java] Exception in thread "main"
java.lang.reflect.UndeclaredThrowableException
[java] at
org.jboss.aop.util.MarshalledValue.writeExternal(MarshalledValue.java:190)
[java] at $Proxy0.getString(Unknown Source)
[java] at
org.jboss.serial.persister.ExternalizePersister.writeData(ExternalizePersister.java:58)
[java] at org.jboss.ejb3.example.client.Client.calculate(Client.java:79)
[java] at
org.jboss.serial.objectmetamodel.ObjectDescriptorFactory.describeObject(ObjectDescriptorFactory.java:276)
[java] at org.jboss.ejb3.example.client.Client.main(Client.java:54)
[java] at
org.jboss.serial.objectmetamodel.DataContainer$DataContainerDirectOutput.writeObject(DataContainer.java:206)
[java] Caused by: java.rmi.MarshalException: Failed to communicate. Problem during
marshalling/unmarshalling; nested exception is:
[java] at
org.jboss.aop.metadata.SimpleMetaData.writeExternal(SimpleMetaData.java:226)
[java] java.lang.ClassCastException:
org.jboss.serial.objectmetamodel.DataContainer$DataContainerDirectOutput
[java] at
org.jboss.serial.persister.ExternalizePersister.writeData(ExternalizePersister.java:58)
[java] at
org.jboss.remoting.transport.socket.SocketClientInvoker.handleException(SocketClientInvoker.java:123)
[java] at
org.jboss.remoting.transport.socket.MicroSocketClientInvoker.transport(MicroSocketClientInvoker.java:697)
[java] at
org.jboss.remoting.MicroRemoteClientInvoker.invoke(MicroRemoteClientInvoker.java:122)
[java] at org.jboss.remoting.Client.invoke(Client.java:1635)
[java] at org.jboss.remoting.Client.invoke(Client.java:548)
[java] at
org.jboss.aspects.remoting.InvokeRemoteInterceptor.invoke(InvokeRemoteInterceptor.java:62)
[java] at
org.jboss.serial.objectmetamodel.ObjectDescriptorFactory.describeObject(ObjectDescriptorFactory.java:276)
[java] at
org.jboss.serial.objectmetamodel.DataContainer$DataContainerDirectOutput.writeObject(DataContainer.java:206)
[java] at
org.jboss.aop.joinpoint.MethodInvocation.writeExternal(MethodInvocation.java:321)
[java] at
org.jboss.serial.persister.ExternalizePersister.writeData(ExternalizePersister.java:58)
[java] at
org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
[java] at
org.jboss.serial.objectmetamodel.ObjectDescriptorFactory.describeObject(ObjectDescriptorFactory.java:276)
[java] at
org.jboss.aspects.tx.ClientTxPropagationInterceptor.invoke(ClientTxPropagationInterceptor.java:67)
[java] at
org.jboss.serial.objectmetamodel.DataContainer$DataContainerDirectOutput.writeObject(DataContainer.java:206)
[java] at
org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
[java] at
org.jboss.serial.persister.RegularObjectPersister.writeSlotWithFields(RegularObjectPersister.java:182)
[java] at
org.jboss.aspects.security.SecurityClientInterceptor.invoke(SecurityClientInterceptor.java:53)
[java] at
org.jboss.serial.persister.RegularObjectPersister.defaultWrite(RegularObjectPersister.java:90)
[java] at
org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
[java] at
org.jboss.serial.persister.RegularObjectPersister.writeData(RegularObjectPersister.java:62)
[java] at
org.jboss.ejb3.remoting.IsLocalInterceptor.invoke(IsLocalInterceptor.java:74)
[java] at
org.jboss.serial.objectmetamodel.ObjectDescriptorFactory.describeObject(ObjectDescriptorFactory.java:276)
[java] at
org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
[java] at
org.jboss.serial.objectmetamodel.DataContainer$DataContainerDirectOutput.writeObject(DataContainer.java:206)
[java] at
org.jboss.ejb3.stateless.StatelessRemoteProxy.invoke(StatelessRemoteProxy.java:107)
[java] at
org.jboss.serial.io.JBossObjectOutputStream.writeObjectOverride(JBossObjectOutputStream.java:181)
[java] ... 3 more
[java] at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:287)
[java] Caused by: java.lang.ClassCastException:
org.jboss.serial.objectmetamodel.DataContainer$DataContainerDirectOutput
[java] at
org.jboss.remoting.serialization.impl.jboss.JBossSerializationManager.sendObject(JBossSerializationManager.java:89)
[java] at
org.jboss.aop.util.MarshalledValue.writeExternal(MarshalledValue.java:190)
[java] at
org.jboss.remoting.marshal.serializable.SerializableMarshaller.write(SerializableMarshaller.java:120)
[java] at
org.jboss.serial.persister.ExternalizePersister.writeData(ExternalizePersister.java:58)
[java] at
org.jboss.remoting.marshal.compress.CompressingMarshaller.write(CompressingMarshaller.java:105)
[java] at
org.jboss.serial.objectmetamodel.ObjectDescriptorFactory.describeObject(ObjectDescriptorFactory.java:276)
[java] at
org.jboss.remoting.transport.socket.MicroSocketClientInvoker.versionedWrite(MicroSocketClientInvoker.java:1033)
[java] at
org.jboss.serial.objectmetamodel.DataContainer$DataContainerDirectOutput.writeObject(DataContainer.java:206)
[java] at
org.jboss.remoting.transport.socket.MicroSocketClientInvoker.transport(MicroSocketClientInvoker.java:592)
[java] at
org.jboss.aop.metadata.SimpleMetaData.writeExternal(SimpleMetaData.java:226)
[java] at
org.jboss.remoting.MicroRemoteClientInvoker.invoke(MicroRemoteClientInvoker.java:122)
[java] at
org.jboss.serial.persister.ExternalizePersister.writeData(ExternalizePersister.java:58)
[java] at org.jboss.remoting.Client.invoke(Client.java:1635)
[java] at
org.jboss.serial.objectmetamodel.ObjectDescriptorFactory.describeObject(ObjectDescriptorFactory.java:276)
[java] at org.jboss.remoting.Client.invoke(Client.java:548)
[java] at
org.jboss.serial.objectmetamodel.DataContainer$DataContainerDirectOutput.writeObject(DataContainer.java:206)
[java] at
org.jboss.aspects.remoting.InvokeRemoteInterceptor.invoke(InvokeRemoteInterceptor.java:62)
[java] at
org.jboss.aop.joinpoint.MethodInvocation.writeExternal(MethodInvocation.java:321)
[java] at
org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
[java] at
org.jboss.serial.persister.ExternalizePersister.writeData(ExternalizePersister.java:58)
[java] at
org.jboss.aspects.tx.ClientTxPropagationInterceptor.invoke(ClientTxPropagationInterceptor.java:67)
[java] at
org.jboss.serial.objectmetamodel.ObjectDescriptorFactory.describeObject(ObjectDescriptorFactory.java:276)
[java] at
org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
[java] at
org.jboss.serial.objectmetamodel.DataContainer$DataContainerDirectOutput.writeObject(DataContainer.java:206)
[java] at
org.jboss.aspects.security.SecurityClientInterceptor.invoke(SecurityClientInterceptor.java:53)
[java] at
org.jboss.serial.persister.RegularObjectPersister.writeSlotWithFields(RegularObjectPersister.java:182)
[java] at
org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
[java] at
org.jboss.serial.persister.RegularObjectPersister.defaultWrite(RegularObjectPersister.java:90)
[java] at
org.jboss.serial.persister.RegularObjectPersister.writeData(RegularObjectPersister.java:62)
[java] at
org.jboss.serial.objectmetamodel.ObjectDescriptorFactory.describeObject(ObjectDescriptorFactory.java:276)
[java] at
org.jboss.ejb3.remoting.IsLocalInterceptor.invoke(IsLocalInterceptor.java:74)
[java] at
org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
[java] at
org.jboss.ejb3.stateless.StatelessRemoteProxy.invoke(StatelessRemoteProxy.java:107)
[java] at $Proxy0.getString(Unknown Source)
[java] at org.jboss.ejb3.example.client.Client.calculate(Client.java:79)
[java] at org.jboss.ejb3.example.client.Client.main(Client.java:54)
[java] at
org.jboss.serial.objectmetamodel.DataContainer$DataContainerDirectOutput.writeObject(DataContainer.java:206)
[java] at
org.jboss.serial.io.JBossObjectOutputStream.writeObjectOverride(JBossObjectOutputStream.java:181)
[java] at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:287)
[java] at
org.jboss.remoting.serialization.impl.jboss.JBossSerializationManager.sendObject(JBossSerializationManager.java:89)
[java] at
org.jboss.remoting.marshal.serializable.SerializableMarshaller.write(SerializableMarshaller.java:120)
[java] at
org.jboss.remoting.marshal.compress.CompressingMarshaller.write(CompressingMarshaller.java:105)
[java] at
org.jboss.remoting.transport.socket.MicroSocketClientInvoker.versionedWrite(MicroSocketClientInvoker.java:1033)
[java] at
org.jboss.remoting.transport.socket.MicroSocketClientInvoker.transport(MicroSocketClientInvoker.java:592)
[java] at
org.jboss.remoting.MicroRemoteClientInvoker.invoke(MicroRemoteClientInvoker.java:122)
[java] at org.jboss.remoting.Client.invoke(Client.java:1635)
[java] at org.jboss.remoting.Client.invoke(Client.java:548)
[java] at
org.jboss.aspects.remoting.InvokeRemoteInterceptor.invoke(InvokeRemoteInterceptor.java:62)
[java] at
org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
[java] at
org.jboss.aspects.tx.ClientTxPropagationInterceptor.invoke(ClientTxPropagationInterceptor.java:67)
[java] at
org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
[java] at
org.jboss.aspects.security.SecurityClientInterceptor.invoke(SecurityClientInterceptor.java:53)
[java] at
org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
[java] at
org.jboss.ejb3.remoting.IsLocalInterceptor.invoke(IsLocalInterceptor.java:74)
[java] at
org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
[java] at
org.jboss.ejb3.stateless.StatelessRemoteProxy.invoke(StatelessRemoteProxy.java:107)
[java] at $Proxy0.getString(Unknown Source)
[java] at org.jboss.ejb3.example.client.Client.calculate(Client.java:79)
[java] at org.jboss.ejb3.example.client.Client.main(Client.java:54)
[java] at
org.jboss.aspects.remoting.InvokeRemoteInterceptor.invoke(InvokeRemoteInterceptor.java:74)
[java] ... 11 more
and the server prints the following stack trace:
03:47:11,725 ERROR [ServerThread] Worker thread initialization failure
java.io.EOFException: Unexpected end of ZLIB input stream
at java.util.zip.InflaterInputStream.fill(InflaterInputStream.java:216)
at java.util.zip.InflaterInputStream.read(InflaterInputStream.java:134)
at java.util.zip.GZIPInputStream.read(GZIPInputStream.java:87)
at java.io.FilterInputStream.read(FilterInputStream.java:90)
at
org.jboss.serial.io.JBossObjectInputStream.checkSignature(JBossObjectInputStream.java:110)
at
org.jboss.serial.io.JBossObjectInputStream.<init>(JBossObjectInputStream.java:94)
at
org.jboss.remoting.serialization.impl.jboss.JBossSerializationManager.createInput(JBossSerializationManager.java:57)
at
org.jboss.remoting.serialization.SerializationManager.createRegularInput(SerializationManager.java:46)
at
org.jboss.remoting.marshal.compress.CompressingUnMarshaller.read(CompressingUnMarshaller.java:98)
at
org.jboss.remoting.transport.socket.ServerThread.versionedRead(ServerThread.java:677)
at
org.jboss.remoting.transport.socket.ServerThread.completeProcessInvocation(ServerThread.java:543)
at
org.jboss.remoting.transport.socket.ServerThread.processInvocation(ServerThread.java:535)
at org.jboss.remoting.transport.socket.ServerThread.dorun(ServerThread.java:371)
at org.jboss.remoting.transport.socket.ServerThread.run(ServerThread.java:169)
Compression marshalling fails intermittently.
---------------------------------------------
Key: JBREM-677
URL:
http://jira.jboss.com/jira/browse/JBREM-677
Project: JBoss Remoting
Issue Type: Bug
Security Level: Public(Everyone can see)
Affects Versions: 2.4.0.Beta1 (Pinto)
Reporter: Ron Sigal
Assigned To: Ron Sigal
Fix For: 2.4.0.Beta1 (Pinto)
When used with EJB's, CompressingUnMarshaller intermittently throws
java.io.IOException: Not in GZIP format.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
http://jira.jboss.com/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
http://www.atlassian.com/software/jira