When running with Derby in an OSGi environment, there are a couple of changes that are needed in the manifest.
1. The manifest does not have a Bundle Symbolic Name. This causes some tools not to recognize it as an OSGi bundle and some things don't work nicely without the symbolic name.
Add Bundle-SymbolicName: derby to the manifest.
2. I'm working with a product that creates dynamic proxies for all of the interfaces like Connection, Statement, etc.
As part of doing that, it needs access to all classes that are referenced in those interface classes.
There are several classes that are referenced in packages that are not exported. The following exports needed to be added to the manifest: