我在使这些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/
下的人不会在这种情况下工作?
答案 0 :(得分:1)
解决方法是附上:
router.attachDefault(RootServerResource.class);
代替。