When CompassContextBeanPostProcessor is searching for the Compass bean, it calls getBeanNamesForType() on the application context.
This works fine unless the Compass bean is in a parent application context, which is how I want to structure mine.
The easy fix, as mentioned in the javadoc for the getBeanNamesForType() method, is to use BeanFactoryUtils.beanNamesForTypeIncludingAncestors(). This will ssearch up through the context hierarchy until it finds a match.