This week's book giveaway is in the OCAJP 8 forum. We're giving away four copies of OCA Java SE 8 Programmer I Study Guide and have Edward Finegan & Robert Liguori on-line! See this thread for details.
The deployed applications are visible in the folder C:\WebSphere\AppServer\profiles\AppSrv01\installedApps\MyCell01. Let us the name of an application is called online and its contents are present in C:\WebSphere\AppServer\profiles\AppSrv01\installedApps\MyCell01\online_1.ear. The jar files of online_1.ear are present in this folder. After starting the server, I am able to delete/replace some of the jars but not the others. The jars that could not be deleted come up with a message 'the jar is in use'. I understand that deleting the jar is incorrect and I may get an error in the operation of the application later.
My question is why did Websphere permit me to delete some jars and not some others.
The intention of the question is that we have an ojdbc.jar outside the container, but is used by webspere to reach oracle. The customer had deleted it by mistake. Some containers continued the operation without error till we restarted and some failed immediately. The customer wants to know if we have any backdoor to oracle without relying on ojdbc.jar. We aren't and I have to prove that we rely on ojdbc.jar. But don't have a theory to support.
I may only guess that jar file are locked by the underlying S.O only when one of WAS's classloaders uses those file to load classes, i.e when they are actually used by your application. And that behaviour may depend upon SO Websphere is installed on...