Hello, I've tried to cache the introspection results by reusing instances of XMLIntrospector. But it turned out that simply calling setXMLIntrospector on an instance of BeanReader won't do the job completely. I think the reason is that addBeanCreateRule is not called when setting the Introspector.
The problem can be fixed by changing BeanReader#setXMLIntrospector to something similar to the following: public void setXMLIntrospector(XMLIntrospector introspector) { this.introspector = introspector; if (introspector != null) { final Iterator it = introspector.getRegistry().beanInfoIterator(); while (it.hasNext()) { XMLBeanInfo xmlInfo = (XMLBeanInfo) it.next(); registeredClasses.add(xmlInfo.getBeanClass()); ElementDescriptor elementDescriptor = xmlInfo .getElementDescriptor(); String path = elementDescriptor.getQualifiedName(); addBeanCreateRule(path, elementDescriptor, xmlInfo.getBeanClass()); } } } Or am I missing something? Worth putting this into JIRA ? --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]