[
https://issues.apache.org/jira/browse/DAFFODIL-1924?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Steve Lawrence reassigned DAFFODIL-1924:
----------------------------------------
Assignee: Steve Lawrence
> DaffodilXMLLoader needs to explicitly specify which instance to use
> -------------------------------------------------------------------
>
> Key: DAFFODIL-1924
> URL: https://issues.apache.org/jira/browse/DAFFODIL-1924
> Project: Daffodil
> Issue Type: New Feature
> Components: Front End
> Affects Versions: 2.1.0
> Reporter: Steve Lawrence
> Assignee: Steve Lawrence
> Priority: Major
> Fix For: 2.2.0
>
>
> The SAXParserFactory.newInstance() method is used to create a new instance of
> a SAXParser. There are a handful of steps taken to find a SAXParser to use,
> as documented in the [newInstance()
> JavaDocs|https://docs.oracle.com/javase/7/docs/api/javax/xml/parsers/SAXParserFactory.html#newInstance()].
> The problem with this is that Daffodil sets the entity-resolver property to
> an instance of the DFDLCatalogResolver, which extends a specific Xerces
> XMLEntityResolver. In order for this to work, we must be guaranteed that the
> SAXParserFactory instance we get is the Xerces one, and not some other one
> overridden by one of the ways described in newInstace().
> So instead, we should use the newInstance method that lets you provide a
> string specifying which factory class to use, and specify our Xerces one.
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)