首页 > 解决方案 > 春季没有初始化lateinit属性webServiceTemplate

问题描述

我创建了一个 bean webServiceTemplate,它在使用 @Autowired 时在 main 函数中运行良好。

@Configuration
class TaxCalculatorConfig {
    @Value("\${default-uri}")
    lateinit var defaultUri: String

    @Bean
    fun webServiceTemplate(marshaller: Jaxb2Marshaller): WebServiceTemplate {
        val template = WebServiceTemplate()
        template.defaultUri = defaultUri
        template.marshaller = marshaller
        template.unmarshaller = marshaller
        return template
    }
}

但是当我想测试它时,我得到了lateinit属性webServiceTemplate还没有被初始化,如何解决这个问题?

class TRTaxCalculatorServiceTest {
   @Autowired
    lateinit var webServiceTemplate: WebServiceTemplate

    @Test
    fun `Get response succewssfully`() {
     
        val response = TRTaxCalculatorService.getResponse(webServiceTemplate)

        assertNotNull(response)
    }
}

标签: kotlin

解决方案


推荐阅读