如何使用 thorntail 提供静态内容

How do I serve static content with thorntail

我有一个使用 Thorntail Project Generator 创建的新项目。我想提供少量静态文件,例如 html、图像等

我该怎么做?

假设您使用 Maven 构建项目,您需要:

  • 确保您的 Maven 项目是 <packaging>war</packaging>
  • 添加对 io.thorntail:undertow 分数的依赖
  • 将您的静态内容放入 src/main/webapp(但不在 src/main/webapp/WEB-INF 下)
  • 如果您还使用 JAX-RS,请确保 JAX-RS 应用程序未绑定到 /;例如,如果您使用最常见的启用 JAX-RS 的方式(创建一个带有 @ApplicationPath 注释的 Application 子类),请确保您没有 @ApplicationPath("/"),但有些东西喜欢 @ApplicationPath("/api")

我在这里创建了一个小示例项目:https://github.com/rhoar-qe/thorntail-test-suite/tree/master/javaee/static-content

请注意,Thorntail 基于 WildFly,因此包含相同的 servlet 容器:Undertow。如果您有更详细的需求,您可以在网络上的任何地方找到关于使用 servlet 和特别是 Undertow 提供静态内容的文章,包括 Whosebug 上的此处。