获取 JETTY 服务托管的所有 URL
Get all URLs hosted by a JETTY Service
我在远程机器上托管了一个 JETTY 服务。我没有war的源代码。
但是,war 没有招摇。我的问题是,如何获取我的服务托管的所有 URL(路径)。
war 确实包含 java 旋律。这样我就可以监控服务了。通过 java melody,我可以看到与 HTTP 相关的统计信息。特别是,我还能够查看所有最近的 HTTP 命中和路径。但是,我想要那里的所有路径,就像招摇一样。
确实没有实用的方法来获取这些信息。
这是因为从 Servlet 到使用 Servlet 的所有技术都使用映射,很少使用硬编码路径。
例如:
/people/*
/chat/{org}/{room}
*.jsp
*.do
/product/([0-9a-f]*)/([a-z]*)
你能得到什么...
- war 的上下文路径。例如:war 被称为 myapp.war,上下文路径(假设您没有自定义它)将是
/myapp/
.
- 公开的 servlet 映射。
- 在war的内容中静态定义,参见
WEB-INF/web.xml
。
- 在 war 的注释中动态定义。
- 打开server dump(注意:这不是堆转储或线程转储)以在控制台上显示已注册映射的列表。
如果 webapp / war 使用比标准 servlet 更复杂的任何东西,那么您将受制于这些库为 table 带来的任何配置。
一些常见的例子(不是一个完整的列表):
- JSP:这些将是单独的 JSP 文件,每个文件都有自己注册的映射
- SpringMVC:这些都将通过一个控制器 servlet,这些的映射在 spring 配置/注释中
- REST:这些也将通过单个控制器 servlet,它们的映射在 REST 配置和注释中。
您将需要进行大量挖掘工作,并剖析 war 文件以了解正在使用的技术,以及这些技术中的每一种如何注册它们的 URL 映射。
我在远程机器上托管了一个 JETTY 服务。我没有war的源代码。 但是,war 没有招摇。我的问题是,如何获取我的服务托管的所有 URL(路径)。
war 确实包含 java 旋律。这样我就可以监控服务了。通过 java melody,我可以看到与 HTTP 相关的统计信息。特别是,我还能够查看所有最近的 HTTP 命中和路径。但是,我想要那里的所有路径,就像招摇一样。
确实没有实用的方法来获取这些信息。
这是因为从 Servlet 到使用 Servlet 的所有技术都使用映射,很少使用硬编码路径。
例如:
/people/*
/chat/{org}/{room}
*.jsp
*.do
/product/([0-9a-f]*)/([a-z]*)
你能得到什么...
- war 的上下文路径。例如:war 被称为 myapp.war,上下文路径(假设您没有自定义它)将是
/myapp/
. - 公开的 servlet 映射。
- 在war的内容中静态定义,参见
WEB-INF/web.xml
。 - 在 war 的注释中动态定义。
- 打开server dump(注意:这不是堆转储或线程转储)以在控制台上显示已注册映射的列表。
- 在war的内容中静态定义,参见
如果 webapp / war 使用比标准 servlet 更复杂的任何东西,那么您将受制于这些库为 table 带来的任何配置。
一些常见的例子(不是一个完整的列表):
- JSP:这些将是单独的 JSP 文件,每个文件都有自己注册的映射
- SpringMVC:这些都将通过一个控制器 servlet,这些的映射在 spring 配置/注释中
- REST:这些也将通过单个控制器 servlet,它们的映射在 REST 配置和注释中。
您将需要进行大量挖掘工作,并剖析 war 文件以了解正在使用的技术,以及这些技术中的每一种如何注册它们的 URL 映射。