【问题标题】:How to generate list of Java EE web services?如何生成 Java EE Web 服务列表?
【发布时间】:2019-08-29 12:26:27
【问题描述】:

问题

我需要记录我们所有的 Java EE 应用程序的 Web 服务。

我们的应用程序是一个 Maven 项目。我需要包含以下信息:

  • 服务名称
  • 模块
  • 方法
  • 代码用法 [如果可能]

目前我正在尝试手动搜索代码以查找 @WebService@WebServiceClient 的出现情况并将其写入电子表格。但这个过程非常痛苦。

努力

我曾尝试查看 IntelliJ 中的 Java Enterprise 选项卡,我一度抱有希望,但后来我注意到它在各种 Maven 模块中重复了许多 Web 服务。另外,我还没有找到导出 Web 服务列表的方法,所以无论如何我都必须手动编写它们。

我简要地查看了 ASM 项目(如 @JF_Meier 所建议的那样),但这似乎太陡峭的学习曲线目前不可行。当我偏离正题并花更多时间在“有效”的过程上而不是继续下去时,我会感到不满。

我查看了 Maven,希望有类似 mvn dependency:tree 之类的东西,但用于 Web 服务。我还没有找到类似的东西。

问题

有没有更有效的方法在 Maven/Java EE 应用程序中生成 Web 服务列表?

【问题讨论】:

  • 当然,我相信它可以以更有效的方式实现,编写一个在启动时执行的方法并扫描所有类以寻找那些表明您需要的注释。另一方面,这个问题的范围很广,可以在这里回答(我的观点)
  • @lealceldeiro,你说得对,这是一个广泛的问题——你有什么建议吗?我该如何缩小范围?
  • 发布你尝试过的东西(代码),解释它做了什么(如果需要)以及它失败的地方。如果你还没有实现任何东西,那么我已经给了你一个关于如何做的线索(关于如何解决问题的总体思路)。但最重要的是尝试在网络上研究如何做到这一点,我的意思是,没有代码,但是关于如何解决这类问题的想法,当你得到这个想法时,让我们动手(你的:))代码。之后你会遇到一些具体的问题,比如“如何在启动时执行一个方法?”,“如何扫描一个项目中的所有java类”等等。
  • 请记住,这里的一些用户会因为他们认为您试图让他们完成您的(家庭|项目)工作而感到恼火。
  • 我明白了,谢谢。我以为我已经描述了我的过程,是手动搜索代码的过程之一。但我会尽量详细说明

标签: java maven web-services jakarta-ee java-7


【解决方案1】:

您可以使用 asm 之类的库来扫描字节码中的注释。

它允许您与访问者一起浏览代码。然后你可以寻找像@WebService 这样的注解。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-06-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-02-15
    • 2010-11-26
    • 1970-01-01
    相关资源
    最近更新 更多