Re: contention during XMLReaderFactory.createXMLReader

2013-11-13 Thread Andrew Welch
One of the common misconceptions about writing XML applications is that creating a parser instance does not incur a large performance cost. Thanks Michael, I was under that common misconception. I'll tell my colleague that he does need to pool the parsers after all. cheers andrew On 12

Re: contention during XMLReaderFactory.createXMLReader

2013-11-13 Thread Andrew Welch
Hi again, Out of interest - what's the reason for not setting the system property after doing the META-INF search? At the moment every jar file gets examined every time an XMLReader is created - is there a situation where users want different results from subsequent calls to createXMLReader(...)

Re: contention during XMLReaderFactory.createXMLReader

2013-11-13 Thread Michael Glavassevich
Hi Andrew, System properties are global settings. It's not always a good idea to set them. If you were to set the system property in an application server where other applications have a preference to use alternate JAXP implementations you may break them. Frameworks such as OSGi allow bundles

Re: contention during XMLReaderFactory.createXMLReader

2013-11-12 Thread Michael Glavassevich
Hi Andrew, Creating a new XML parser can be very expensive. The ClassLoader used to create the parser and its internal components might block or spend a long time searching its classpath for META-INF/services files. This is why it's generally a good idea to cache and reuse [1] XML parser