在 Jetty 6.1.14 中,如何让基本文件/网络服务器与 Java webapp 一起运行?

在 Jetty 6.1.14 中,如何让基本文件/网络服务器与 Java webapp 一起运行?

HP Operations Orchestration 9.07 (现在接近 EOL) 在端口 8443 上的 Jetty 6.1.14 webapp 中运行。

如何让 Jetty 6.1.14 在端口 80 上运行单独的基本 Web/文件服务器?

到目前为止,我在jetty.xml配置文件中所做的操作均未成功:

<Configure id="FileServer" class="org.mortbay.jetty.Server">
    <Call name="addConnector">
      <Arg>
          <New class="org.mortbay.jetty.nio.SelectChannelConnector">
            <Set name="port">80</Set>
          </New>
      </Arg>
    </Call>

    <Set name="handler">
      <New id="Handlers" class="org.mortbay.jetty.handler.HandlerCollection">
        <Set name="handlers">
          <Array type="org.mortbay.jetty.ResourceHandler">
            <Item>
              <New id="Contexts" class="org.mortbay.jetty.handler.ResourceHandler"/>
            <Set name="directoriesListed">true</Set>
        <Set name="welcomeFiles">
          <Array type="String"><Item>index.html</Item></Array>
        </Set>
            <Set name="resourceBase">.</Set>
          </New>
            </Item>
<Item>
<New class="org.mortbay.jetty.server.handler.DefaultHandler"></New>
</Item>
          </Array>
        </Set>
      </New>
    </Set>

    <Call name="addLifeCycle">
      <Arg>
        <New class="org.mortbay.jetty.deployer.WebAppDeployer">
          <Set name="contexts"><Ref id="Contexts"/></Set>
          <Set name="webAppDir"><SystemProperty name="jetty.home" default="."/>/webapps</Set>
        </New>
      </Arg>
    </Call>
</Configure>

这是通过多种课程实现的,包括https://wiki.eclipse.org/Jetty/Tutorial/Embedding_Jetty#Configuring_a_File_Server_with_XML

答案1

该版本的 Jetty 已有 6 年多历史,而 Jetty 6 本身也已停产 4 年多。我们现在发布了包含 HTTP/2 支持的里程碑版本 Jetty 9.3.x。

引用 Jetty 7/8 文档会比较困难,因为我们在 6 和 7 之间迁移到了 Eclipse 基础,所以所有的打包都发生了变化,更不用说模块本身是如何被分割的了。Jetty 6 文档仍然可以在这里找到:

http://docs.codehaus.org/display/JETTY/Jetty+Documentation

这是您需要查看的部分:

http://docs.codehaus.org/display/JETTY/Static+Content

基本上,您需要注册一个 DefaultServlet 来提供静态内容,或者连接一个 ResourceHandler 来执行相同操作。两者都需要您设置一个上下文来提供静态内容。

答案2

根据 Google+ 社区收到的与此相关的帮助问题,在 Jetty 6.1.14 中这是不可能的。

目录列出Jetty6 中不存在该选项。

相关内容