同时运行Jetty和jWebSocket

时间:2011-12-30 02:43:45

标签: java jetty websocket

我过去使用过Jetty,但我对jWebSocket没什么经验。我想添加到我当前的程序,它使用Jetty库,并使它也支持通过端口80的WebSocket连接。我已经读过它可以完成,但找不到任何来源或示例来阅读它。任何帮助表示赞赏。

3 个答案:

答案 0 :(得分:1)

我目前正在做同样的事情,到目前为止,我已经在Google Code上找到了他们的任务:

http://code.google.com/p/jwebsocket/issues/detail?id=76

这是在2011年4月发布的:

“现在jWebSocket.org的下载/夜间构建部分中有一个单独的项目jWebSocketJetty。”

如果从该项目中提取web.xml,看起来他们已经让他们的jwebsocket servlet与jetty一起工作了。我明天会更多地研究这个问题。

答案 1 :(得分:1)

您必须修改两个配置文件才能使用端口80在jetty上运行jWebSocket。

1: - 修改你的jWebSocket.xml并在xml引擎部分的顶部添加jetty引擎条目。

<engines>
<engine>
<name>org.jwebsocket.jetty.JettyEngine</name>
.
.
</engine>
</engines>

您可以删除所有其他引擎条目。

2: - 修改jetty.xml。该文件可以位于jWebSocketJetty \ src \ main \ resources文件夹中。 修改第一个连接器条目并将jetty.port属性设置为80。

<Call name="addConnector">
    <Arg>
        <New class="org.eclipse.jetty.server.nio.SelectChannelConnector">
            <Set name="host">
                <Property name="jetty.host" />
            </Set>
            <!-- Jetty default -->
            <!--
            <Set name="port">
                <Property name="jetty.port" default="80"/>
            </Set>
            -->
            <!-- jWebSocket default, can be changed to 80 -->
            <!-- but consider to update jWebSocket.js accordingly! -->
            <Set name="port">
                <Property name="jetty.port" default="80"/>
            </Set>
            <Set name="maxIdleTime">300000</Set>
            <Set name="Acceptors">2</Set>
            <Set name="statsOn">false</Set>
            <Set name="confidentialPort">443</Set>
            <Set name="lowResourcesConnections">20000</Set>
            <Set name="lowResourcesMaxIdleTime">5000</Set>

            <Set name="responseBufferSize">65536</Set>
        </New>
    </Arg>
</Call>

答案 2 :(得分:0)

我不知道,因为我没有使用它,但他们的JettyServlet会起作用吗?