IBM Support

PH41439: FFDC GENERATING JAVAX.XML.PARSERS.FACTORYCONFIGURATIONERROR: PROVIDER

Subscribe to this APAR

By subscribing, you receive periodic emails alerting you to the status of the APAR, along with a link to the fix after it becomes available. You can track this item individually or track all items by product.

Notify me when this APAR changes.

Notify me when an APAR for this component changes.

 

APAR status

  • Closed as program error.

Error description

  • When application packages it's own xercesImpl and xml-apis jars
    and uses Classloader option of PARENT_LAST option and
    application webcontainer thread generating an error on WebSphere
    Internal component, Application can fail with following error
    
    [10/19/21 11:37:12:757 CEST] 000000b6 FfdcProvider  I   FFDC
    provider error
    
    javax.xml.parsers.FactoryConfigurationError: Provider
    javax.xml.parsers.DocumentBuilderFactory could not be
    instantiated: java.util.ServiceConfigurationError:
    javax.xml.parsers.DocumentBuilderFactory: Provider
    org.apache.xerces.jaxp.DocumentBuilderFactoryImpl not a subtype
    	at javax.xml.parsers.DocumentBuilderFactory.newInstance(Unknown
    Source)
    	at com.ibm.etools.analysis.engine.databases.DOMSSymptomDatabas
    e.getXmlDom(DOMSSymptomDatabase.java:265)
    	at com.ibm.etools.analysis.engine.databases.DOMSSymptomDatabas
    e.merge(DOMSSymptomDatabase.java:88)
    	at com.ibm.etools.analysis.engine.databases.DOMSSymptomDatabas
    e.load(DOMSSymptomDatabase.java:76)
    	at com.ibm.etools.analysis.engine.databases.DOMSSymptomDatabas
    e.replace(DOMSSymptomDatabase.java:69)
    	at com.ibm.etools.analysis.engine.engines.FFDCAnalysisEngine.r
    eplaceSymptomDatabase(FFDCAnalysisEngine.java:157)
    	at com.ibm.etools.analysis.engine.engines.FFDCAnalysisEngine.<
    init>(FFDCAnalysisEngine.java:76)
    	at com.ibm.etools.analysis.engine.engines.FFDCAnalysisEngine.g
    etInstance(FFDCAnalysisEngine.java:104)
    	at com.ibm.ws.ffdc.impl.DMAdapter.getAnalysisEngine(DMAdapter.
    java:136)
    	at com.ibm.ws.ffdc.impl.DMAdapter.formatTo(DMAdapter.java:94)
    	at com.ibm.ffdc.util.provider.IncidentLogger.writeIncidentTo(I
    ncidentLogger.java:63)
    	at com.ibm.ws.ffdc.impl.FfdcProvider.logIncident(FfdcProvider.
    java:213)
    	at com.ibm.ws.ffdc.impl.FfdcProvider.logIncident(FfdcProvider.
    java:145)
    	at com.ibm.ffdc.util.provider.FfdcProvider.log(FfdcProvider.ja
    va:289)
    	at com.ibm.ws.ffdc.impl.FfdcProvider.log(FfdcProvider.java:255)
    
    	at com.ibm.ffdc.util.provider.IncidentEntry.log(IncidentEntry.
    java:106)
    	at com.ibm.ffdc.util.provider.Ffdc.log(Ffdc.java:96)
    	at
    com.ibm.ws.ffdc.FFDCFilter.processException(FFDCFilter.java:126)
    
    	at com.ibm.ws.rsadapter.jdbc.WSJdbcResultSet.getString(WSJdbcR
    esultSet.java:2469)
    

Local fix

  • 1) Removing xercesImpl and xml-apis jar from application will
    resolve this issue
    2) use PARENT_LAST option can also resolve this issue in most of
    the use cases.
    

Problem summary

  • ****************************************************************
    * USERS AFFECTED:  All users of IBM WebSphere Application      *
    *                  Server                                      *
    ****************************************************************
    * PROBLEM DESCRIPTION: When application packages it's own      *
    *                      xercesImpl and xml-apis jars            *
    *                      and uses Classloader option of          *
    *                      PARENT_LAST option and                  *
    *                      application webcontainer thread         *
    *                      generating an error on WebSphere        *
    *                      Internal component, Application can     *
    *                      fail with following error               *
    *                      000000b6 FfdcProvider  I   FFDC         *
    *                      provider error                          *
    *                      javax.xml.parsers.FactoryConfigurationE *
    *                      rror: Provider                          *
    *                      javax.xml.parsers.DocumentBuilderFactor *
    *                      y could not be                          *
    *                      instantiated:                           *
    *                      java.util.ServiceConfigurationError:    *
    *                      javax.xml.parsers.DocumentBuilderFactor *
    *                      y: Provider                             *
    *                      org.apache.xerces.jaxp.DocumentBuilderF *
    *                      actoryImpl not a subtype                *
    ****************************************************************
    * RECOMMENDATION:  Do not package xercesImpl, xml-apis or any  *
    *                  other jars with their own xml parses with   *
    *                  the application. If not possible, use       *
    *                  PARENT_FIRST classloading configuration.    *
    ****************************************************************
    When application packages it's own xercesImpl and xml-apis jars
    and uses Classloader option of PARENT_LAST option and
    application webcontainer thread generating an error on
    WebSphere
    Internal component, Application can fail with following error:
    000000b6 FfdcProvider  I   FFDC
    provider error
    javax.xml.parsers.FactoryConfigurationError: Provider
    javax.xml.parsers.DocumentBuilderFactory could not be
    instantiated: java.util.ServiceConfigurationError:
    javax.xml.parsers.DocumentBuilderFactory: Provider
    org.apache.xerces.jaxp.DocumentBuilderFactoryImpl not a subtype
    at javax.xml.parsers.DocumentBuilderFactory.newInstance(Unknown
    Source)
    at com.ibm.etools.analysis.engine.databases.DOMSSymptomDatabas
    e.getXmlDom(DOMSSymptomDatabase.java:265)
    at com.ibm.etools.analysis.engine.databases.DOMSSymptomDatabas
    e.merge(DOMSSymptomDatabase.java:88)
    at com.ibm.etools.analysis.engine.databases.DOMSSymptomDatabas
    e.load(DOMSSymptomDatabase.java:76)
    at com.ibm.etools.analysis.engine.databases.DOMSSymptomDatabas
    e.replace(DOMSSymptomDatabase.java:69)
    at com.ibm.etools.analysis.engine.engines.FFDCAnalysisEngine.r
    eplaceSymptomDatabase(FFDCAnalysisEngine.java:157)
    at com.ibm.etools.analysis.engine.engines.FFDCAnalysisEngine.<
    init>(FFDCAnalysisEngine.java:76)
    at com.ibm.etools.analysis.engine.engines.FFDCAnalysisEngine.g
    etInstance(FFDCAnalysisEngine.java:104)
    at com.ibm.ws.ffdc.impl.DMAdapter.getAnalysisEngine(DMAdapter.
    java:136)
    at com.ibm.ws.ffdc.impl.DMAdapter.formatTo(DMAdapter.java:94)
    at com.ibm.ffdc.util.provider.IncidentLogger.writeIncidentTo(I
    ncidentLogger.java:63)
    at com.ibm.ws.ffdc.impl.FfdcProvider.logIncident(FfdcProvider.
    java:213)
    at com.ibm.ws.ffdc.impl.FfdcProvider.logIncident(FfdcProvider.
    java:145)
    at com.ibm.ffdc.util.provider.FfdcProvider.log(FfdcProvider.ja
    va:289)
    at com.ibm.ws.ffdc.impl.FfdcProvider.log(FfdcProvider.java:255)
    at com.ibm.ffdc.util.provider.IncidentEntry.log(IncidentEntry.
    java:106)
    at com.ibm.ffdc.util.provider.Ffdc.log(Ffdc.java:96)
    at
    com.ibm.ws.ffdc.FFDCFilter.processException(FFDCFilter.java:126)
    at com.ibm.ws.rsadapter.jdbc.WSJdbcResultSet.getString(WSJdbcR
    esultSet.java:2469)
    This occurs when an FFDC is being thrown and when the IBM code
    is attempting to load an
    expected xml parser (from the IBM JDK) it instead loads the one
    provided by the
    customer.
    

Problem conclusion

Temporary fix

Comments

APAR Information

  • APAR number

    PH41439

  • Reported component name

    WEBS APP SERV N

  • Reported component ID

    5724H8800

  • Reported release

    900

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt / Xsystem

  • Submitted date

    2021-10-19

  • Closed date

    2022-02-07

  • Last modified date

    2022-02-07

  • APAR is sysrouted FROM one or more of the following:

  • APAR is sysrouted TO one or more of the following:

Fix information

  • Fixed component name

    WEBS APP SERV N

  • Fixed component ID

    5724H8800

Applicable component levels

[{"Line of Business":{"code":"LOB45","label":"Automation"},"Business Unit":{"code":"BU059","label":"IBM Software w\/o TPS"},"Product":{"code":"SSEQTP","label":"WebSphere Application Server"},"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"9.0"}]

Document Information

Modified date:
08 February 2022