I am currently upgrading i2b2 from version 1.7.12a to 1.8.2 using the official upgrade instructions provided on the i2b2 website. I am doing it for my institute based in Los Angeles, California.
At this point, I am unable to log in to the i2b2 webclient. The application consistently shows an error indicating that the PM cell is down or that the properties file should be checked.
Here is what I am observing:
All cells (PM, CRC, ONT, WORK) appear to deploy successfully in WildFly.
Data sources are configured and connections to SQL Server are working.
Login attempts are reaching the backend, and session entries are being created in the PM_USER_SESSION table. I can also see PM_USER_LOGIN table with success entries.
However, the webclient does not proceed past login and throws errors.
I have been troubleshooting extensively but have not been able to identify the root cause. WildFly logs are not showing any relevant errors related to this issue, which is making it difficult to pinpoint what might be going wrong.
Additionally, from the browser developer tools, I am seeing errors related to the PM cell configuration (e.g., cellURL not being recognized), which suggests a possible issue in how the webclient is resolving the PM endpoint after authentication.
For your reference, here is more details:
Screenshots of the error message

Browser developer tools (console and network) screenshots:



Relevant configuration snippets: i2b2_config_domains.json:
{
"urlProxy": "proxy.php",
"urlFramework": "js-i2b2/",
"lstDomains": [
{ "domain": "i2b2cdu",
"name": "i2b2_CDU_Test",
"urlCellPM": "<server_ip_port>/i2b2/services/PMService/",
"allowAnalysis": true,
"ignorePasswordMgrs": true,
"debug": true
}
],
"loginTimeout": 5
}
Environment details:
i2b2 version: 1.8.2
Application server: WildFly 37
Database: SQL Server
Webclient hosted via IIS on Windows VM
Currently, IIS, wildfly and SQL Server are in the same windows VM.
I would really appreciate any guidance or suggestions on how to resolve this issue.
Thank you for your time and support.
Best regards,
Meghal Gandhi
I did in-depth debugging of many core I2b2 web client files: i2b2_cell_communicator.js, PM_ctrlr.js. First I found the parsing location code lines in PM_ctrlr.js file and print the parsed response, that's where I found issues. Mainly I print the parsed "data" to console to get the root cause under i2b2.PM._processUserConfig = function (data) in PM_ctrlr.js file after line 270 (i2b2.PM.removeLoginDialog();):
// Debug console.log("PM login response data:", data);Hi Andrew,
Your current issue looks like a separate configuration/path issue where something is still pointing to the old default port 8080.
One place I would strongly recommend checking is the proxy.php file in the webclient. In my setup, there was a $pmURL setting near the top of that file. If it still has something like:
$pmURL = "http://localhost:8080/i2b2/services/PMService/getServices";then it should be updated to the correct WildFly port, for example:
$pmURL = "http://localhost:9090/i2b2/services/PMService/getServices";Also confirm that i2b2_config_domains.json has the correct PM URL, for example:
"urlCellPM": "http://localhost:9090/i2b2/services/PMService/"In addition to pm_cell_data, I would search the database for any remaining 8080 references, for example:
SELECT * FROM PM_CELL_DATA WHERE URL LIKE '%8080%';You may also want to check whether the browser is still using a cached version of the config file. I had to use DevTools → Network → Disable cache, or test in an Incognito window.
One more thing to confirm is that the web server is serving the same webclient folder that you are editing. You can directly open the JSON file in the browser and verify that the updated port is actually being loaded.
So I would check in this order:
proxy.php $pmURL
i2b2_config_domains.json
Any remaining 8080 references in PM tables
Browser cache / wrong webclient folder being served
In my case, once the proxy and JSON were aligned with the correct WildFly port, the PM request started going to the correct endpoint.
Hope this helps!
Best,
Meghal