Sử dụng Grails 2.2.1Làm thế nào để ĐÚNG tiêm dịch vụ Grails sử dụng Spring resource.groovy
Tôi có dịch vụ Grails sau định nghĩa:
package poc
class TestService {
def helperService
}
class HelperService {
}
Tôi đã sử dụng các TestService như sau (resources.groovy) :
test(poc.TestService) {
}
jmsContainer(org.springframework.jms.listener.DefaultMessageListenerContainer) {
connectionFactory = jmsConnectionFactory
destinationName = "Test"
messageListener = test
autoStartup = true
}
Mọi thứ hoạt động trừ khi dịch vụ trợ giúp tự động tạo ra, như mong đợi khi dịch vụ tạo bởi Grails. Cách duy nhất tôi có thể làm cho nó hoạt động là tiêm theo cách thủ công như sau:
//added
helper(poc.HelperService) {
}
//changed
test(poc.TestService) {
helperSerivce = helper
}
Vấn đề là nó không được tiêm giống như cách thức của Grails. Dịch vụ thực tế của tôi khá phức tạp và nếu tôi phải tiêm mọi thứ theo cách thủ công, bao gồm tất cả các phụ thuộc.
Dịch vụ Grails được tiêm theo mặc định nếu sử dụng danh pháp thích hợp. Bạn không cần phải nhập trong 'resources.groovy' cho các dịch vụ. Vấn đề bạn đang phải đối mặt với actuall là gì? – dmahapatro