Yes, this is some limitation on PojoCache with "active" updates on all nodes as discussed previously here: http://jira.jboss.com/jira/browse/JBCACHE-674
However, I don't see why your test would fail though since field accessor should be intercepted by PojoCache on both nodes. Can you post your code snippet?
The interceptor works fine on both ServerA and ServerB, and getTotal returns the correct value. The problem I was having was in ClientB - In the client, the interceptor sees that the object is not connected to the cache (The private field is transient, so in the client it is null), and returns the in-memory field, which is 0.
I overcame this problem by implementing the writeObject method. I wrote into the out stream the results of getTotal(), and not the total field. This way the serialization in the server wrote the correct values, and my client sees the right number.
Well, if it is transient field, then you should initialize it anyway, shouldn't you? :-)