When you try to proxy an unproxyiable class, OWB installs its own, unlikely-to-work javassist ProxyFactory.ClassLoaderProvider. This permanently breaks Javassist since there's no way to reinstall the default.
This is silly, because its much faster to check for finality than to try to construct the proxy factory. Checking for known reasons the proxy can't be created before trying to build the proxy factory avoids this problem.
Attached patch also avoids an NPE that I've run into in geronimo.