java - 如何在 IntelliJ 中调试 Web 服务?

标签 java web-services intellij-idea remote-debugging

如果我做错了什么,请纠正我:

  1. 我用 Java 创建了一个 Web 服务 (WSDL),它有一个方法 TestCall()
  2. 我还创建了一个网站 http://testwebsite:8000/abc/index.html ,并且该网站正在调用步骤 1 中的 Web 服务。
  3. 我在 IntelliJ 中为其创建了远程调试。我将 testwebsite 作为主机,8000 作为端口号。
  4. 有一次我去了http://testwebsite:8000/abc/index.html然后点击TestCall(),并没有走到IntelliJ中的断点处。当我尝试远程调试 Web 服务时,出现错误:

    Unable to open debugger port (testwesite:8000), handshake failed, connection permanently closed.

有人可以告诉我我错过了哪些步骤吗?谢谢

最佳答案

当您需要远程调试应用程序时,请转到 IntelliJ 中的设置(运行 -> 编辑配置)。

现在单击+ 符号并添加Remote 配置。它告诉您要添加到远程计算机上启动的 JVM 启动中的命令行。它会是这样的:

-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=5005 适用于 jvm 5-8。

现在您可以使用这些额外的命令行选项在服务器上启动远程 Web 服务。然后您在 IntelliJ 中启动此配置。它会告诉您已连接到目标虚拟机,地址:“服务器名称”,传输:“套接字”。您可以按照本地调试习惯添加断点。

如您所见:远程调试不使用 Web 端口,而是专门为调试目的而打开的不同端口。如果服务器和您的工作站之间有防火墙,请选择打开的端口,或打开防火墙端口(如果可能)。

关于java - 如何在 IntelliJ 中调试 Web 服务?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52799330/

相关文章:

java - 使用 Selenium 和 2Captcha 解决图片验证码 (JAVA)

java - 将 JSON 文件解析为 Java 对象

java - Web 服务中错误代码的最佳实践

java - Intellij - 调试器断点不再工作

linux - 如何将Intellij IDEA从源代码编译为执行文件

java - XML 架构引用

java - 如何将 jpa 存储库初始化从启动时间移动到 Multi-Tenancy 环境的 session 创建时间

java - @DefaultValue 与 RESTful 框架中的@PathParameter 不兼容

java - 使用 Grails 项目中的 wsimport 生成 java 调用 Web 服务

java - intelij更新后无法正确导入spring boot项目