如何在IntelliJ中调试Web服务?

时间:2018-10-14 03:52:14

标签: 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服务时,出现错误:
      

    无法打开调试器端口(testwesite:8000),握手失败,连接永久关闭。

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

1 个答案:

答案 0 :(得分:2)

当您需要远程调试应用程序时,请转到IntelliJ中的设置(Run->Edit configurations)。

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

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

现在,您可以使用这些额外的命令行选项在服务器上启动远程Web服务。然后,您可以在IntelliJ中启动此配置。它将告诉您Connected to target VM, address: 'server name', transport: 'socket'。您可以像使用本地调试一样添加断点。

您将看到:远程调试不使用Web端口,而是使用一个专门为调试目的而打开的端口。如果服务器和工作站之间存在防火墙,请选择一个打开的端口,或者打开防火墙端口(如果可能)。

相关问题