如何部署Tomcat的示例websocket应用程序?

2024-03-25

我正在尝试了解如何部署 Apache Tomcat 7 中引用的示例WebSocket 操作方法 http://tomcat.apache.org/tomcat-7.0-doc/web-socket-howto.html page.

应用程序开发部分建议阅读 javadocWebSocketServlet http://tomcat.apache.org/tomcat-7.0-doc/api/index.html?org/apache/catalina/websocket/WebSocketServlet.html班级。但看着示例的服务器端代码 http://svn.apache.org/viewvc/tomcat/trunk/webapps/examples/WEB-INF/classes/websocket/,三个示例中都没有类extend WebSocketServlet,这正是我所期望的。

十多年后,我重新回到 servlet 开发领域,并对这些示例中的所有注释感到非常迷失。是否有另一个 How-To 提供了使用 servlet 启动并运行 WebSocket 的分步简单说明?


当您下载 Apache Tomcat 发行版时 http://tomcat.apache.org/download-70.cgi(7.0.37是目前最新版本),您将拥有examplesWeb 应用程序已部署。它带有WebSocket 示例 http://tomcat.apache.org/tomcat-7.0-doc/web-socket-howto.html。您不必自己部署它。

启动Tomcat并打开http://localhost:8080/examples.

Click WebSocket 示例并选择您想要的任何 WebSocket 示例。

除了启动 Tomcat 之外,您无需执行任何操作bin/catalina.sh run(或任何适合你的命令)。

当你审视[TOMCAT_HOME]/webapps/examples目录,你可能想看看WEB-INF/web.xml您可以在其中看到部署的 WebSocket servlet。

他们的源代码位于[TOMCAT_HOME]/WEB-INF/classes/websocket目录。

小服务程序websocket.echo.EchoMessage确实延伸org.apache.catalina.websocket.WebSocketServlet.

我不知道我是否应该询问您使用的 Apache Tomcat 版本?也许您使用其他一些不太新的版本?我建议从最新版本开始,因为它对我来说效果很好。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何部署Tomcat的示例websocket应用程序? 的相关文章

随机推荐

  • 访问另一个结构体指针内的结构体指针内的元素

    只是想了解结构体的嵌套指针如何工作 如何访问另一个指向结构的指针中的结构指针中的元素 谢谢 include
  • 如何让 Qt 识别 QMYSQL 驱动程序

    我试图从 Qt 应用程序访问 MySql 数据库 但出现以下错误 QSqlDatabase QMYSQL driver not loaded QSqlDatabase available drivers QSQLITE QSQLITE2 我
  • 确定 Java 8 中的列表是否由字谜元素组成

    我想确定列表是否是字谜或不使用 Java 8 输入示例 cat cta act atc tac tca 我已经编写了以下函数来完成这项工作 但我想知道是否有更好 更优雅的方法来完成这项工作 boolean isAnagram String
  • Kotlin 和 Firebase 读写数据

    我已经学习 Kotlin 3 周了 所以我想从我的 Firebase 数据库中读取数据 这是写入数据的MainActivity kt val database Firebase database val latitude latitude
  • 如何使用 shell 脚本连接 2 个 csv 文件?

    我正在尝试制作一个 shell 脚本 它将通过以下方式组合两个 csv 文件 我有两个 csv 文件 f1 csv 和 f2 csv f1 csv的格式为 startId endId roomNum f2 csv 的格式如下 startId
  • 使用 Wget 跳过成功下载的文件

    所以我有这个 Bash 子例程来使用 wget 下载文件 现在我的问题是如何跳过成功下载的文件 该脚本会下载很多文件 一旦下载失败 它会重新下载所有文件 覆盖那些从一开始就成功的下载 可能会因为重新下载而不完整 那么如何跳过那些下载成功的文
  • Heroku 上的媒体文件

    如果我在 Heroku 上托管一个小型 Django 网站 并且只使用一台 dyno 那么是否可以在该服务器上上传媒体文件 或者我是否必须使用 AWS S3 存储来存储媒体文件 媒体存储还有哪些其他替代方案 不 在 Heroku 文件系统上
  • 如何以编程方式检查、获取和设置 Android 手机中的触摸设置?

    是否可以通过编程方式获取 Android 中的各种触摸设置 例如 gt 拨号盘按键音 gt 触摸声音 gt 屏幕锁定声音 gt 触摸时振动 我尝试访问 System Settings 中的各种常量 但我没有看到任何提及触摸设置的常量 任何人
  • pImpl 是否从根本上解决了 C++ DLL 问题?

    我正在尝试从带有 stl 成员的 DLL 中导出 C 类 这是我的主要课程 class MATHFUNCSDLL API MyMathFuncsImpl public std vector
  • 如何限制对 Firestore 中用户拥有的文档的写入?

    我有一些文章 每篇文章都有一个参考字段到个人资料document撰写该特定文章的作者的姓名 经过身份验证的用户 使用 Firebase 的身份验证 将与这些配置文件关联 仅当当前登录的用户拥有该文章时 如何才能使这些文章可由该用户编辑 在
  • 构造函数中具有实例名称知识的 Matlab 类

    我想要一个类 在其构造函数中可以了解其实例名称 提取为字符串 目前 我像这样提取名称 classdef mysession methods Access public function this mysession varargin thi
  • 在 Rails 5+ 中禁用 sprocket 资源缓存

    我已经尝试了很多禁用 Rails 中的 sprocket 资源缓存 但没有成功 我尝试配置development rb 但它根本不起作用 我正在使用此代码来禁用缓存生成 config assets cache store null stor
  • 更改最后一个
  • 的 CSS
  • 我想知道是否有某种方法可以更改最后一个 CSS 属性li在使用 CSS 的列表中 我已经研究过使用 last child 但这看起来确实有问题 我无法让它为我工作 如有必要 我将使用 JavaScript 来完成此操作 但我想知道是否有人可
  • 如何解释 Seaborn distplot 的轴

    Snippet plt figure figsize 10 5 plt xticks np arange 0 11 1 sns distplot 1 1 2 2 3 3 4 4 5 5 6 6 7 7 8 8 9 9 10 10 kde F
  • 如何增加LVL缓存有效时间?

    我已经在我的应用程序中实施了 LVL 服务器托管策略 我知道lvl服务器响应会在设备中缓存一段时间 因此用户可以在没有互联网连接的情况下使用应用程序 然后lvl使用缓存的许可证 我想知道这个期限到底有多长以及如何延长它 基本上 lvl 我已
  • 用于在不同工作簿中选择范围的 VBA 对话框

    我想允许用户选择可能位于不同工作簿中的范围 我尝试使用 inputbox type 8 来执行此操作 它可以选择工作簿中的数据 但不允许我在不同的工作簿中选择范围 因此我想要一个允许我执行此任务的对话框 由于我有空 我为您创建了一个示例 创
  • .JSchException:数据包损坏

    我在 RHEl 6 上使用 Jsch 0 1 51 和 Jdk 1 7 51 在与远程计算机进行会话时 我收到以下异常 com jcraft jsch JSchException Packet corrupt at com jcraft j
  • Python venv env 失败 - [WinError 2] 系统找不到指定的文件

    我在 Windows 10 计算机上安装了最新版本的 Python 3 8 2 我以前有Python 3 7 我将其卸载并确认在系统路径中不再引用它 安装最新版本后 我以管理员身份运行CMD py m venv env 我收到此错误 错误
  • 添加到Python中正在迭代的双端队列?

    我在 Python 中有一个双端队列 正在对其进行迭代 有时 当我进行交互时 双端队列会发生变化 从而产生RuntimeError deque mutated during iteration 如果这是一个 Python 列表而不是双端队列
  • 如何部署Tomcat的示例websocket应用程序?

    我正在尝试了解如何部署 Apache Tomcat 7 中引用的示例WebSocket 操作方法 http tomcat apache org tomcat 7 0 doc web socket howto html page 应用程序开发