We are using Apache POI library in several Xpages applications running on Domino 9 servers. Now when upgrading HCL Notes Designer to R11 we can see that Apache POI is available in jvm\lib\ext folder in version 4.1.1 (used by Notes itself see here https://nevermind.dk/nevermind/blog.nsf/subject/an-important-change-in-hcl-notes-v11) . And here is an issue ... our applications are using Apache POI 3.x, Apache POI libs area attached into 'jars' in database design, but for some reason Designer is using the newer one from filesystem and not ours. Apache POI 4.x and 3.x is not compatible in some areas so we have a compilation errors.
What is the solution for such situation? Apps are supposed to run on R9 servers and we are not supposed to rewrite these just because HCL uses Apache POI 4.x internally in Notes. Is there a way how to force an application to use Apache POI that is attached in our application?
Discussed with HCL technical support and got an answer, that there is no other way than update our application code when upgrading to R11. One just have to keep in mind that Apache POI 4.x and up requires JAVA 8, so one needs at least Domino R9 FP8 and higher when doing code update.
But generally its better to do it when still running R9 FP8+ because this way both Apache POI versions can be used temporarily. So we can migrate the code to POI 4.1.1 and then we can make an R11 upgrade. This POI issue is related to xPages and Java agents, if Apache POI is being used there. And its our case ...