Documenting some of the quirks, bugs and workarounds in WebCenter Spaces. These apply to PS2.
ADF BC validation messages don’t propagate correctly
See my post here. I snooped around in the webcenter code and this is what I discovered. Spaces uses a custom error handler. This error handler assumes any exception that’s not within “oracle.webcenter.**” package to be an unhandled error. It does have an instanceof JBOException check but that’s only to determine if it’s a bundle of exceptions. Anyway, all exceptions outside of oracle.webcenter.** are designated as unknown errors and thus displayed to the user.
To workaround this issue I had to do the following
- Create a custom Exception class under oracle.webcenter.xyz package
- Move all the validations into programmatic blocks. For e.g. into validateEntity.
- Raise the custom exception for validation errors.
Declarative validations are a very powerful and easy-to-use feature of ADF BC. Unfortunately, using Spaces has rendered this unusable. I didn’t have the time to look for a more elegant solution.
Oracle Support raised an Enhancement Request for this on my behalf, but that’s not going to help me now.
Update: A more elegant solutions perhaps – here.
Disable CSS compression in WebCenter Spaces
Tried editing the web.xml in CustomWebCenterSpacesWAR and deploying the shared library. Also tried copying the entire web.xml from spaces.war into the custom project and deploying that. Neither of the suggested methods seem to work. I had to finally update the web.xml directly in webcenter.ear/spaces.war and redeploy webcenter to get this working.
That wasn’t much of a help though. In addition to the standard adf selectors, the default skins in webcenter appear to use classes like “AFTabAboveStartUnselectedDisabledLevel12Background” and these don’t seem to be documented anywhere. Our initial intent was to extend whitefx.desktop and change only what we wanted to. That didn’t work and so we had to make a copy of whitefx.css and edit whatever was required. Skinning is a pain.