I've turned on Tomcat clustering on an existing application, and thus
the session-bound user DataContext is being serialized across the
wire. Whenever I connect to a Tomcat node, the nodes that are
replicated to report the attached exception. Based on the line number
(Cayenne 1.2.1), it looks like the objectStore has null elements in
it, which does not make any sense.

Any ideas?

Cris


ERROR [org.apache.catalina.cluster.tcp.TcpReplicationThread[1]] -
2006-12-01 10:44:42,264 Manager [/integration]: Unable to receive
message through TCP channel
java.lang.NullPointerException
       at 
org.objectstyle.cayenne.access.DataContext.readObject(DataContext.java:1806)
       at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
       at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
       at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
       at java.lang.reflect.Method.invoke(Method.java:585)
       at java.io.ObjectStreamClass.invokeReadObject(ObjectStreamClass.java:946)
       at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1809)
       at 
java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1719)
       at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1305)
       at 
java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1908)
       at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1832)
       at 
java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1719)
       at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1305)
       at 
java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1908)
       at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1832)
       at 
java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1719)
       at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1305)
       at java.io.ObjectInputStream.readObject(ObjectInputStream.java:348)
       at 
org.apache.catalina.cluster.session.DeltaRequest$AttributeInfo.readExternal(DeltaRequest.java:334)
       at 
org.apache.catalina.cluster.session.DeltaRequest.readExternal(DeltaRequest.java:246)
       at 
org.apache.catalina.cluster.session.DeltaManager.loadDeltaRequest(DeltaManager.java:697)
       at 
org.apache.catalina.cluster.session.DeltaManager.handleSESSION_DELTA(DeltaManager.java:1572)
       at 
org.apache.catalina.cluster.session.DeltaManager.messageReceived(DeltaManager.java:1522)
       at 
org.apache.catalina.cluster.session.DeltaManager.messageDataReceived(DeltaManager.java:1271)
       at 
org.apache.catalina.cluster.session.ClusterSessionListener.messageReceived(ClusterSessionListener.java:85)
       at 
org.apache.catalina.cluster.tcp.SimpleTcpCluster.receive(SimpleTcpCluster.java:1167)
       at 
org.apache.catalina.cluster.tcp.ClusterReceiverBase.messageDataReceived(ClusterReceiverBase.java:426)
       at 
org.apache.catalina.cluster.io.ObjectReader.execute(ObjectReader.java:107)
       at 
org.apache.catalina.cluster.tcp.TcpReplicationThread.drainChannel(TcpReplicationThread.java:138)
       at 
org.apache.catalina.cluster.tcp.TcpReplicationThread.run(TcpReplicationThread.java:69)

Reply via email to