2009-06-02 1 views
4

Я использую весну от scala, и я столкнулся с проблемой при попытке ввести услугу с признаком/суперклассом.Использование @Autowired весны с scala

Это мой код:

trait MyServiceHolder{ 
    var myService:MyService = null 

    @Autowired 
    def setMyService(ms:MyService) = myService = ms 
} 

@RunWith(classOf[SpringJUnit4ClassRunner]) 
@ContextConfiguration(Array("file:src/main/webapp/WEB-INF/application-context.xml")) 
class MyConcreteClass extends MyServiceHolder{ 

    def hello() = myService.hello() 

} 

Это работает:

@RunWith(classOf[SpringJUnit4ClassRunner]) 
@ContextConfiguration(Array("file:src/main/webapp/WEB-INF/application-context.xml")) 
class MyConcreteClass{ 

    var myService:MyService = null 

    @Autowired 
    def setMyService(ms:MyService) = myService = ms 

    def hello() = myService.hello() 

} 

Проблема заключается в том, что MYSERVICE является недействительным в моих testcases. При просмотре уровня байт-кода (файла класса) присутствуют все аннотации. Есть идеи?

ответ

3

Вам нужно использовать форму Spring TestContext Framework, чтобы ваши компоненты были настроены весной при выполнении тестов.

+0

Я использую junit бегун. добавила его в мой код. – MrWhite

Смежные вопросы