获取由JETTY Services托管的所有URL

问题描述 投票:-1回答:1

我在远程计算机上托管了JETTY服务。我没有战争的源代码。但是,战争并没有招摇过头。我的问题是,如何获得服务托管的所有URL(路径)。

战争确实包含Java旋律。这样我就可以监控服务。通过Java旋律,我可以查看与HTTP相关的统计信息。特别是,我还能够查看所有最近的HTTP命中和路径。但是,我想要那里所有的路径,例如大摇大摆。

java swagger jetty java-melody
1个回答
0
投票

实际上没有获得此信息的实用方法。

这是因为从Servlet到使用Servlet的所有技术都使用映射,很少使用硬编码的路径。

例如:

/people/*
/chat/{org}/{room}
*.jsp
*.do
/product/([0-9a-f]*)/([a-z]*)

您可以得到的...

  • 战争的上下文路径。例如:战争称为myapp.war,上下文路径(假设您尚未自定义)为/myapp/
  • 公开的servlet映射。
    • 战争内容中的静态定义,请参阅WEB-INF/web.xml
    • 在战争注释中动态定义。
    • 打开server dump(注意:这不是堆转储或线程转储)以显示控制台上已注册映射的列表。

如果webapp / war使用了比标准servlet更复杂的东西,那么您将受到那些库带到表中的任何配置的约束。

一些常见示例(不是完整列表):

  • JSP:这些将是单独的JSP文件,每个文件都有各自的注册映射
  • SpringMVC:这些都将通过单个控制器servlet,它们的映射在spring配置/注释中
  • REST:它们还将通过单个控制器servlet,它们的映射在REST配置和注释中。

您将需要进行大量的挖掘工作,并剖析战争档案,以了解正在使用的技术,以及从那里那里每种技术如何注册其URL映射。

© www.soinside.com 2019 - 2024. All rights reserved.