Hello, since Katalon Studio 11.1.0 (and now, 11.1.1), I’m unable to start a Windows application.
When I start ‘Spy Windows Objects’ with paint.net for example (or any other executable), I get a popup with this message:
Unable to start application
Reason:
Cannot invoke “String.lenght()” because “spec is null”
Details:
java.util.concurrent.ExecutionException: java.net.MalformedURLException: Cannot invoke “String.length()” because “spec” is null
at com.kms.katalon.composer.components.impl.dialogs.ProgressMonitorDialogWithThread.runAndWait(ProgressMonitorDialogWithThread.java:49)
at com.kms.katalon.composer.windows.dialog.WindowsAppComposite$5.run(WindowsAppComposite.java:245)
at org.eclipse.jface.operation.ModalContext$ModalContextThread.run(ModalContext.java:123)
Caused by: java.net.MalformedURLException: Cannot invoke “String.length()” because “spec” is null
at com.kms.katalon.composer.windows.spy.WindowsInspectorController.startApplication(WindowsInspectorController.java:176)
at com.kms.katalon.composer.windows.dialog.WindowsAppComposite$5$1.call(WindowsAppComposite.java:249)
at com.kms.katalon.composer.components.impl.dialogs.ProgressMonitorDialogWithThread.startThreadAndWait(ProgressMonitorDialogWithThread.java:36)
at com.kms.katalon.composer.components.impl.dialogs.ProgressMonitorDialogWithThread.runAndWait(ProgressMonitorDialogWithThread.java:48)
… 2 more
Caused by: java.lang.NullPointerException: Cannot invoke “String.length()” because “spec” is null
… 6 more
Same with the instuction Windows.startApplicationWithTitle() in script mode.
The above message was from a popup message, when lunching the app from the ‘Spy Windows Objects’ or ‘Record Windows Actions’ tools.
With a new test case with that code:
import static com.kms.katalon.core.checkpoint.CheckpointFactory.findCheckpoint
import static com.kms.katalon.core.testcase.TestCaseFactory.findTestCase
import static com.kms.katalon.core.testdata.TestDataFactory.findTestData
import static com.kms.katalon.core.testobject.ObjectRepository.findTestObject
import static om.kms.katalon.core.testobject.ObjectRepository.findWindowsObject
import com.kms.katalon.core.checkpoint.Checkpoint as Checkpoint
import com.kms.katalon.core.cucumber.keyword.CucumberBuiltinKeywords as CucumberKW
import com.kms.katalon.core.mobile.keyword.MobileBuiltInKeywords as Mobile
import com.kms.katalon.core.model.FailureHandling as FailureHandling
import com.kms.katalon.core.testcase.TestCase as TestCase
import com.kms.katalon.core.testdata.TestData as TestData
import com.kms.katalon.core.testng.keyword.TestNGBuiltinKeywords as TestNGKW
import com.kms.katalon.core.testobject.TestObject as TestObject
import com.kms.katalon.core.webservice.keyword.WSBuiltInKeywords as WS
import com.kms.katalon.core.webui.keyword.WebUiBuiltInKeywords as WebUI
import com.kms.katalon.core.windows.keyword.WindowsBuiltinKeywords as Windows
import internal.GlobalVariable as GlobalVariable
import org.openqa.selenium.Keys as Keys
Windows.startApplicationWithTitle('C:\\Program Files\\paint.net\\paintdotnet.exe', 'Paint')
I get (in the “Fail Reason” box):
java.lang.NullPointerException: Cannot invoke "String.length()" because "spec" is null
For trouble shooting, please visit: https://docs.katalon.com/katalon-studio/troubleshooting/troubleshoot-common-exceptions
Cannot invoke "String.length()" because "spec" is null (Root cause: java.net.MalformedURLException: Cannot invoke "String.length()" because "spec" is null
at com.kms.katalon.core.windows.driver.WindowsDriverFactory.startApplication(WindowsDriverFactory.java:83)
at com.kms.katalon.core.windows.driver.WindowsDriverFactory$startApplication.call(Unknown Source)
at com.kms.katalon.core.windows.keyword.builtin.StartApplicationWithTitleKeyword$_startApplicationWithTitle_closure1.doCall(StartApplicationWithTitleKeyword.groovy:35)
at com.kms.katalon.core.windows.keyword.builtin.StartApplicationWithTitleKeyword$_startApplicationWithTitle_closure1.doCall(StartApplicationWithTitleKeyword.groovy)
at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103)
at com.kms.katalon.core.keyword.internal.KeywordMain.runKeyword(KeywordMain.groovy:90)
at com.kms.katalon.core.keyword.internal.KeywordMain$runKeyword.call(Unknown Source)
at com.kms.katalon.core.windows.keyword.builtin.StartApplicationWithTitleKeyword.startApplicationWithTitle(StartApplicationWithTitleKeyword.groovy:34)
at com.kms.katalon.core.windows.keyword.builtin.StartApplicationWithTitleKeyword.execute(StartApplicationWithTitleKeyword.groovy:29)
at com.kms.katalon.core.keyword.internal.KeywordExecutor.executeKeywordForPlatform(KeywordExecutor.groovy:95)
at com.kms.katalon.core.windows.keyword.WindowsBuiltinKeywords.startApplicationWithTitle(WindowsBuiltinKeywords.java:1371)
at Paint.run(Paint:20)
at com.kms.katalon.core.main.ScriptEngine.run(ScriptEngine.java:194)
at com.kms.katalon.core.main.ScriptEngine.runScriptAsRawText(ScriptEngine.java:119)
at com.kms.katalon.core.main.TestCaseExecutor.runScript(TestCaseExecutor.java:504)
at com.kms.katalon.core.main.TestCaseExecutor.doExecute(TestCaseExecutor.java:495)
at com.kms.katalon.core.main.TestCaseExecutor.processExecutionPhase(TestCaseExecutor.java:474)
at com.kms.katalon.core.main.TestCaseExecutor.accessMainPhase(TestCaseExecutor.java:466)
at com.kms.katalon.core.main.TestCaseExecutor.execute(TestCaseExecutor.java:336)
at com.kms.katalon.core.main.TestCaseMain.runTestCase(TestCaseMain.java:151)
at com.kms.katalon.core.main.TestCaseMain.runTestCase(TestCaseMain.java:139)
at TempTestCase1775650009471.run(TempTestCase1775650009471.groovy:30)
at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103)
Caused by: java.lang.NullPointerException: Cannot invoke "String.length()" because "spec" is null
at com.kms.katalon.core.windows.driver.WindowsDriverFactory.startApplication(WindowsDriverFactory.java:83)
at com.kms.katalon.core.windows.driver.WindowsDriverFactory$startApplication.call(Unknown Source)
at com.kms.katalon.core.windows.keyword.builtin.StartApplicationWithTitleKeyword$_startApplicationWithTitle_closure1.doCall(StartApplicationWithTitleKeyword.groovy:35)
at com.kms.katalon.core.windows.keyword.builtin.StartApplicationWithTitleKeyword$_startApplicationWithTitle_closure1.doCall(StartApplicationWithTitleKeyword.groovy)
at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103)
at com.kms.katalon.core.keyword.internal.KeywordMain.runKeyword(KeywordMain.groovy:90)
at com.kms.katalon.core.keyword.internal.KeywordMain$runKeyword.call(Unknown Source)
at com.kms.katalon.core.windows.keyword.builtin.StartApplicationWithTitleKeyword.startApplicationWithTitle(StartApplicationWithTitleKeyword.groovy:34)
at com.kms.katalon.core.windows.keyword.builtin.StartApplicationWithTitleKeyword.execute(StartApplicationWithTitleKeyword.groovy:29)
at com.kms.katalon.core.keyword.internal.KeywordExecutor.executeKeywordForPlatform(KeywordExecutor.groovy:95)
at com.kms.katalon.core.windows.keyword.WindowsBuiltinKeywords.startApplicationWithTitle(WindowsBuiltinKeywords.java:1371)
at Script1775649326080.run(Script1775649326080.groovy:20)
... 11 more
)
Test Cases/Paint FAILED.
Reason:
com.kms.katalon.core.exception.StepFailedException: Cannot invoke "String.length()" because "spec" is null (Root cause: java.net.MalformedURLException: Cannot invoke "String.length()" because "spec" is null
at com.kms.katalon.core.windows.driver.WindowsDriverFactory.startApplication(WindowsDriverFactory.java:83)
at com.kms.katalon.core.windows.driver.WindowsDriverFactory$startApplication.call(Unknown Source)
at com.kms.katalon.core.windows.keyword.builtin.StartApplicationWithTitleKeyword$_startApplicationWithTitle_closure1.doCall(StartApplicationWithTitleKeyword.groovy:35)
at com.kms.katalon.core.windows.keyword.builtin.StartApplicationWithTitleKeyword$_startApplicationWithTitle_closure1.doCall(StartApplicationWithTitleKeyword.groovy)
at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103)
at com.kms.katalon.core.keyword.internal.KeywordMain.runKeyword(KeywordMain.groovy:90)
at com.kms.katalon.core.keyword.internal.KeywordMain$runKeyword.call(Unknown Source)
at com.kms.katalon.core.windows.keyword.builtin.StartApplicationWithTitleKeyword.startApplicationWithTitle(StartApplicationWithTitleKeyword.groovy:34)
at com.kms.katalon.core.windows.keyword.builtin.StartApplicationWithTitleKeyword.execute(StartApplicationWithTitleKeyword.groovy:29)
at com.kms.katalon.core.keyword.internal.KeywordExecutor.executeKeywordForPlatform(KeywordExecutor.groovy:95)
at com.kms.katalon.core.windows.keyword.WindowsBuiltinKeywords.startApplicationWithTitle(WindowsBuiltinKeywords.java:1371)
at Paint.run(Paint:20)
at com.kms.katalon.core.main.ScriptEngine.run(ScriptEngine.java:194)
at com.kms.katalon.core.main.ScriptEngine.runScriptAsRawText(ScriptEngine.java:119)
at com.kms.katalon.core.main.TestCaseExecutor.runScript(TestCaseExecutor.java:504)
at com.kms.katalon.core.main.TestCaseExecutor.doExecute(TestCaseExecutor.java:495)
at com.kms.katalon.core.main.TestCaseExecutor.processExecutionPhase(TestCaseExecutor.java:474)
at com.kms.katalon.core.main.TestCaseExecutor.accessMainPhase(TestCaseExecutor.java:466)
at com.kms.katalon.core.main.TestCaseExecutor.execute(TestCaseExecutor.java:336)
at com.kms.katalon.core.main.TestCaseMain.runTestCase(TestCaseMain.java:151)
at com.kms.katalon.core.main.TestCaseMain.runTestCase(TestCaseMain.java:139)
at TempTestCase1775650009471.run(TempTestCase1775650009471.groovy:30)
at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103)
Caused by: java.lang.NullPointerException: Cannot invoke "String.length()" because "spec" is null
at com.kms.katalon.core.windows.driver.WindowsDriverFactory.startApplication(WindowsDriverFactory.java:83)
at com.kms.katalon.core.windows.driver.WindowsDriverFactory$startApplication.call(Unknown Source)
at com.kms.katalon.core.windows.keyword.builtin.StartApplicationWithTitleKeyword$_startApplicationWithTitle_closure1.doCall(StartApplicationWithTitleKeyword.groovy:35)
at com.kms.katalon.core.windows.keyword.builtin.StartApplicationWithTitleKeyword$_startApplicationWithTitle_closure1.doCall(StartApplicationWithTitleKeyword.groovy)
at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103)
at com.kms.katalon.core.keyword.internal.KeywordMain.runKeyword(KeywordMain.groovy:90)
at com.kms.katalon.core.keyword.internal.KeywordMain$runKeyword.call(Unknown Source)
at com.kms.katalon.core.windows.keyword.builtin.StartApplicationWithTitleKeyword.startApplicationWithTitle(StartApplicationWithTitleKeyword.groovy:34)
at com.kms.katalon.core.windows.keyword.builtin.StartApplicationWithTitleKeyword.execute(StartApplicationWithTitleKeyword.groovy:29)
at com.kms.katalon.core.keyword.internal.KeywordExecutor.executeKeywordForPlatform(KeywordExecutor.groovy:95)
at com.kms.katalon.core.windows.keyword.WindowsBuiltinKeywords.startApplicationWithTitle(WindowsBuiltinKeywords.java:1371)
at Script1775649326080.run(Script1775649326080.groovy:20)
... 11 more
)
at com.kms.katalon.core.keyword.internal.KeywordMain.stepFailed(KeywordMain.groovy:51)
at com.kms.katalon.core.keyword.internal.KeywordMain.stepFailed(KeywordMain.groovy)
at com.kms.katalon.core.keyword.internal.KeywordMain.runKeyword(KeywordMain.groovy:92)
at com.kms.katalon.core.keyword.internal.KeywordMain$runKeyword.call(Unknown Source)
at com.kms.katalon.core.windows.keyword.builtin.StartApplicationWithTitleKeyword.startApplicationWithTitle(StartApplicationWithTitleKeyword.groovy:34)
at com.kms.katalon.core.windows.keyword.builtin.StartApplicationWithTitleKeyword.execute(StartApplicationWithTitleKeyword.groovy:29)
at com.kms.katalon.core.keyword.internal.KeywordExecutor.executeKeywordForPlatform(KeywordExecutor.groovy:95)
at com.kms.katalon.core.windows.keyword.WindowsBuiltinKeywords.startApplicationWithTitle(WindowsBuiltinKeywords.java:1371)
at Paint.run(Paint:20)
at com.kms.katalon.core.main.ScriptEngine.run(ScriptEngine.java:194)
at com.kms.katalon.core.main.ScriptEngine.runScriptAsRawText(ScriptEngine.java:119)
at com.kms.katalon.core.main.TestCaseExecutor.runScript(TestCaseExecutor.java:504)
at com.kms.katalon.core.main.TestCaseExecutor.doExecute(TestCaseExecutor.java:495)
at com.kms.katalon.core.main.TestCaseExecutor.processExecutionPhase(TestCaseExecutor.java:474)
at com.kms.katalon.core.main.TestCaseExecutor.accessMainPhase(TestCaseExecutor.java:466)
at com.kms.katalon.core.main.TestCaseExecutor.execute(TestCaseExecutor.java:336)
at com.kms.katalon.core.main.TestCaseMain.runTestCase(TestCaseMain.java:151)
at com.kms.katalon.core.main.TestCaseMain.runTestCase(TestCaseMain.java:139)
at TempTestCase1775650009471.run(TempTestCase1775650009471.groovy:30)
at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103)
Caused by: java.net.MalformedURLException: Cannot invoke "String.length()" because "spec" is null
at com.kms.katalon.core.windows.driver.WindowsDriverFactory.startApplication(WindowsDriverFactory.java:83)
at com.kms.katalon.core.windows.driver.WindowsDriverFactory$startApplication.call(Unknown Source)
at com.kms.katalon.core.windows.keyword.builtin.StartApplicationWithTitleKeyword$_startApplicationWithTitle_closure1.doCall(StartApplicationWithTitleKeyword.groovy:35)
at com.kms.katalon.core.windows.keyword.builtin.StartApplicationWithTitleKeyword$_startApplicationWithTitle_closure1.doCall(StartApplicationWithTitleKeyword.groovy)
at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103)
at com.kms.katalon.core.keyword.internal.KeywordMain.runKeyword(KeywordMain.groovy:90)
... 17 more
Caused by: java.lang.NullPointerException: Cannot invoke "String.length()" because "spec" is null
... 23 more
The console view:
2026-04-08 14:06:53.085 INFO c.k.k.c.l.logback.LogbackConfigurator - Logback default configuration initialized from: C:\Users\xxx\.katalon\packages\KS-11.1.1\configuration\org.eclipse.osgi\150\0\.cp\resources\logback\logback-execution.xml
2026-04-08 14:06:53.089 INFO c.k.k.c.l.logback.LogbackConfigurator - Logback custom configuration initialized from: C:\DEVELOPPEMENT\KATALON\test3\test3\Include\config\log.properties
2026-04-08 14:06:54.112 INFO c.k.katalon.core.main.TestCaseExecutor - --------------------
2026-04-08 14:06:54.112 INFO c.k.katalon.core.main.TestCaseExecutor - START Test Cases/Paint
2026-04-08 14:06:54.621 DEBUG testcase.Paint - 1: startApplicationWithTitle("C:\Program Files\paint.net\paintdotnet.exe", "Paint")
2026-04-08 14:06:54.885 ERROR c.k.k.core.keyword.internal.KeywordMain - ❌ Cannot invoke "String.length()" because "spec" is null (Root cause: java.net.MalformedURLException: Cannot invoke "String.length()" because "spec" is null
at com.kms.katalon.core.windows.driver.WindowsDriverFactory.startApplication(WindowsDriverFactory.java:83)
at com.kms.katalon.core.windows.driver.WindowsDriverFactory$startApplication.call(Unknown Source)
at com.kms.katalon.core.windows.keyword.builtin.StartApplicationWithTitleKeyword$_startApplicationWithTitle_closure1.doCall(StartApplicationWithTitleKeyword.groovy:35)
at com.kms.katalon.core.windows.keyword.builtin.StartApplicationWithTitleKeyword$_startApplicationWithTitle_closure1.doCall(StartApplicationWithTitleKeyword.groovy)
at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103)
at com.kms.katalon.core.keyword.internal.KeywordMain.runKeyword(KeywordMain.groovy:90)
at com.kms.katalon.core.keyword.internal.KeywordMain$runKeyword.call(Unknown Source)
at com.kms.katalon.core.windows.keyword.builtin.StartApplicationWithTitleKeyword.startApplicationWithTitle(StartApplicationWithTitleKeyword.groovy:34)
at com.kms.katalon.core.windows.keyword.builtin.StartApplicationWithTitleKeyword.execute(StartApplicationWithTitleKeyword.groovy:29)
at com.kms.katalon.core.keyword.internal.KeywordExecutor.executeKeywordForPlatform(KeywordExecutor.groovy:95)
at com.kms.katalon.core.windows.keyword.WindowsBuiltinKeywords.startApplicationWithTitle(WindowsBuiltinKeywords.java:1371)
at Paint.run(Paint:20)
at com.kms.katalon.core.main.ScriptEngine.run(ScriptEngine.java:194)
at com.kms.katalon.core.main.ScriptEngine.runScriptAsRawText(ScriptEngine.java:119)
at com.kms.katalon.core.main.TestCaseExecutor.runScript(TestCaseExecutor.java:504)
at com.kms.katalon.core.main.TestCaseExecutor.doExecute(TestCaseExecutor.java:495)
at com.kms.katalon.core.main.TestCaseExecutor.processExecutionPhase(TestCaseExecutor.java:474)
at com.kms.katalon.core.main.TestCaseExecutor.accessMainPhase(TestCaseExecutor.java:466)
at com.kms.katalon.core.main.TestCaseExecutor.execute(TestCaseExecutor.java:336)
at com.kms.katalon.core.main.TestCaseMain.runTestCase(TestCaseMain.java:151)
at com.kms.katalon.core.main.TestCaseMain.runTestCase(TestCaseMain.java:139)
at TempTestCase1775650009471.run(TempTestCase1775650009471.groovy:30)
at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103)
Caused by: java.lang.NullPointerException: Cannot invoke "String.length()" because "spec" is null
at com.kms.katalon.core.windows.driver.WindowsDriverFactory.startApplication(WindowsDriverFactory.java:83)
at com.kms.katalon.core.windows.driver.WindowsDriverFactory$startApplication.call(Unknown Source)
at com.kms.katalon.core.windows.keyword.builtin.StartApplicationWithTitleKeyword$_startApplicationWithTitle_closure1.doCall(StartApplicationWithTitleKeyword.groovy:35)
at com.kms.katalon.core.windows.keyword.builtin.StartApplicationWithTitleKeyword$_startApplicationWithTitle_closure1.doCall(StartApplicationWithTitleKeyword.groovy)
at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103)
at com.kms.katalon.core.keyword.internal.KeywordMain.runKeyword(KeywordMain.groovy:90)
at com.kms.katalon.core.keyword.internal.KeywordMain$runKeyword.call(Unknown Source)
at com.kms.katalon.core.windows.keyword.builtin.StartApplicationWithTitleKeyword.startApplicationWithTitle(StartApplicationWithTitleKeyword.groovy:34)
at com.kms.katalon.core.windows.keyword.builtin.StartApplicationWithTitleKeyword.execute(StartApplicationWithTitleKeyword.groovy:29)
at com.kms.katalon.core.keyword.internal.KeywordExecutor.executeKeywordForPlatform(KeywordExecutor.groovy:95)
at com.kms.katalon.core.windows.keyword.WindowsBuiltinKeywords.startApplicationWithTitle(WindowsBuiltinKeywords.java:1371)
at Script1775649326080.run(Script1775649326080.groovy:20)
... 11 more
)
2026-04-08 14:06:54.894 ERROR c.k.katalon.core.main.TestCaseExecutor - ❌ Test Cases/Paint FAILED.
Reason:
com.kms.katalon.core.exception.StepFailedException: Cannot invoke "String.length()" because "spec" is null (Root cause: java.net.MalformedURLException: Cannot invoke "String.length()" because "spec" is null
at com.kms.katalon.core.windows.driver.WindowsDriverFactory.startApplication(WindowsDriverFactory.java:83)
at com.kms.katalon.core.windows.driver.WindowsDriverFactory$startApplication.call(Unknown Source)
at com.kms.katalon.core.windows.keyword.builtin.StartApplicationWithTitleKeyword$_startApplicationWithTitle_closure1.doCall(StartApplicationWithTitleKeyword.groovy:35)
at com.kms.katalon.core.windows.keyword.builtin.StartApplicationWithTitleKeyword$_startApplicationWithTitle_closure1.doCall(StartApplicationWithTitleKeyword.groovy)
at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103)
at com.kms.katalon.core.keyword.internal.KeywordMain.runKeyword(KeywordMain.groovy:90)
at com.kms.katalon.core.keyword.internal.KeywordMain$runKeyword.call(Unknown Source)
at com.kms.katalon.core.windows.keyword.builtin.StartApplicationWithTitleKeyword.startApplicationWithTitle(StartApplicationWithTitleKeyword.groovy:34)
at com.kms.katalon.core.windows.keyword.builtin.StartApplicationWithTitleKeyword.execute(StartApplicationWithTitleKeyword.groovy:29)
at com.kms.katalon.core.keyword.internal.KeywordExecutor.executeKeywordForPlatform(KeywordExecutor.groovy:95)
at com.kms.katalon.core.windows.keyword.WindowsBuiltinKeywords.startApplicationWithTitle(WindowsBuiltinKeywords.java:1371)
at Paint.run(Paint:20)
at com.kms.katalon.core.main.ScriptEngine.run(ScriptEngine.java:194)
at com.kms.katalon.core.main.ScriptEngine.runScriptAsRawText(ScriptEngine.java:119)
at com.kms.katalon.core.main.TestCaseExecutor.runScript(TestCaseExecutor.java:504)
at com.kms.katalon.core.main.TestCaseExecutor.doExecute(TestCaseExecutor.java:495)
at com.kms.katalon.core.main.TestCaseExecutor.processExecutionPhase(TestCaseExecutor.java:474)
at com.kms.katalon.core.main.TestCaseExecutor.accessMainPhase(TestCaseExecutor.java:466)
at com.kms.katalon.core.main.TestCaseExecutor.execute(TestCaseExecutor.java:336)
at com.kms.katalon.core.main.TestCaseMain.runTestCase(TestCaseMain.java:151)
at com.kms.katalon.core.main.TestCaseMain.runTestCase(TestCaseMain.java:139)
at TempTestCase1775650009471.run(TempTestCase1775650009471.groovy:30)
at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103)
Caused by: java.lang.NullPointerException: Cannot invoke "String.length()" because "spec" is null
at com.kms.katalon.core.windows.driver.WindowsDriverFactory.startApplication(WindowsDriverFactory.java:83)
at com.kms.katalon.core.windows.driver.WindowsDriverFactory$startApplication.call(Unknown Source)
at com.kms.katalon.core.windows.keyword.builtin.StartApplicationWithTitleKeyword$_startApplicationWithTitle_closure1.doCall(StartApplicationWithTitleKeyword.groovy:35)
at com.kms.katalon.core.windows.keyword.builtin.StartApplicationWithTitleKeyword$_startApplicationWithTitle_closure1.doCall(StartApplicationWithTitleKeyword.groovy)
at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103)
at com.kms.katalon.core.keyword.internal.KeywordMain.runKeyword(KeywordMain.groovy:90)
at com.kms.katalon.core.keyword.internal.KeywordMain$runKeyword.call(Unknown Source)
at com.kms.katalon.core.windows.keyword.builtin.StartApplicationWithTitleKeyword.startApplicationWithTitle(StartApplicationWithTitleKeyword.groovy:34)
at com.kms.katalon.core.windows.keyword.builtin.StartApplicationWithTitleKeyword.execute(StartApplicationWithTitleKeyword.groovy:29)
at com.kms.katalon.core.keyword.internal.KeywordExecutor.executeKeywordForPlatform(KeywordExecutor.groovy:95)
at com.kms.katalon.core.windows.keyword.WindowsBuiltinKeywords.startApplicationWithTitle(WindowsBuiltinKeywords.java:1371)
at Script1775649326080.run(Script1775649326080.groovy:20)
... 11 more
)
at com.kms.katalon.core.keyword.internal.KeywordMain.stepFailed(KeywordMain.groovy:51)
at com.kms.katalon.core.keyword.internal.KeywordMain.stepFailed(KeywordMain.groovy)
at com.kms.katalon.core.keyword.internal.KeywordMain.runKeyword(KeywordMain.groovy:92)
at com.kms.katalon.core.keyword.internal.KeywordMain$runKeyword.call(Unknown Source)
at com.kms.katalon.core.windows.keyword.builtin.StartApplicationWithTitleKeyword.startApplicationWithTitle(StartApplicationWithTitleKeyword.groovy:34)
at com.kms.katalon.core.windows.keyword.builtin.StartApplicationWithTitleKeyword.execute(StartApplicationWithTitleKeyword.groovy:29)
at com.kms.katalon.core.keyword.internal.KeywordExecutor.executeKeywordForPlatform(KeywordExecutor.groovy:95)
at com.kms.katalon.core.windows.keyword.WindowsBuiltinKeywords.startApplicationWithTitle(WindowsBuiltinKeywords.java:1371)
at Paint.run(Paint:20)
at com.kms.katalon.core.main.ScriptEngine.run(ScriptEngine.java:194)
at com.kms.katalon.core.main.ScriptEngine.runScriptAsRawText(ScriptEngine.java:119)
at com.kms.katalon.core.main.TestCaseExecutor.runScript(TestCaseExecutor.java:504)
at com.kms.katalon.core.main.TestCaseExecutor.doExecute(TestCaseExecutor.java:495)
at com.kms.katalon.core.main.TestCaseExecutor.processExecutionPhase(TestCaseExecutor.java:474)
at com.kms.katalon.core.main.TestCaseExecutor.accessMainPhase(TestCaseExecutor.java:466)
at com.kms.katalon.core.main.TestCaseExecutor.execute(TestCaseExecutor.java:336)
at com.kms.katalon.core.main.TestCaseMain.runTestCase(TestCaseMain.java:151)
at com.kms.katalon.core.main.TestCaseMain.runTestCase(TestCaseMain.java:139)
at TempTestCase1775650009471.run(TempTestCase1775650009471.groovy:30)
at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103)
Caused by: java.net.MalformedURLException: Cannot invoke "String.length()" because "spec" is null
at com.kms.katalon.core.windows.driver.WindowsDriverFactory.startApplication(WindowsDriverFactory.java:83)
at com.kms.katalon.core.windows.driver.WindowsDriverFactory$startApplication.call(Unknown Source)
at com.kms.katalon.core.windows.keyword.builtin.StartApplicationWithTitleKeyword$_startApplicationWithTitle_closure1.doCall(StartApplicationWithTitleKeyword.groovy:35)
at com.kms.katalon.core.windows.keyword.builtin.StartApplicationWithTitleKeyword$_startApplicationWithTitle_closure1.doCall(StartApplicationWithTitleKeyword.groovy)
at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103)
at com.kms.katalon.core.keyword.internal.KeywordMain.runKeyword(KeywordMain.groovy:90)
... 17 more
Caused by: java.lang.NullPointerException: Cannot invoke "String.length()" because "spec" is null
... 23 more
2026-04-08 14:06:54.902 INFO c.k.katalon.core.main.TestCaseExecutor - END Test Cases/Paint
this looks like a regression in 11.1.x where the internal path parsing fails
maybe you can try these workaround
1. How to Roll Back
You can download previous versions directly from the GitHub repository. No installer is needed; just extract and run the executable.
2. Potential Workaround
If you need to stay on 11.1.x, try formatting the file path with forward slashes or the file:/// protocol. This often bypasses the URL parsing bug causing the spec is null error.
Windows.startApplication/startApplicationWithTitle fails with "spec" is null due to broken path-to-URL parsing in FlaUI driver (line 83, WindowsDriverFactory).
A quick update — Katalon Studio 11.1.2 has been released with the fix for this issue. You can download it here: Katalon Studio Download | Katalon
Could you please upgrade and confirm whether Windows.startApplication / Windows.startApplicationWithTitle works correctly on your end? If you still hit the String.length() … spec is null error after updating, please share:
The full stack trace from the new run
Your Windows.startApplication(...) call (path + any args)
For anyone who can’t upgrade right away, the manual driver workaround Elly shared above still applies:
cd <KatalonInstallationFolder>\configuration\resources\extensions\FlaUIWebDriver
FlaUI.WebDriver.exe --urls=http://127.0.0.1:4723 --environment=Production
…then point Project Settings → Desktop → Desktop Driver URL to http://127.0.0.1:4723.
Actually here was my issue: I did have to manually extract the FlaUI.WebDriver executable, but that didn’t fix the issue. After that unzip, I found the real problem: Even though I created my Project specifically as a Windows desktop project, it was still defaulting to Chrome for default execution when running my test script within the project. I had to go into Project Settings > Execution and manually change Default Execution to Windows instead of Chrome. Not sure why I would need to do that manually if I specified during Project creation that it’s a Windows project. But that’s why KS didn’t extract that FlaUI.WebDriver executable automatically during first run and also why I was getting the specific error I was seeing - it was trying to interpret that Windows path as a Web Browser URL! My Windows apps are now getting kicked off successfully from my KS desktop project.
I @Slowey and @Elly_Tran , currently I use the Katalon v.11.3.0 and I also config as your guide, but this issue still occur when I try to open the basic windows application. Please help us doublecheck for this version!