GMSC Discussions

GeoMedia Smart Client community discussion board is where you can create, contribute and share information and knowledge in regards to configuring as well as working with GeoMedia Smart Client. Find your answers, share your knowledge and help build a strong GeoMedia Smart Client community.
Showing results for 
Search instead for 
Do you mean 
Reply
Occasional Contributor
Posts: 7
Registered: ‎10-25-2020
Accepted Solution

Re: How to use GeoMedia Smart Client with HTTPS

[ Edited ]

I've just set up redirection from HTTP to HTTPS and HSTS but now receive the following error when launching smart client. Can anyone tell me what's up with my config please? I have included the error received and our web.config file content.

 

Error while loading descriptor from https://gmserver.domain.local/GMSC/default.aspx?requesttype=hnlp.
java.io.IOException: Received RST_STREAM: Use HTTP/1.1 for request
at java.net.http/jdk.internal.net.http.HttpClientImpl.send(Unknown Source)
at java.net.http/jdk.internal.net.http.HttpClientFacade.send(Unknown Source)
at com.hexagon.applauncher.core/com.hexagon.applauncher.core.AppLauncher.loadDescriptor(Unknown Source)
at com.hexagon.applauncher.core/com.hexagon.applauncher.core.AppLauncher.init(Unknown Source)
at com.hexagon.applauncher.core/com.hexagon.applauncher.core.AppLauncher.lambda$start$0(Unknown Source)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.base/java.lang.Thread.run(Unknown Source)
Caused by: java.io.IOException: Received RST_STREAM: Use HTTP/1.1 for request
at java.net.http/jdk.internal.net.http.Stream.handleReset(Unknown Source)
at java.net.http/jdk.internal.net.http.Stream.incoming_reset(Unknown Source)
at java.net.http/jdk.internal.net.http.Stream.otherFrame(Unknown Source)
at java.net.http/jdk.internal.net.http.Stream.incoming(Unknown Source)
at java.net.http/jdk.internal.net.http.Http2Connection.processFrame(Unknown Source)
at java.net.http/jdk.internal.net.http.frame.FramesDecoder.decode(Unknown Source)
at java.net.http/jdk.internal.net.http.Http2Connection$FramesController.processReceivedData(Unknown Source)
at java.net.http/jdk.internal.net.http.Http2Connection.asyncReceive(Unknown Source)
at java.net.http/jdk.internal.net.http.Http2Connection$Http2TubeSubscriber.processQueue(Unknown Source)
at java.net.http/jdk.internal.net.http.common.SequentialScheduler$SynchronizedRestartableTask.run(Unknown Source)
at java.net.http/jdk.internal.net.http.common.SequentialScheduler$CompleteRestartableTask.run(Unknown Source)
at java.net.http/jdk.internal.net.http.common.SequentialScheduler$SchedulableTask.run(Unknown Source)
at java.net.http/jdk.internal.net.http.common.SequentialScheduler.runOrSchedule(Unknown Source)
at java.net.http/jdk.internal.net.http.common.SequentialScheduler.runOrSchedule(Unknown Source)
at java.net.http/jdk.internal.net.http.Http2Connection$Http2TubeSubscriber.runOrSchedule(Unknown Source)
at java.net.http/jdk.internal.net.http.Http2Connection$Http2TubeSubscriber.onNext(Unknown Source)
at java.net.http/jdk.internal.net.http.Http2Connection$Http2TubeSubscriber.onNext(Unknown Source)
at java.net.http/jdk.internal.net.http.common.SSLTube$DelegateWrapper.onNext(Unknown Source)
at java.net.http/jdk.internal.net.http.common.SSLTube$SSLSubscriberWrapper.onNext(Unknown Source)
at java.net.http/jdk.internal.net.http.common.SSLTube$SSLSubscriberWrapper.onNext(Unknown Source)
at java.net.http/jdk.internal.net.http.common.SubscriberWrapper$DownstreamPusher.run1(Unknown Source)
at java.net.http/jdk.internal.net.http.common.SubscriberWrapper$DownstreamPusher.run(Unknown Source)
at java.net.http/jdk.internal.net.http.common.SequentialScheduler$SynchronizedRestartableTask.run(Unknown Source)
at java.net.http/jdk.internal.net.http.common.SequentialScheduler$CompleteRestartableTask.run(Unknown Source)
at java.net.http/jdk.internal.net.http.common.SequentialScheduler$SchedulableTask.run(Unknown Source)
at java.net.http/jdk.internal.net.http.common.SequentialScheduler.runOrSchedule(Unknown Source)
at java.net.http/jdk.internal.net.http.common.SequentialScheduler.runOrSchedule(Unknown Source)
at java.net.http/jdk.internal.net.http.common.SubscriberWrapper.outgoing(Unknown Source)
at java.net.http/jdk.internal.net.http.common.SubscriberWrapper.outgoing(Unknown Source)
at java.net.http/jdk.internal.net.http.common.SSLFlowDelegate$Reader.processData(Unknown Source)
at java.net.http/jdk.internal.net.http.common.SSLFlowDelegate$Reader$ReaderDownstreamPusher.run(Unknown Source)
at java.net.http/jdk.internal.net.http.common.SequentialScheduler$SynchronizedRestartableTask.run(Unknown Source)
at java.net.http/jdk.internal.net.http.common.SequentialScheduler$CompleteRestartableTask.run(Unknown Source)
at java.net.http/jdk.internal.net.http.common.SequentialScheduler$SchedulableTask.run(Unknown Source)

 

web.config attached (we.config.zip)

 

Technical Evangelist
Posts: 463
Registered: ‎02-04-2016

Re: How to use GeoMedia Smart Client with HTTPS

[ Edited ]

Hi Mishmosh,

 

Your GMSC web.config looks different than my stock GMSC v2020 web.config.  Did you add extra contents beside modifying the two lines necessary for HTTPS (as per the guide here https://community.hexagongeospatial.com/t5/GMSC-eTraining/How-to-use-GeoMedia-Smart-Client-with-HTTP...) ?  For instance, contents like rewrite, urlCompression...

 

Could you locate the original GMSC web.config ?

 

+++

 

Back to the error message, looks like there is security policy on the server that blocks this request (https://gmserver.domain.local/GMSC/default.aspx?requesttype=hnlp) 

 

 

Or this request from Josh's thread -- https://gmsrv16.mornpen.vic.gov.au/GMSC/default.aspx?requesttype=hnlp

 

 

Have you tried using the IP address or computer name on the request : https://<IPAddress>/GMSC/default.aspx?requesttype=hnlp 

 

 

You should try these links directly under a web browser.

 

 

Possible cause of the blocked request:
- Window Firewall

- Proxy settings

- web site is among the Restricted Sites in Internet Settings > Security

 


Hope this helps.

 

Regards,

 

Frank

 

 

 

 

 

Occasional Contributor
Posts: 7
Registered: ‎10-25-2020

Re: How to use GeoMedia Smart Client with HTTPS

[ Edited ]

Hi again Frank, in regards to the urlCompression, I added that as per instructions in a comment by Technical Evangelist 

on ‎04-02-2019 09:35 PM regarding WSDLs.

 

As for the rewrite rules I configured previously, I've now disabled them and tried manually accessing GMSC via HTTPS on another machine (to exclude any caching issues from the equation) but still receive the same java.io.IOException: Received RST_STREAM: Use HTTP/1.1 for request error. We have *.ourdomain in the trusted sites list and I also set the security on that to LOW to rule out any custom security settings. I've turned off windows firewall on the server for all profiles - domain, private and public just to test and satill no change. I'm out of ideas. Would very much appreciate any further assistance you can provide.

 

Cheers,

 

Michelle

Regular Contributor
Posts: 154
Registered: ‎04-02-2017

Re: How to use GeoMedia Smart Client with HTTPS

Hi all. Do we need to add an exception site list in Java?

I tried http://www.gmsrv16.mornpen.vic.gov.au/gmsc and https://www.gmsrv16.mornpen.vic.gov.au/gmsc without luck.

 

Regards,

 

Josh

Technical Evangelist
Posts: 463
Registered: ‎02-04-2016

Re: How to use GeoMedia Smart Client with HTTPS

Hi Michelle,

 

Could you check the value of the Protocol column [of the browser's concole (F12) > Network tab] when you visit GMSC page (i.e.  https://gmsrv16.mornpen.vic.gov.au/GMSC/default.aspx?requesttype=hnlp) ?

 

The error message seems to suggest using HTTP/1.1 

 

My test GMSC server is on HTTP/1.1:

 

GMSC_HTTP11.png

 

You may want to refer this for troubleshooting purposes:

https://stackoverflow.com/questions/44660634/how-to-disable-http-2-on-iis-of-windows-server-2016

 

 

Regards,

 

Frank

Occasional Contributor
Posts: 7
Registered: ‎10-25-2020

Re: How to use GeoMedia Smart Client with HTTPS

Hi Frank, as per your suggestion ours was using HTTP/2. The below reg entries appear to have disabled HTTP/2 on the server side so GMSC is now working.

 

HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\HTTP\Parameters

EnableHttp2Tls = DWORD:0

EnableHttp2Cleartext = DWORD:0

 

But, I thought you might be interested to know that another user fixed issues with HTTP2 compatibility by modifying their webpage code. Perhaps something for Hexagon's Dev Team to look at. See the final comment on the same thread you referred me to Windows 10 - How to disable HTTP/2 on IIS 10 - Stack Overflow

 

Thanks for your help with this. Much appreciated Smiley Happy 

 

Michelle

 

Technical Evangelist
Posts: 463
Registered: ‎02-04-2016

Re: How to use GeoMedia Smart Client with HTTPS

Hi Michelle,

 

Glad to see your issue is resolved.

 

I will bring your comment to DEV's attention!

 

Regards,

 

Frank

 

Regular Contributor
Posts: 154
Registered: ‎04-02-2017

Re: How to use GeoMedia Smart Client with HTTPS

Hi Frank,

 

Do users require local admin rights when loading Smart Client with App Launcher?

It seemed to only work when I was given local admin rights, otherwise I don't get beyond the dialog box.

 

Regards,


Josh

Technical Evangelist
Posts: 463
Registered: ‎02-04-2016

Re: How to use GeoMedia Smart Client with HTTPS