1

我有两个 Web 应用程序,每个应用程序都有一个 RESTFul 服务。在一个服务中我需要调用第二个,例如我有StatusService和SomeService,根据状态SomeService做一些不同的动作。因此,当我调用 SomeService 时,它​​调用 StatusService 来获取当前状态然后执行操作。

所以,我reques.getServerPort()在我的 SomeService 中使用来调用我的 StatusService,我有这样的东西

 URL url = new URL("http://localhost:"+request.getServerPort()+"/app2/status");

当我直接从 jboss 调用服务时,它正在工作。

但是有一个 Apache 作为 DMZ,并且只有 SomeService 被外部化,所以当我通过 DMZ 调用 SomeService 时,它​​尝试调用http://localhost:80/app2/status而不是http://localhost:8080/app2/status.

有没有其他方法可以获取端口?

提前致谢。

4

1 回答 1

0

你可以试试request.getLocalPort

根据javadocs,它返回接收请求的端口。

于 2013-05-24T20:55:08.513 回答