1

We have two web applications; AppA (as EAR) uses TwelveMonkeys and AppB (as WAR) uses JAI.

These web applications are deployed on Weblogic 12c, wherein each application is isolated from each other. They both have application-level classloaders (to ensure that libraries on one app do not conflict with another), and container-level and system-level classloaders.

We've configured the system to ensure that TwelveMonkeys is only loaded through the AppA app-level classloader. However, AppB somehow still sees TwelveMonkeys classes and encounters ClassCastExceptions.

Is there a way to properly enforce TwelveMonkeys to be within the scope of one application only, and not all applications (which this situation seems to point at)?

Is this behavior typically attributed to TwelveMonkeys, or would this be a Weblogic issue? Does TwelveMonkeys play well with multiple applications in other containers?

Ali
  • 2,702
  • 3
  • 32
  • 54
ET_Andes
  • 11
  • 3
  • As I wrote in the [related issue](https://github.com/haraldk/TwelveMonkeys/issues/467#issuecomment-450926974) I believe this is more a design problem with `ImageIO` (its global, shared registry), than an issue with Weblogic, TwelveMonkeys or JAI. Would love to hear if someone has a good solution, or even an idea for a general and robust solution, though. :-) – Harald K Jan 03 '19 at 12:47
  • Thank you (and for your comments in the TwelveMonkeys Github as well). Actually we've resorted to making sure we have the proper packages loaded and recognized and deregistering the providers we don't want to work with at runtime. – ET_Andes Jan 04 '19 at 01:23

0 Answers0