Recientemente publiqué un question sobre una forma de definir la implementación de un servicio abstracto en el lado del cliente.JAVA 6 ServiceLoader
dfa mencioné java.util.ServiceLoader como una solución para mi problema.
Terminé yendo de una manera similar, aunque no usé ServiceLoader directamente, principalmente porque estaba usando JDK 5. Pero otro jut de SOer entró en pánico cuando dfa mencionó ServiceLoader.
Me pregunto cuáles son los principales problemas con la implementación de ServiceLoader. Aunque limitado, parece una buena manera de resolver este problema sin completar una biblioteca de terceros como Guice
Esta pregunta es un poco viejo, pero si alguien en el futuro se encuentra presente, esta respuesta a otra pregunta puede arrojar alguna luz sobre por qué ServiceLoader no es muy buena: http://stackoverflow.com/questions/7039467/java-serviceloader-with-multiple-classloaders/7237152#7237152 – Dogmatixed