Unable to access "Process & Task Dashboard" page while running in NAT environment for JBoss BPM Suite 6.0.2
Environment
- Red Hat JBoss Business Process Management Suite (BPM Suite) 6.0.2
Issue
Under NAT environment, assume a browser and a BPMS server are located in different network segments:
Server IP: 192.168.46.11
NAT-ed IP: 10.168.56.11
It is not possible to access Process & Task Dashboard
page with a browser from a different network segment. The following ConnectException
error raises in server side by clicking on Process & Task Dashboard
tab from menu:
08:14:28,458 ERROR [stderr] (http-/192.168.46.11:8080-6) java.net.ConnectException: Connection timed out
08:14:28,459 ERROR [stderr] (http-/192.168.46.11:8080-6) at java.net.PlainSocketImpl.socketConnect(Native Method)
08:14:28,460 ERROR [stderr] (http-/192.168.46.11:8080-6) at java.net.PlainSocketImpl.doConnect(PlainSocketImpl.java:351)
08:14:28,460 ERROR [stderr] (http-/192.168.46.11:8080-6) at java.net.PlainSocketImpl.connectToAddress(PlainSocketImpl.java:213)
08:14:28,460 ERROR [stderr] (http-/192.168.46.11:8080-6) at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:200)
08:14:28,461 ERROR [stderr] (http-/192.168.46.11:8080-6) at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:366)
08:14:28,461 ERROR [stderr] (http-/192.168.46.11:8080-6) at java.net.Socket.connect(Socket.java:529)
08:14:28,461 ERROR [stderr] (http-/192.168.46.11:8080-6) at java.net.Socket.connect(Socket.java:478)
08:14:28,461 ERROR [stderr] (http-/192.168.46.11:8080-6) at sun.net.NetworkClient.doConnect(NetworkClient.java:163)
08:14:28,462 ERROR [stderr] (http-/192.168.46.11:8080-6) at sun.net.www.http.HttpClient.openServer(HttpClient.java:411)
08:14:28,462 ERROR [stderr] (http-/192.168.46.11:8080-6) at sun.net.www.http.HttpClient.openServer(HttpClient.java:525)
08:14:28,462 ERROR [stderr] (http-/192.168.46.11:8080-6) at sun.net.www.http.HttpClient.<init>(HttpClient.java:208)
08:14:28,463 ERROR [stderr] (http-/192.168.46.11:8080-6) at sun.net.www.http.HttpClient.New(HttpClient.java:291)
08:14:28,463 ERROR [stderr] (http-/192.168.46.11:8080-6) at sun.net.www.http.HttpClient.New(HttpClient.java:310)
08:14:28,463 ERROR [stderr] (http-/192.168.46.11:8080-6) at sun.net.www.protocol.http.HttpURLConnection.getNewHttpClient(HttpURLConnection.java:987)
08:14:28,463 ERROR [stderr] (http-/192.168.46.11:8080-6) at sun.net.www.protocol.http.HttpURLConnection.plainConnect(HttpURLConnection.java:923)
08:14:28,464 ERROR [stderr] (http-/192.168.46.11:8080-6) at sun.net.www.protocol.http.HttpURLConnection.connect(HttpURLConnection.java:841)
08:14:28,464 ERROR [stderr] (http-/192.168.46.11:8080-6) at sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1195)
08:14:28,464 ERROR [stderr] (http-/192.168.46.11:8080-6) at java.net.HttpURLConnection.getResponseCode(HttpURLConnection.java:379)
08:14:28,465 ERROR [stderr] (http-/192.168.46.11:8080-6) at org.jbpm.dashboard.renderer.service.impl.DashboardRendererServiceImpl.getAppStatus(DashboardRendererServiceImpl.java:22)
Resolution
This issue has been fixed in BPM Suite 6.0.3. Now these three system properties have been introduced:
- dashbuilder.bind.address
- dashbuilder.bind.port
- dashbuilder.bind.timeout
If a BPMS server is under NAT environment, use dashbuilder.bind.address
and dashbuilder.bind.port
to configure an address/port which is accessible from the segment where the BPMS server is located as follows:
./standalone.sh -Ddashbuilder.bind.address=192.168.10.10 -Ddashbuilder.bind.port=8080
Root Cause
The problem is that DashboardPanelPresenter
passes the NAT-ed IP (10.168.56.11
) to server side and DashboardRendererServiceImpl.getAppStatus()
accesses to http://10.168.56.11:8080/dashbuilder/workspace/jbpm-dashboard
from the BPMS server. It throws the ConnectException
because 10.168.56.11
is not accessible from the segment where BPMS is located.
A BZ1100150 was raised to fix this issue.
This solution is part of Red Hat’s fast-track publication program, providing a huge library of solutions that Red Hat engineers have created while supporting our customers. To give you the knowledge you need the instant it becomes available, these articles may be presented in a raw and unedited form.
Comments