【问题标题】:Setup Jetty default webapp folder设置 Jetty 默认 webapp 文件夹
【发布时间】:2012-12-28 20:15:30
【问题描述】:

对于新手问题,我正在尝试开始将 Jetty servlet 容器用于 Scala/Ajax 应用程序。 我想将默认 webapp 目录更改为自定义目录,例如 /home/myuser/project/ 并让 jetty 为该页面的索引提供服务。

我只需要一个 doctype、head 和 body,因为所有布局都将通过 Ajax/REST/Scala 控制,DOM 完全由 JavaScript 生成。

如何让 jetty 从指定文件夹中提供自定义 index.html 文件?

我在 64 位 Ubuntu 12.10 上使用 Jetty 9 Debian 发行版,如果这有什么不同的话。

【问题讨论】:

  • 我对 'Jetty 9 Debian Distribution' 很感兴趣...你能提供一个链接吗?
  • 啊好的,只是发行版,还以为有人在制作我不知道的 .deb,谢谢

标签: scala jetty


【解决方案1】:

我相信您应该能够将名为 root.xml 的文件添加到您的 $JETTY_HOME/contexts 目录中,内容如下:

<?xml version="1.0"  encoding="ISO-8859-1"?>
<!DOCTYPE Configure PUBLIC "-//Mort Bay Consulting//DTD Configure//EN" "http://\
jetty.mortbay.org/configure.dtd">

<Configure class="org.mortbay.jetty.webapp.WebAppContext">
  <Set name="contextPath">/</Set>
  <Set name="resourceBase">
    /home/myuser/project/
  </Set>
</Configure>

您可能还需要删除$JETTY_HOME/webapps 中响应相同上下文的任何现有战争。

【讨论】:

  • 上下文本质上是一个部署到 servlet 容器的 webapp。如果您使用request.getContextPath,它应该返回安装点。 Root 是挂载在 / 的上下文。