Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Improve the reporting of connection errors due to incorrect server addresses #449

Open
sbesson opened this issue Oct 2, 2024 · 0 comments

Comments

@sbesson
Copy link
Member

sbesson commented Oct 2, 2024

A typical confusion for end-users who are alternating between OMERO.web and OMERO.insight is to use the OMERO.web URL instead of the server address when connecting using the Desktop client. For instance, the following connection will throw an error using OMERO.insight 5.8.6:

Screenshot 2024-10-02 at 08 36 11

While troubleshooting OMERO.insight connection and notably running into the famous 4063/4064 firewall issue, this can be particularly tricky to debug as the OMERO.insight log will have the following:

2024-10-02 08:36:08,130 DEBUG [   o.o.s.env.data.login.LoginServiceImpl] (nitializer) Failed to log onto OMERO.
Reason: No host specified. Use omero.client(HOSTNAME), ICE_CONFIG, or similar.
OMERO address: idr.openmicroscopy.org
User Name: public -- Password: ******
omero.ClientError: No host specified. Use omero.client(HOSTNAME), ICE_CONFIG, or similar.
	at omero.client.init(client.java:401)
	at omero.client.<init>(client.java:269)
	at omero.client.<init>(client.java:252)
	at omero.gateway.Gateway.createSession(Gateway.java:1021)
	at omero.gateway.Gateway.connect(Gateway.java:297)
	at org.openmicroscopy.shoola.env.data.OMEROGateway.connect(OMEROGateway.java:1428)
	at org.openmicroscopy.shoola.env.data.DataServicesFactory.connect(DataServicesFactory.java:515)
	at org.openmicroscopy.shoola.env.data.login.LoginServiceImpl.attempt(LoginServiceImpl.java:144)
	at org.openmicroscopy.shoola.env.data.login.LoginServiceImpl.login(LoginServiceImpl.java:277)
	at org.openmicroscopy.shoola.env.data.login.LoginManager.login(LoginManager.java:98)
	at org.openmicroscopy.shoola.env.init.SplashScreenInit.onEnd(SplashScreenInit.java:157)
	at org.openmicroscopy.shoola.env.init.Initializer.notifyEnd(Initializer.java:188)
	at org.openmicroscopy.shoola.env.Container.runStartupProcedure(Container.java:140)
	at org.openmicroscopy.shoola.env.Container.access$000(Container.java:68)
	at org.openmicroscopy.shoola.env.Container$1.run(Container.java:185)
	at java.lang.Thread.run(Thread.java:748)

Under the hood, the connection credentials is converted into URI within the UserCredentials class and the logs unwrap the hostname of this URI when reporting the failure

msg.println("OMERO address: "+uc.getServer().getHostname());

In the scenario above, having OMERO address: idr.openmicroscopy.org is particularly deceiving as it is the correct server address has been entered. Instead the following exception (No host specified) effectively highlights the issue associated with the hostname passed to the client object.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant