Patent ID: 8595715

Claim:
A processor-implemented method of performing dynamic software version selection, comprising: executing a software component of a middleware application on a processing device; associating a binding library with the software component, the binding library comprising a loader component and a binding component, where: the loader component serves as an intermediary between the software component and the binding component; and the binding component comprises software component-side logic; utilizing the binding library to interface with a remote server of the middleware application across a network environment; utilizing a program version table to store specific library versions for corresponding programs utilized by the software component; receiving an updated version of a library of the binding component; storing the updated version in the program version table; recognizing a trigger by the loader component to load a different library from the binding component into memory of the processing device by receiving an application programming interface call from the software component; selecting by the loader component, a desired version of the requested library based upon a value of a library version variable associated with the program version table, where the desired version of the library is selected from at least two versions of the library associated with the binding component of the binding library; and loading the desired version of the library into memory of the processing device by: logically disconnecting from the middleware application; unloading a previously loaded library; loading the updated version of the library; and reconnecting to the middleware application, without restarting the middleware application.