में गतिशील रूप से एक सेवा का चयन कैसे करें मेरे नियंत्रक से मैं गतिशील रूप से पैरामीटर के आधार पर एक सेवा का चयन करना चाहता हूं।Grails
वर्तमान में मेरे पास आधार सेवा और कुछ अन्य सेवाएं हैं जो इस बेस सेवा को सीमित करती हैं। मैं एक वर्ग है कि करता है एक सेम परम के आधार पर नाम बनाता है और अंत में निम्नलिखित कॉल फोन पैरामीटर के आधार पर:
import org.codehaus.groovy.grails.web.context.ServletContextHolder as SCH
import org.codehaus.groovy.grails.web.servlet.GrailsApplicationAttributes as GA
class Resolver {
def ctx
def getBean(String beanName) {
if(!ctx) {
ctx = SCH.servletContext.getAttribute(GA.APPLICATION_CONTEXT)
}
return ctx."${beanName}"
}
}
यह सेवा मैं चाहता हूँ देता है। हालांकि मैं इसे इस तरह से गंदे महसूस कर रहा हूं। क्या किसी के पास कुछ पैरामीटर के आधार पर सेवा (या कोई अन्य बीन) प्राप्त करने के लिए बेहतर तरीका है?
धन्यवाद।