refactor from custom locator to java 6+ service locator