Stack when an xml file is empty

96 views
Skip to first unread message

apu...@redhat.com

unread,
Dec 12, 2016, 8:52:32 AM12/12/16
to SonarLint
Hi,

when an xml file is empty, ther eis this stack:

Unable to parse xml file: C:\Users\Aurelien Pupier\git\m2eclipse-tycho\org.sonatype.tycho.m2e.tests\projects\lifecyclemapping\tycho-eclipse-feature\feature.xml
org.xml.sax.SAXParseException: Premature end of file.
at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.createSAXParseException(Unknown Source) ~[na:1.8.0_102]
at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.fatalError(Unknown Source) ~[na:1.8.0_102]
at com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(Unknown Source) ~[na:1.8.0_102]
at com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(Unknown Source) ~[na:1.8.0_102]
at com.sun.org.apache.xerces.internal.impl.XMLScanner.reportFatalError(Unknown Source) ~[na:1.8.0_102]
at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl$PrologDriver.next(Unknown Source) ~[na:1.8.0_102]
at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(Unknown Source) ~[na:1.8.0_102]
at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown Source) ~[na:1.8.0_102]
at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(Unknown Source) ~[na:1.8.0_102]
at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(Unknown Source) ~[na:1.8.0_102]
at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(Unknown Source) ~[na:1.8.0_102]
at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(Unknown Source) ~[na:1.8.0_102]
at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(Unknown Source) ~[na:1.8.0_102]
at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl.parse(Unknown Source) ~[na:1.8.0_102]
at javax.xml.parsers.SAXParser.parse(Unknown Source) ~[na:1.8.0_102]
at org.sonar.java.xml.XmlParser.parseXML(XmlParser.java:59) ~[java-frontend-4.2.1.6971.jar:na]
at org.sonar.java.xml.XmlAnalyzer.simpleScan(XmlAnalyzer.java:95) [java-frontend-4.2.1.6971.jar:na]
at org.sonar.java.xml.XmlAnalyzer.scan(XmlAnalyzer.java:81) [java-frontend-4.2.1.6971.jar:na]
at org.sonar.plugins.java.XmlFileSensor.execute(XmlFileSensor.java:55) [sonar-java-plugin-4.2.1.6971.jar:na]
at org.sonarsource.sonarlint.core.analyzer.sensor.SensorWrapper.analyse(SensorWrapper.java:52) [org.sonarsource.sonarlint.core.sonarlint-core_2.6.0.136.jar:na]
at org.sonarsource.sonarlint.core.analyzer.sensor.SensorsExecutor.executeSensor(SensorsExecutor.java:73) [org.sonarsource.sonarlint.core.sonarlint-core_2.6.0.136.jar:na]
at org.sonarsource.sonarlint.core.analyzer.sensor.SensorsExecutor.execute(SensorsExecutor.java:63) [org.sonarsource.sonarlint.core.sonarlint-core_2.6.0.136.jar:na]
at org.sonarsource.sonarlint.core.analyzer.sensor.PhaseExecutor.execute(PhaseExecutor.java:44) [org.sonarsource.sonarlint.core.sonarlint-core_2.6.0.136.jar:na]
at org.sonarsource.sonarlint.core.container.analysis.AnalysisContainer.doAfterStart(AnalysisContainer.java:143) [org.sonarsource.sonarlint.core.sonarlint-core_2.6.0.136.jar:na]
at org.sonarsource.sonarlint.core.container.ComponentContainer.startComponents(ComponentContainer.java:125) [org.sonarsource.sonarlint.core.sonarlint-core_2.6.0.136.jar:na]
at org.sonarsource.sonarlint.core.container.ComponentContainer.execute(ComponentContainer.java:110) [org.sonarsource.sonarlint.core.sonarlint-core_2.6.0.136.jar:na]
at org.sonarsource.sonarlint.core.container.standalone.StandaloneGlobalContainer.analyze(StandaloneGlobalContainer.java:118) [org.sonarsource.sonarlint.core.sonarlint-core_2.6.0.136.jar:na]
at org.sonarsource.sonarlint.core.StandaloneSonarLintEngineImpl.analyze(StandaloneSonarLintEngineImpl.java:96) [org.sonarsource.sonarlint.core.sonarlint-core_2.6.0.136.jar:na]
at org.sonarsource.sonarlint.core.StandaloneSonarLintEngineImpl.analyze(StandaloneSonarLintEngineImpl.java:84) [org.sonarsource.sonarlint.core.sonarlint-core_2.6.0.136.jar:na]
at org.sonarlint.eclipse.core.internal.jobs.StandaloneSonarLintClientFacade.runAnalysis(StandaloneSonarLintClientFacade.java:65) [org.sonarlint.eclipse.core_2.4.0.201611280942.jar:na]
at org.sonarlint.eclipse.core.internal.jobs.AnalyzeProjectJob.run(AnalyzeProjectJob.java:430) [org.sonarlint.eclipse.core_2.4.0.201611280942.jar:na]
at org.sonarlint.eclipse.core.internal.jobs.AnalyzeProjectJob$AnalysisThread.run(AnalyzeProjectJob.java:125) [org.sonarlint.eclipse.core_2.4.0.201611280942.jar:na]

It would be better to detect that the xml file is empty.

regards,

Michael Gumowski

unread,
Dec 13, 2016, 5:49:57 AM12/13/16
to apu...@redhat.com, SonarLint
Hello,

Thanks for the feedback. It's indeed not very nice and we should cover the case of empty files properly.
I created the following ticket to handle the issue: SONARJAVA-2009

Cheers,
Michael

--
You received this message because you are subscribed to the Google Groups "SonarLint" group.
To unsubscribe from this group and stop receiving emails from it, send an email to sonarlint+...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/sonarlint/0302fb76-4263-4a78-8118-afbc4641a050%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
--

Michael GUMOWSKI | SonarSource
Software Developer @ Language Team
http://sonarsource.com
Reply all
Reply to author
Forward
0 new messages