Test Cases/Get All Login FAILED.
Reason:
java.lang.IllegalArgumentException: Property ‘http://javax.xml.XMLConstants/property/accessExternalDTD’ is not recognized.
at org.apache.xerces.jaxp.DocumentBuilderFactoryImpl.setAttribute(Unknown Source)
at com.kms.katalon.util.DocumentBuilderProvider.newBuilderInstance(DocumentBuilderProvider.java:16)
at com.kms.katalon.core.testobject.ResponseObject.getResponseBodyContent(ResponseObject.java:74)
at Get All Login.run(Get All Login:35)
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:398)
at com.kms.katalon.core.main.TestCaseExecutor.doExecute(TestCaseExecutor.java:389)
at com.kms.katalon.core.main.TestCaseExecutor.processExecutionPhase(TestCaseExecutor.java:368)
at com.kms.katalon.core.main.TestCaseExecutor.accessMainPhase(TestCaseExecutor.java:360)
at com.kms.katalon.core.main.TestCaseExecutor.execute(TestCaseExecutor.java:255)
at com.kms.katalon.core.main.TestCaseMain.runTestCase(TestCaseMain.java:114)
at com.kms.katalon.core.main.TestCaseMain.runTestCase(TestCaseMain.java:105)
at com.kms.katalon.core.main.TestCaseMain$runTestCase$0.call(Unknown Source)
at TempTestCase1623560722016.run(TempTestCase1623560722016.groovy:25)
This message implies that you have Apache Xerces-J 2.12.0 and earlier that implement the older versions of JAXP in the classpath. See
I guess you have some external jar files placed in the <katalonProjectDir>/Drivers or Plugins directory, and among these there is a jar which contains the older Xerces-J. You need to identify which jar is causing problem. But how to?
Create a new Test Case, copy and paste the following code in it:
I think that the exception is raised only when @whisstuan.nguyen’s Test Case script received a XML document from the web server and the XML document starts with a line of External Document Type Definition, something like:
<?xml version = "1.0" encoding = "UTF-8" standalone = "no" ?>
<!DOCTYPE address SYSTEM "address.dtd">
....
As far as I know, External DTD is not widely used in the business world. It is a rare case. External DTD makes XML processing complicated and difficult. It is unfortunate if you, @whisstuan.nguyen, encountered XML with External DTD
Is the URL of yhe XML in question publicly accessicle on the Internet? if so pls share it to us. I ask this because i would need to reproduce your problem on my PC. Otherwise it is difficult to find a provable solution.
Another way, I asked my partner and run it at version 7.9, and it has worked well.
And one more thing I found that version 8.0.1 used Zulu platform instead of Java, so I think maybe this caused the trouble
I made a Test Case script to see what type of JRE Katalon uses.
def systemProperties = [
"java.vendor",
"java.vendor.url",
"java.version",
"java.vm.info",
"java.vm.name",
"java.vm.specification.name",
"java.vm.specification.vendor",
"java.vm.specification.version",
"java.vm.vendor",
"java.vm.version",
"os.arch",
"os.name",
"os.version"]
StringBuilder sb = new StringBuilder()
for (prop in systemProperties) {
sb.append("${prop}=${System.getProperty(prop)}\n")
}
print(sb.toString())
Katalon Stduio v8.0.1 showed
2021-06-15 15:38:51.756 DEBUG testcase.Zulu Platform - 4: print(sb.toString())
java.vendor=Azul Systems, Inc.
java.vendor.url=http://www.azulsystems.com/
java.version=1.8.0_275
java.vm.info=mixed mode
java.vm.name=OpenJDK 64-Bit Server VM
java.vm.specification.name=Java Virtual Machine Specification
java.vm.specification.vendor=Oracle Corporation
java.vm.specification.version=1.8
java.vm.vendor=Azul Systems, Inc.
java.vm.version=25.275-b01
os.arch=x86_64
os.name=Mac OS X
os.version=10.16
the 7.9.1 showed
java.vendor=Azul Systems, Inc.
java.vendor.url=http://www.azulsystems.com/
java.version=1.8.0_275
java.vm.info=mixed mode
java.vm.name=OpenJDK 64-Bit Server VM
java.vm.specification.name=Java Virtual Machine Specification
java.vm.specification.vendor=Oracle Corporation
java.vm.specification.version=1.8
java.vm.vendor=Azul Systems, Inc.
java.vm.version=25.275-b01
os.arch=x86_64
os.name=Mac OS X
os.version=10.16
Well I found no difference between the two.
I am not sure what is implied by the Windows Security Alert that @whisstuan.nguyen reported.
How can we, the community, contribute to resolution?
You can find Katalon Studio keywords source code here. This repository is not really our source code repository but we will keep the source code in this repo and ours the same.
To contribute a solution, you can create a PR for a bug fix. We will review the PR and merge to our private official repository if the PR is necessary for us.