[SOLVED] OH3 MainUI, Again blank page problem (clearing caches etc. doesn't fix problem)

Hi,

I’m running a fresly installed Milestone build 3.1.0.M5 on RPI4 and today I added my z-wave controller and recreated all my things & items and everything was working fine.

Than I wanted to test if everything runs fine which I configured and restarted the RPI4 properly with “sudo reboot”.

After reboot logs looked fine saying “started UI on port 8080”. But when I go to “http://192.168.10.91:8080” I only see a blank page. Only the favicon is loaded.

I already tried stopping openhab, clearing the cache and restarting it. I also cleared browser cache and tried on firefox + chrome with absolutely no change. I don’t even see the login page and the logs in frontail indicate no errors. Actually there it seems that OH3 just start fine. It start the zwavecontroller and also brings up all the z-wave things and updated the items with values from the zwave sensor.

But nevertheless everything looks perfectly fine in the logs it doesn’t display main ui.
So I started developer tools in chrome and I see this:

Also here, nothing suspicous. So I called the rest endpoint http://192.168.10.91:8080/rest/ and I got back as result:

{"version":"4","locale":"de_CH","measurementSystem":"SI","runtimeInfo":{"version":"3.1.0.M5","buildString":"Milestone Build"},"links":[{"type":"inbox","url":"http://192.168.10.91:8080/rest/inbox"},{"type":"discovery","url":"http://192.168.10.91:8080/rest/discovery"},{"type":"ui","url":"http://192.168.10.91:8080/rest/ui"},{"type":"iconsets","url":"http://192.168.10.91:8080/rest/iconsets"},{"type":"systeminfo","url":"http://192.168.10.91:8080/rest/systeminfo"},{"type":"items","url":"http://192.168.10.91:8080/rest/items"},{"type":"bindings","url":"http://192.168.10.91:8080/rest/bindings"},{"type":"voice","url":"http://192.168.10.91:8080/rest/voice"},{"type":"audio","url":"http://192.168.10.91:8080/rest/audio"},{"type":"persistence","url":"http://192.168.10.91:8080/rest/persistence"},{"type":"links","url":"http://192.168.10.91:8080/rest/links"},{"type":"sitemaps","url":"http://192.168.10.91:8080/rest/sitemaps"},{"type":"habpanel","url":"http://192.168.10.91:8080/rest/habpanel"},{"type":"addons","url":"http://192.168.10.91:8080/rest/addons"},{"type":"spec","url":"http://192.168.10.91:8080/rest/spec"},{"type":"channel-types","url":"http://192.168.10.91:8080/rest/channel-types"},{"type":"thing-types","url":"http://192.168.10.91:8080/rest/thing-types"},{"type":"uuid","url":"http://192.168.10.91:8080/rest/uuid"},{"type":"config-descriptions","url":"http://192.168.10.91:8080/rest/config-descriptions"},{"type":"services","url":"http://192.168.10.91:8080/rest/services"},{"type":"profile-types","url":"http://192.168.10.91:8080/rest/profile-types"},{"type":"templates","url":"http://192.168.10.91:8080/rest/templates"},{"type":"auth","url":"http://192.168.10.91:8080/rest/auth"},{"type":"events","url":"http://192.168.10.91:8080/rest/events"},{"type":"module-types","url":"http://192.168.10.91:8080/rest/module-types"},{"type":"rules","url":"http://192.168.10.91:8080/rest/rules"},{"type":"things","url":"http://192.168.10.91:8080/rest/things"}]}

So, everything seems fine I guess I just don’t know how to debug it further. But I definitly want to avoid setting up everything again because time invested and even more because what if I run into exactly the same problem again.

The blank MainUI page seems to often be a result of the UI choking on the rending of some widget or other. Can’t say for certain what’s going on here.

Are there any errors in the chrome console?

Have you created any custom widgets or added any standard widgets to a page?

You have z-wave things and items, did you create those with config files or through the UI? Do you have any other bindings/things/ items or do you only use z-wave?

I have not created any widgets at all, neither custom nor added anywhere so actually nothing to be shown on MainUI.

As far as I can tell there are no errors in the chrome console from what I can see.

The z-wave controller and items I created through the UI. And I do have the gpio binding installed (but nothing configured there yet) and those 2 bindings were installed some days ago. As long as there were no items created in z-wave everything was fine.

So it’s really not a lot configured here. So how to debug further? I’m clueless but I don’t want to redo everything again because I fear I will run into the same problems when I reach this point.

EDIT:
Actually after some time (I guess some after some timeout on the /rest page) I see this errors in the chrome console:

I also noticed that if I open the /rest page in the browser although data is served in ~150ms and HTTP shows 200 OK in the developer tools tab the page keeps loading like if there’s it’s never finished loading completely for minutes! Same behaviour in also in Firefox. When I try to load the /rest url returned data is shown but keeps turning for minutes. Like if there’s some kind of keep-alive.

Still this discovery doesn’t help at all. Why should this suddenly start happening? OH3 worked perfectly before.

It is strange.

The next things I would check would be some of the ui json files in the jsondb folder in userdata. Maybe there’s some error that’s crept into the session data in user.json or some of the autogenerated pages in uicomponents_ui_page.json.

If you don’t see anything obviously wrong with them you can compare them to versions in the backup folder from before the issue and see if anything has changed there. If you see something suspicious or definitely wrong, you can swap in the backup file or try to fix it yourself (after carefully reading the Editing the JSONDB, a last resort section in this post.)

The “extn-utils.html/extn-utils.js” are definitely suspicious. These are not part of the UI, it seems you have a browser extension injecting some code to the page (as well as jquery - the UI doesn’t use jquery and maybe it could conflict with another DOM manipulation library). Since it affects both Chrome and Firefox it could be something that installed extensions in both browsers, think Adobe Acrobat or some antivirus/firewall software.
Try disabling extensions until you find the one which is adding those two files. Maybe also try on another device/environment, like your phone or tablet.

Actually a good catch. In fact to be sure I just disabled all extensions and those 2 files are gone. But still the /rest url is loading like forever. But the issue gets even weirder. It works perfectly on my phone and laptop (both connected over wifi), there also the page load issue doesn’t exist, the /rest url is loading to completion in milliseconds. However it still doens’t work on my desktop computer (connected via LAN). It does however work on the same computer when I also connect it via wifi (disable LAN Adapter and use on-board wifi) even with all browser extensions active. And here’s where I’m totally lost now and it’s probably not at all related to OH3/raspbian at all.

How can a network adapter have impact on page loading to completion? To be sure that the cable or router isn’t faulty I hooked up my laptop on the same cable. The thing is, it works like a charm. I also disabled virus/malware scanners, tried using the page in incognito mode, etc. Beeing a professional in IT business for over 15 years I’ve never seen anything like this. I’ve seen single ports on hubs dying or other strange stuff. But this now puzzles me that on this one machine, with this specific network adapter causes OH3 /rest to not load properly. And it’s only OH3. I have dozens of other applications none of them shows any network errors at all, never. If there’s really some hardware issue I would have expected it to show up on other network applications as well but it doesn’t. The biggest weirdness of all is that it was working on this same machine over LAN until I added the zwave devices which makes even less sense to me.

So at the end of the day, I will close this thread knowing that it’s not an OH3 problem. I doubt that I will find out ever what the problem is with this onboard LAN Adapter with OH3, I’ve never seen anything like this in my professional career that a page reports a 200 ok and the data but keeps on loading in the browser all boiling down to a LAN adapter. If anybody has any idea what else could cause this, any advice is welcome.

Thanks for all trying to help and the good advice to try on other devices which showed me that it’s not an OH3 problem.