Restlet路由不适用于路由中的Directory?

时间:2016-01-04 19:05:51

标签: java restlet

我在使这些Restlet服务器资源工作时遇到了一些麻烦:

  private static final String ROOT_URI = "/rest/";
  @Override
  public Restlet createInboundRoot() {
    Router router = new Router(getContext());
    Directory directory = new Directory(getContext(), "war:///doc");
    directory.setIndexName("app.html");
    router.attach(ROOT_URI + "files", GaeFilesServerResource.class);
    router.attach(ROOT_URI + "files/{file_id}", GaeFileServerResource.class);
    router.attach("/gwtapp/", directory); // This is the only one that works
    router.attach("/", RootServerResource.class);
    return router;
  }

如评论中所述,route / gwtapp /是唯一有效的。正确访问http://localhost:8080/gwtapp/转发至http://localhost:8080/gwtapp/app.html

问题是:

我想知道为什么//rest/下的人不会在这种情况下工作?

1 个答案:

答案 0 :(得分:1)

解决方法是附上:

router.attachDefault(RootServerResource.class);

代替。