Details
-
Bug
-
Status: Open
-
Major
-
Resolution: Unresolved
-
2.7.1
-
None
-
None
-
Security Level: No security risk; visible to anyone (Ordinary problems in Xalan projects. Anybody can view the issue.)
-
None
Description
Hi,
recently we've noticed that if the XML source file we transform with Xalan 2.7.1 contains a colon in its path then we are getting bizarre errors similar to
2019-12-25 06:21:17,213 INFO .dev2_publishing_01_tmv1887 [de.telekom.phoenix.importer.NamespaceXslProcessor] [atg-xml-importer-thread] [Phoenix] [PUBLISHING_EXT_PHOENIX_IMPORTER] [NoUniqueCode] ImportFileData transformInMemory StreamSource(srcFile): /pkg/moip/phxa_dev2/share/delta/to_import/2019-12-25_06:21:16_import.xml 2019-12-25 06:21:17,213 INFO .dev2_publishing_01_tmv1887 [de.telekom.phoenix.importer.NamespaceXslProcessor] [atg-xml-importer-thread] [Phoenix] [PUBLISHING_EXT_PHOENIX_IMPORTER] [NoUniqueCode] ImportFileData transformInMemory StreamResult(destFile): /pkg/moip/phxa_dev2/temp/1887_getCvList_12-25-2019-06-20-58-492.xml7821127400366028541NamespaceXslProcessor 2019-12-25 06:21:17,223 ERROR .dev2_publishing_01_tmv1887 [stderr] [atg-xml-importer-thread] [NoLogCategory] [NoMarker] [NoUniqueCode] (Location of error unknown)java.io.FileNotFoundException: /pkg/moip/phxa_dev2/share/delta/to_import/2019-12-25_0/svc/tmv1887/moip/phxa_dev2/6:21:16_import.xml (No such file or directory)
We checked that we do pass a correct path to the transformer but the path is somehow changed afterward. I have created a simple maven project to isolate the issue and I was able to do that. It seems that if a systemId contains multiple colons then it is transformed to something broken, e.g. if the system id passed to getAbsoluteURI is
file:/pkg/moip/phxa_dev2/share/delta/to_import/2019-12-25_06:21:16_import.xml
then the result would be
file:/pkg/moip/phxa_dev2/share/delta/to_import/2019-12-25_0/svc/tmv1887/moip/phxa_dev2/6:21:16_import.xml
.
We believe it might be a bug at org.apache.xml.utils.SystemIDResolver.getAbsoluteURI(String).