factored out exception-handling logic from PluginComposite
PluginComposite is now a real Composite