Skip to content

projectodd/vdx

master
Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Code

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
bin
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

VDX - better error messages for XML validation

Provides more helpful output when reading XML based on validation/parse exceptions. Currently only used by WildFly and JBoss EAP.

Sample Output

With WildFly, instead of seeing:

09:40:13,124 ERROR [org.jboss.as.server] (Controller Boot Thread) WFLYSRV0055: Caught exception during boot: org.jboss.as.controller.persistence.ConfigurationPersistenceException: WFLYCTL0085: Failed to parse configuration
	at org.jboss.as.controller.persistence.XmlConfigurationPersister.load(XmlConfigurationPersister.java:143) [wildfly-controller-3.0.0.Alpha23-SNAPSHOT.jar:3.0.0.Alpha23-SNAPSHOT]
	at org.jboss.as.server.ServerService.boot(ServerService.java:373) [wildfly-server-3.0.0.Alpha23-SNAPSHOT.jar:3.0.0.Alpha23-SNAPSHOT]
	at org.jboss.as.controller.AbstractControllerService$1.run(AbstractControllerService.java:314) [wildfly-controller-3.0.0.Alpha23-SNAPSHOT.jar:3.0.0.Alpha23-SNAPSHOT]
	at java.lang.Thread.run(Thread.java:745) [rt.jar:1.8.0_92]
Caused by: com.ctc.wstx.exc.WstxParsingException: Duplicate attribute 'data-source'.
 at [row,col {unknown-source}]: [125,39]
	at com.ctc.wstx.sr.StreamScanner.constructWfcException(StreamScanner.java:621) [woodstox-core-5.0.3.jar:5.0.3]
	at com.ctc.wstx.sr.StreamScanner.throwParseError(StreamScanner.java:491) [woodstox-core-5.0.3.jar:5.0.3]
	at com.ctc.wstx.sr.StreamScanner.throwParseError(StreamScanner.java:475) [woodstox-core-5.0.3.jar:5.0.3]
	at com.ctc.wstx.sr.AttributeCollector.throwDupAttr(AttributeCollector.java:1173) [woodstox-core-5.0.3.jar:5.0.3]
	at com.ctc.wstx.sr.AttributeCollector.resolveNamespaces(AttributeCollector.java:1016) [woodstox-core-5.0.3.jar:5.0.3]
	at com.ctc.wstx.sr.InputElementStack.resolveAndValidateElement(InputElementStack.java:509) [woodstox-core-5.0.3.jar:5.0.3]
	at com.ctc.wstx.sr.BasicStreamReader.handleStartElem(BasicStreamReader.java:3059) [woodstox-core-5.0.3.jar:5.0.3]
	at com.ctc.wstx.sr.BasicStreamReader.nextFromTree(BasicStreamReader.java:2919) [woodstox-core-5.0.3.jar:5.0.3]
	at com.ctc.wstx.sr.BasicStreamReader.next(BasicStreamReader.java:1123) [woodstox-core-5.0.3.jar:5.0.3]
	at com.ctc.wstx.sr.BasicStreamReader.nextTag(BasicStreamReader.java:1204) [woodstox-core-5.0.3.jar:5.0.3]
	at org.jboss.staxmapper.XMLExtendedStreamReaderImpl.nextTag(XMLExtendedStreamReaderImpl.java:152) [staxmapper-1.3.0.Final.jar:1.3.0.Final]
	at org.wildfly.extension.batch.jberet.BatchSubsystemParser_1_0.parseJobRepository(BatchSubsystemParser_1_0.java:125)
	at org.wildfly.extension.batch.jberet.BatchSubsystemParser_1_0.readElement(BatchSubsystemParser_1_0.java:103)
	at org.wildfly.extension.batch.jberet.BatchSubsystemParser_1_0.readElement(BatchSubsystemParser_1_0.java:52)
	at org.jboss.staxmapper.XMLMapperImpl.processNested(XMLMapperImpl.java:122) [staxmapper-1.3.0.Final.jar:1.3.0.Final]
	at org.jboss.staxmapper.XMLExtendedStreamReaderImpl.handleAny(XMLExtendedStreamReaderImpl.java:69) [staxmapper-1.3.0.Final.jar:1.3.0.Final]
	at org.jboss.as.server.parsing.StandaloneXml_4.parseServerProfile(StandaloneXml_4.java:531) [wildfly-server-3.0.0.Alpha23-SNAPSHOT.jar:3.0.0.Alpha23-SNAPSHOT]
	at org.jboss.as.server.parsing.StandaloneXml_4.readServerElement(StandaloneXml_4.java:226) [wildfly-server-3.0.0.Alpha23-SNAPSHOT.jar:3.0.0.Alpha23-SNAPSHOT]
	at org.jboss.as.server.parsing.StandaloneXml_4.readElement(StandaloneXml_4.java:125) [wildfly-server-3.0.0.Alpha23-SNAPSHOT.jar:3.0.0.Alpha23-SNAPSHOT]
	at org.jboss.as.server.parsing.StandaloneXml.readElement(StandaloneXml.java:104) [wildfly-server-3.0.0.Alpha23-SNAPSHOT.jar:3.0.0.Alpha23-SNAPSHOT]
	at org.jboss.as.server.parsing.StandaloneXml.readElement(StandaloneXml.java:49) [wildfly-server-3.0.0.Alpha23-SNAPSHOT.jar:3.0.0.Alpha23-SNAPSHOT]
	at org.jboss.staxmapper.XMLMapperImpl.processNested(XMLMapperImpl.java:122) [staxmapper-1.3.0.Final.jar:1.3.0.Final]
	at org.jboss.staxmapper.XMLMapperImpl.parseDocument(XMLMapperImpl.java:76) [staxmapper-1.3.0.Final.jar:1.3.0.Final]
	at org.jboss.as.controller.persistence.XmlConfigurationPersister.load(XmlConfigurationPersister.java:126) [wildfly-controller-3.0.0.Alpha23-SNAPSHOT.jar:3.0.0.Alpha23-SNAPSHOT]
	... 3 more

You'll now get:

09:42:29,037 ERROR [org.jboss.as.controller] (Controller Boot Thread)

OPVDX001: Validation error in standalone.xml -----------------------------------
|
|  123: <job-repository name="in-memory">
|  124:   <jdbc data-source="foo"
|  125:         data-source="bar"/>
|               ^^^^ 'data-source' can't appear more than once on this element
|
|  126: </job-repository>
|  127: <thread-pool name="batch">
|  128:     <max-threads count="10"/>
|
| A 'data-source' attribute first appears here:
|
|  122: <default-thread-pool name="batch"/>
|  123: <job-repository name="in-memory">
|  124:   <jdbc data-source="foo"
|               ^^^^
|
|  125:         data-source="bar"/>
|  126: </job-repository>
|  127: <thread-pool name="batch">
|
| The primary underlying error message was:
| > Duplicate attribute 'data-source'.
| >  at [row,col {unknown-source}]: [125,39]
|
|-------------------------------------------------------------------------------

About

Helpful error messages when xml parsing fails

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •