I am using API org.eclipse.jst.common.project.facet.ui.libprov.LibraryProvi derFrameworkUi.createInstallLibraryPanel(Composite, LibraryInstallDelegate, String) to create Library Install panel on a facet wizard page, and getting ClassCastException when 1 of the library providers has an install operation AND a conguration class that does not extend org.eclipse.jst.common.project.facet.core.libprov.user.UserL ibraryProviderInstallOperationConfig. The install operation extends org.eclipse.jst.common.project.facet.core.libprov.LibraryPro viderOperation.
I dug into the LibraryProviderFrameworkUi code where the exception was coming from and indeed somewhere along the line I saw a cast to UserLibraryProviderInstallOperationConfig. Was able to work around the exception by extending UserLibraryProviderInstallOperationConfig but over-riding the validation (as was giving me validation error that a user library must be selected). Indeed one of the libraries being provided to the facet was a user library.
Expect this is a defect and can open a bug with steps to recreate?
It doesn't seem likely that this is a framework bug as there are many cases like the one that you describe and there haven't been any similar problems reported.
A more likely cause is that somewhere in your library provider implementation you've crossed the wires with user library provider components. If you post the stack trace for the ClassCastException that shows where the cast is being made, I will help you narrow down the problem.