"Launch client jar signature is invalid" error

Hi all,

I am having this issue

This is on my VM through a VPN. I can bring up the gateway web page for this, but the vision client gives me this error. I can open the vision client on the server. Both my vm and the HMI server machine have correct time dictated by Windows.

My vision log gives this info:

INFO [CompositeClassRejectListFilter] [2025/10/08 12:11:10]: Initialization performed successfully
INFO [CompositeClassRejectListFilter] [2025/10/08 12:11:10]: JVM-wide ObjectInputFilter set up successfully
INFO [CompositeClassRejectListFilter] [2025/10/08 12:11:10]: Platform serialFilter has 88 pattern(s)
INFO [ClientLauncher ] [2025/10/08 12:11:10]: Set initial logging level to INFO
INFO [GatewayCommUtil ] [2025/10/08 12:11:14]: Downloading "``http://172.25.60.115:8088/system/images/VisionIcon.ico``" (timeout=30)...
to gateway ``http://172.25.60.115:8088``...
INFO [GatewayCommUtil ] [2025/10/08 12:11:20]: Downloading "``http://172.25.60.115:8088/system/images/VisionIcon.ico``" (timeout=30)...
INFO [GatewayCommUtil ] [2025/10/08 12:11:21]: Downloading "``http://172.25.60.115:8088/system/launchbin/launchclient.jar``" (timeout=30)...
ERROR [LaunchClientJarService ] [2025/10/08 12:11:21]: Launch client jar Invalid
com.inductiveautomation.ignition.launcher.common.error.HttpResponseException
at com.inductiveautomation.ignition.launcher.common.utils.GatewayCommUtil.getGatewayConnection(GatewayCommUtil.java:236)
at com.inductiveautomation.ignition.launcher.common.utils.GatewayCommUtil.getGatewayConnection(GatewayCommUtil.java:148)
at com.inductiveautomation.ignition.launcher.common.utils.GatewayCommUtil.downloadFile(GatewayCommUtil.java:535)
at com.inductiveautomation.ignition.launcher.common.service.LaunchClientJarService$LaunchClientJarTask.lambda$downloadLaunchClientJar$3(LaunchClientJarService.java:363)
at com.inductiveautomation.ignition.launcher.common.utils.FileUtils.runResourceLockedAction(FileUtils.java:111)
at com.inductiveautomation.ignition.launcher.common.service.LaunchClientJarService$LaunchClientJarTask.downloadLaunchClientJar(LaunchClientJarService.java:361)
at com.inductiveautomation.ignition.launcher.common.service.LaunchClientJarService$LaunchClientJarTask.getLaunchClientJar(LaunchClientJarService.java:228)
at com.inductiveautomation.ignition.launcher.common.service.LaunchClientJarService$LaunchClientJarTask.call(LaunchClientJarService.java:168)
at com.inductiveautomation.ignition.launcher.common.service.LaunchClientJarService$LaunchClientJarTask.call(LaunchClientJarService.java:140)
at javafx.concurrent.Task$TaskCallable.call(Task.java:1426)
at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
at javafx.concurrent.Service.lambda$executeTask$6(Service.java:727)
at java.base/java.security.AccessController.doPrivileged(AccessController.java:399)
at javafx.concurrent.Service.lambda$executeTask$7(Service.java:726)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
at java.base/java.lang.Thread.run(Thread.java:840)
ERROR [RuntimeException ] [2025/10/08 12:11:26]: Uncaught exception in thread: JavaFX Application Thread
java.lang.NullPointerException: Cannot invoke "java.net.MulticastSocket.leaveGroup(java.net.SocketAddress, java.net.NetworkInterface)" because "this.socket" is null
at com.inductiveautomation.ignition.launcher.common.service.MulticastReceiverService.destroy(MulticastReceiverService.java:74)
at com.inductiveautomation.ignition.launcher.common.ui.base.BaseLauncherApplication.stopGatewayServices(BaseLauncherApplication.java:292)
at java.base/java.util.ArrayList.forEach(ArrayList.java:1511)
at com.inductiveautomation.ignition.launcher.common.ui.base.BaseLauncherApplication.lambda$onStageClosed$13(BaseLauncherApplication.java:503)
at com.sun.javafx.event.CompositeEventHandler.dispatchBubblingEvent(CompositeEventHandler.java:86)
at com.sun.javafx.event.EventHandlerManager.dispatchBubblingEvent(EventHandlerManager.java:234)
at com.sun.javafx.event.EventHandlerManager.dispatchBubblingEvent(EventHandlerManager.java:191)
at com.sun.javafx.event.CompositeEventDispatcher.dispatchBubblingEvent(CompositeEventDispatcher.java:59)
at com.sun.javafx.event.BasicEventDispatcher.dispatchEvent(BasicEventDispatcher.java:58)
at com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent(EventDispatchChainImpl.java:114)
at com.sun.javafx.event.EventUtil.fireEventImpl(EventUtil.java:74)
at com.sun.javafx.event.EventUtil.fireEvent(EventUtil.java:49)
at javafx.event.Event.fireEvent(Event.java:198)
at javafx.stage.Window.fireEvent(Window.java:1405)
at javafx.stage.Window$12.invalidated(Window.java:1164)
at javafx.beans.property.BooleanPropertyBase.markInvalid(BooleanPropertyBase.java:110)
at javafx.beans.property.BooleanPropertyBase.set(BooleanPropertyBase.java:145)
at javafx.stage.Window.setShowing(Window.java:1211)
at javafx.stage.Window.hide(Window.java:1236)
at com.sun.javafx.stage.WindowCloseRequestHandler.dispatchBubblingEvent(WindowCloseRequestHandler.java:45)
at com.sun.javafx.event.CompositeEventDispatcher.dispatchBubblingEvent(CompositeEventDispatcher.java:59)
at com.sun.javafx.event.BasicEventDispatcher.dispatchEvent(BasicEventDispatcher.java:58)
at com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent(EventDispatchChainImpl.java:114)
at com.sun.javafx.event.EventUtil.fireEventImpl(EventUtil.java:74)
at com.sun.javafx.event.EventUtil.fireEvent(EventUtil.java:54)
at javafx.event.Event.fireEvent(Event.java:198)
at com.sun.javafx.stage.WindowPeerListener.closing(WindowPeerListener.java:93)
at com.sun.javafx.tk.quantum.GlassWindowEventHandler.run(GlassWindowEventHandler.java:147)
at com.sun.javafx.tk.quantum.GlassWindowEventHandler.run(GlassWindowEventHandler.java:40)
at java.base/java.security.AccessController.doPrivileged(AccessController.java:399)
at com.sun.javafx.tk.quantum.GlassWindowEventHandler.lambda$handleWindowEvent$4(GlassWindowEventHandler.java:178)
at com.sun.javafx.tk.quantum.QuantumToolkit.runWithoutRenderLock(QuantumToolkit.java:423)
at com.sun.javafx.tk.quantum.GlassWindowEventHandler.handleWindowEvent(GlassWindowEventHandler.java:176)
at com.sun.glass.ui.Window.handleWindowEvent(Window.java:1253)
at com.sun.glass.ui.Window.notifyClose(Window.java:1158)
at com.sun.glass.ui.win.WinApplication._runLoop(Native Method)
at com.sun.glass.ui.win.WinApplication.lambda$runLoop$3(WinApplication.java:184)
at java.base/java.lang.Thread.run(Thread.java:840)

I’m not sure what to check next. Any help would be appreciated.

Hey I might be completly off with this, but it looks like you have a similar issue to something mentioned on this post. Not sure of the details, but has the same error you have, so it might work.

Unable to start Designer or Client ERROR "This Launch Jar Signature is invalid. Contact an administrator" - #15 by jcoffman

They also mentioned this: Launchers and Workstation | Ignition User Manual

Based on those posts, I did change my signature security to LOOSE (even less checking that LENIENT) and deleted files in user/.ignition folder.
No Luck

Ryan, please see Wiki - how to post code on this forum. It limits the length of the code or error block on your post by putting it in a scrollable window. This prevents the posts getting ridiculously long. Can you edit to fix?

If you go to this address in a web browser, what happens?

I suspect something in your environment (some security software installed by IT, perhaps) is preventing the download of this file by the launcher; the signature invalid error is a red herring.

1 Like

Check your PC time. I've seen this when the PC launching the designer and the gateway are not time synchronized.

2 Likes

Yes! This is it. Our IT has on the down low, blocked this file download. It used to work, and now I know why it doesn’t. Thank you for this. Now, I have to go make an IT ticket and case for this to be unblocked. Fun.

3 Likes