Create an event listener that filters by node type name, and then add (or change or remove) a property on the root node. In many cases, the result will be an NPE within JcrObservationManager (on or around line 814 and
Map<Name, Property> propMap = this.propertiesByLocation.get(parentLocation);
assert (propMap != null);
Here, when 'parentLocation' is the root, the 'propMap' result will be null.