【问题标题】:Restlet + Embedded jetty + webappRestlet + Embedded jetty + webapp
【发布时间】:2012-07-17 05:45:14
【问题描述】:

只是想知道这种设置是否可行:

  1. Java 应用程序 运行和监控嵌入式码头服务器
  2. Restlet 应用程序部署在嵌入式码头暴露 RESTful API
  3. 基于 Java 的 webapp(Spring、Play 等)部署在嵌入式码头并通过 Ajax 与 RESTful API 对话

我知道 Restlet 可以通过码头连接器充当 HTTP 服务器的角色,但这并不是我真正需要的。我想要的是从 java 应用程序运行的 servlet 容器(嵌入式码头)并公开两个 Web 应用程序:RESTful API 和 webapp 客户端。

【问题讨论】:

  • 好的,哇哦? ;) 我是否将我的 Restlet 应用程序编译为 *.war,然后将其与 webapp 一起部署?或者也许以某种方式指示 Jetty 运行 Restlet 应用程序的入口点来注册所有路由器?
  • 我会参加两次战争,或者只是将所有内容合并到一场战争中。我看不出分离功能的意义
  • 一个应用程序已经准备好。我只需要用用户界面来补充它,并将两者嵌入到一个服务器实例中。

标签: java jetty restlet restlet-2.0


【解决方案1】:

好吧,就我而言,事实证明这比我想象的要容易。指示 Restlet 通过this sample code 提供一些静态内容就足够了:

Directory directory = new Directory(getContext(), "file:///user/data/files/");
Router router = new Router(getContext());
router.attach("/static/", directory);

这并不能完全回答我的问题,但它解决了我的问题。由于没有更多答案,我将关闭此问题。

【讨论】: