To reproduce this problem create a JMS cluster and update in one of the master nodes a layer resource using REST, for example updating the provided tiger_roads layer resource:
The update will be correctly propagated in all the nodes, but performing a get map request on the slaves with the updated layer will provoke a NULL pointer exception.
Note that when updating the layer resource using GeoServer UI this error doesn't happen.
This issue happens only with the REST PUT operation because the REST PUT operation copies all the fields of the updated object to the existing object:
So even fields that are no updated like the catalog will be considered updated by the modification proxy and send for alteration to the slave nodes. Since some of the catalog fields are transient the salves will update the resource instance with an invalid catalog object.
To fix this issue the catalog deserializer should ignore any received property of type catalog.