【发布时间】:2015-06-21 21:17:12
【问题描述】:
该应用程序使用 JDK 8、Spring Boot 和 Spring Boot Jersey 启动器并打包为 WAR(尽管它是通过 Spring Boot Maven 插件在本地运行的)。
我想做的是将我动态(在构建时)生成的文档作为欢迎页面。
我尝试了几种方法:
- 让 Jersey 通过在
application.propertiesthe proper init parameter 中进行配置来提供静态内容,如 here 所述 - 引入
metadata-complete=falseweb.xml以便将生成的 HTML 文档列为欢迎文件。
这些都没有成功。
我希望避免启用 Spring MVC 或仅为提供静态文件而创建 Jersey 资源。
有什么想法吗?
这是 Jersey 配置类(我尝试在那里添加 ServletProperties.FILTER_STATIC_CONTENT_REGEX 失败):
@ApplicationPath("/")
@ExposedApplication
@Component
public class ResourceConfiguration extends ResourceConfig {
public ResourceConfiguration() {
packages("xxx.api");
packages("xxx.config");
property(ServerProperties.BV_DISABLE_VALIDATE_ON_EXECUTABLE_OVERRIDE_CHECK, true);
property(ServerProperties.BV_SEND_ERROR_IN_RESPONSE, true);
}
}
这里是 Spring Boot 应用程序类(我尝试添加一个 application.properties 和 spring.jersey.init.jersey.config.servlet.filter.staticContentRegex=/.*html 但它不起作用,我不确定属性键应该在这里):
@SpringBootApplication
@ComponentScan
@Import(DataConfiguration.class)
public class Application extends SpringBootServletInitializer {
@Override
protected SpringApplicationBuilder configure(SpringApplicationBuilder application) {
return application.sources(Application.class);
}
public static void main(String[] args) {
SpringApplication.run(Application.class, args);
}
}
【问题讨论】:
-
能把你用过的配置贴出来吗?
-
刚刚添加了配置。
标签: java maven spring-boot jersey-2.0