Issue
I have an external data source, which will return a string indicating the name of a Grails service to use.
What's the syntax to get an instance of this service programatically given the name of the service as a String?
ie. given 'GoogleWeather', give me an instance of GoogleWeatherService.
Thanks!
Solution
The Grails documentation describes a way to get a service when in a servlet. This might be useful, if you can obtain the same objects in your context:
ApplicationContext ctx = (ApplicationContext)ApplicationHolder.getApplication().getMainContext();
CountryServiceInt service = (CountryServiceInt) ctx.getBean("countryService");
String str = service.sayHello(request.getParameter.("name"));
Answered By - Michael Easter
Answer Checked By - Timothy Miller (JavaFixing Admin)