-
Bug
-
Resolution: Fixed
-
Major
-
None
-
Platform: All, OS: other
When a TFS changeset has an ampersand (&) character in the comment, the TFS
plugin gets a "Parse Fatal Error" resulting from a SAXParseException. The
result of this is that no changes are shown for the build in the Hudson UI, even
though TFS changesets were found.
Here is an example stacktrace:
SEVERE: Parse Fatal Error at line 6 column 54: The entity name must immediately
follow the '&' in the entity reference.
org.xml.sax.SAXParseException: The entity name must immediately follow the '&'
in the entity reference.
at org.apache.xerces.util.ErrorHandlerWrapper.createSAXParseException(Unknown
Source)
at org.apache.xerces.util.ErrorHandlerWrapper.fatalError(Unknown Source)
at org.apache.xerces.impl.XMLErrorReporter.reportError(Unknown Source)
at org.apache.xerces.impl.XMLErrorReporter.reportError(Unknown Source)
at org.apache.xerces.impl.XMLScanner.reportFatalError(Unknown Source)
at
org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanEntityReference(Unknown Source)
at
org.apache.xerces.impl.XMLDocumentFragmentScannerImpl$FragmentContentDispatcher.dispatch(Unknown
Source)
at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown
Source)
at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
at org.apache.xerces.parsers.XMLParser.parse(Unknown Source)
at org.apache.xerces.parsers.AbstractSAXParser.parse(Unknown Source)
at org.apache.xerces.jaxp.SAXParserImpl$JAXPSAXParser.parse(Unknown Source)
at org.apache.commons.digester.Digester.parse(Digester.java:1685)
at hudson.plugins.tfs.ChangeSetReader.parse(ChangeSetReader.java:54)
at hudson.plugins.tfs.ChangeSetReader.parse(ChangeSetReader.java:31)
at hudson.plugins.tfs.ChangeSetReader.parse(ChangeSetReader.java:25)
at hudson.model.AbstractBuild.calcChangeSet(AbstractBuild.java:429)
at hudson.model.AbstractBuild.access$500(AbstractBuild.java:78)
at hudson.model.AbstractBuild$AbstractRunner.checkout(AbstractBuild.java:320)
at hudson.model.AbstractBuild$AbstractRunner.run(AbstractBuild.java:266)
at hudson.model.Run.run(Run.java:927)
at hudson.model.Build.run(Build.java:112)
at hudson.model.ResourceController.execute(ResourceController.java:93)
at hudson.model.Executor.run(Executor.java:119)
org.xml.sax.SAXParseException: The entity name must immediately follow the '&'
in the entity reference.
at org.apache.xerces.parsers.AbstractSAXParser.parse(Unknown Source)
at org.apache.xerces.jaxp.SAXParserImpl$JAXPSAXParser.parse(Unknown Source)
at org.apache.commons.digester.Digester.parse(Digester.java:1685)
at hudson.plugins.tfs.ChangeSetReader.parse(ChangeSetReader.java:54)
at hudson.plugins.tfs.ChangeSetReader.parse(ChangeSetReader.java:31)
at hudson.plugins.tfs.ChangeSetReader.parse(ChangeSetReader.java:25)
at hudson.model.AbstractBuild.calcChangeSet(AbstractBuild.java:429)
at hudson.model.AbstractBuild.access$500(AbstractBuild.java:78)
at hudson.model.AbstractBuild$AbstractRunner.checkout(AbstractBuild.java:320)
at hudson.model.AbstractBuild$AbstractRunner.run(AbstractBuild.java:266)
at hudson.model.Run.run(Run.java:927)
at hudson.model.Build.run(Build.java:112)
at hudson.model.ResourceController.execute(ResourceController.java:93)
at hudson.model.Executor.run(Executor.java:119)
Here is an example changeset:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Changeset: 803980
User: U0026729
Date: Tuesday, May 26, 2009 3:35:24 PM
Comment:
Just testing what happens when I use the & character...Hudson does not seem to
like it!
Items:
add $/Checkpoint/CheckpointWebApp/main/etc/dummy.txt
Check-in Notes:
Code Reviewer:
Performance Reviewer:
Security Reviewer:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
I'm running Hudson 1.307 with TFS plugin 1.4, on a Windows 2003 SP2 server.