该应用程序使用JDK 8,Spring Boot和Spring Boot Jersey启动程序,并打包为WAR(尽管它是通过Spring Boot Maven插件在本地运行的)。我想做的是获得我在运行中(在构建时)生成的文档作为欢迎页面。我尝试了几种方法:通过按照此处所述配置application.properties 适当的init参数,让Jersey提供静态内容引入metadata-complete=false web.xml以便将生成的HTML文档列出为欢迎文件。这些都没有解决。我想避免不得不启用Spring MVC或创建仅用于提供静态文件的Jersey资源。任何想法?这是Jersey的配置类(我尝试在那添加一个失败ServletProperties.FILTER_STATIC_CONTENT_REGEX):@ApplicationPath("/")@ExposedApplication@Componentpublic 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.propertieswith,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); }}
3 回答
慕森卡
TA贡献1806条经验 获得超8个赞
以下设置对我有用
组
spring .jersey.type: filter
设置 FILTER_FORWARD_ON_404
@Configuration
public class MyResourceConfig extends ResourceConfig {
public MyResourceConfig () {
try {
register(XXX.class);
property(ServletProperties.FILTER_FORWARD_ON_404, true);
} catch (Exception e) {
LOGGER.error("Exception: ", e);
}
}
}
注意:使用@Configuration 而不是@component
添加回答
举报
0/150
提交
取消