Details
-
Bug
-
Status: Open
-
Minor
-
Resolution: Unresolved
-
Java-SCA-1.6.2
-
None
-
None
-
Oracle Java 7 on Windows 7 (64bit)
Description
When one defines a class loader provider and registers it in the DefaultClassLoaderProviderExtensionPoint, it is unpredictable which class loader will actually be used. Tuscany will look up ALL class loader providers, then put the ServiceDeclaration's in a HashSet. The DefaultClassLoaderProviderExtensionPoint will iterate over the set, and keep one provider per contribution type, whichever one it happens to find last. It would be better if the result could be predicted, either on the basis of the order in which the service declarations are found on the classpath (for that, the Set would probably have to be changed to a List), or on the basis of some attribute in the service declaration itself.
cf JIRA 4073 for an example and more technical detail.