我使用springboot和scala构建简单的webapp。我可以在我的应用程序中创建一个简单的rest API。我现在正在尝试添加一个过滤器来支持etags。但是,我没有成功。这是我的主应用程序的外观。我在这里设置过滤器时遗漏了什么吗?
object SampleApplication {
def main(args: Array[String]) {
println("SA:>>>>hello inside main");
SpringApplication.run(classOf[Launcher]);
}
}
@Configuration
@EnableAutoConfiguration
@ComponentScan
class Launcher extends SpringBootServletInitializer {
println("SA:>>>>>>inside Launcher beg")
override def onStartup(servletContext: ServletContext): Unit = {
println("SA:>>>>inside Launcher onStartup")
servletContext.addFilter("etagFilter","org.springframework.web.filter.ShallowEtagHeaderFilter").addMappingForServletNames(null,false,"/*");
//super.onStartup(servletContext)
}
override def configure(app: SpringApplicationBuilder): SpringApplicationBuilder = {
println("SA:>>>>> inside Launcher")
app.sources(classOf[Launcher])
//super.configure(app)
}
}
答案 0 :(得分:0)
感谢@M。 Deinum,在几分钟内完成了这项工作。过滤器可以与我的应用程序完美结合。
object SampleApplication {
def main(args: Array[String]) {
SpringApplication.run(classOf[SampleConfig]);
}
}
@EnableAutoConfiguration
@Bean
@ComponentScan
@Configuration
class MyFilter extends ShallowEtagHeaderFilter{
}