在挂毯 5 中显示 .txt 或 .xml 文件

Showing a .txt or .xml file in tapestry 5

我最近开始使用挂毯。我的 Tapestry 应用程序中的 src/main/resources 中有一个名为 robots.txt 的文本文件。

我希望在输入 URL 时显示文件:localhost:8080/robots.txt.

我该怎么做?

您可以在应用程序的根目录中使用索引页

package foo.bar.mybasepackage.pages;

public class Index {
    public Object onActivate(EventContext context) {
        if (context.getCount() == 1
                && "robots.txt".equals(context.get(String.class, 0)) {

           return getRobotsTxt();
        }
        if (context.getCount() != 0) {
           return new HttpError(404, "Not found");
        }
        return this;
    }

    private StreamResponse getRobotsTxt() {
        return new TextStreamResponse(...);
    }
}