Tuesday, September 13, 2016

XML-20201: (Fatal Error) Expected name instead of .

Error :
-------

Output post processor failed with below error processing report output

Caused by: org.xml.sax.SAXParseException: : XML-20201: (Fatal Error) Expected name instead of  .

Concurrent Log file Error:
-------------------------------

Inserting invoice IDs into Temp Table
SQL STATEMENT :  INSERT into xxdn.xxdn_ACCOUNT_ANALYSIS_INVTEMP  SELECT pv.VENDOR_NAME supplier_name,   ai.invoice_num invoice_number,   ab.INVOICE_DATE invoice_date,   ab.invoice_amount  invoice_amount,   ab.invoice_id SOURCE_INVOICE_ID,   ab.ORG_ID,   ab.SET_OF_BOOKS_ID   FROM   hr_organization_information oi, hr_all_organization_units_tl ae, AND ae.language = USERENV('LANG')   AND NVL(ORG_ID,85 ) = 85

Inserted records into Temp Table successfully..

+------------- 1) PUBLISH -------------+
Beginning post-processing of request 321496451 on node USWS1HMSDVCM02 at 12-SEP-2016 16:48:24.
Post-processing of request 321496451 failed at 12-SEP-2016 16:48:28 with the error message:
One or more post-processing actions failed. Consult the OPP service log for details.

OPP Log file shows the following error:
--------------------------------------------------
[9/12/16 4:48:28 PM] [UNEXPECTED] [2058679:RT321496451] java.lang.reflect.InvocationTargetException
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        at oracle.apps.xdo.template.FOProcessor.generate(FOProcessor.java:975)
        at oracle.apps.xdo.oa.schema.server.TemplateHelper.runProcessTemplate(TemplateHelper.java:5943)
        at oracle.apps.xdo.oa.schema.server.TemplateHelper.processTemplate(TemplateHelper.java:3459)
        at oracle.apps.xdo.oa.schema.server.TemplateHelper.processTemplate(TemplateHelper.java:3548)
        at oracle.apps.fnd.cp.opp.XMLPublisherProcessor.process(XMLPublisherProcessor.java:290)
        at oracle.apps.fnd.cp.opp.OPPRequestThread.run(OPPRequestThread.java:157)
Caused by: org.xml.sax.SAXParseException: : XML-20201: (Fatal Error) Expected name instead of  .
        at oracle.xdo.parser.v2.XMLError.flushErrorHandler(XMLError.java:441)
        at oracle.xdo.parser.v2.XMLError.flushErrors1(XMLError.java:303)
        at oracle.xdo.parser.v2.XMLReader.scanNameChars(XMLReader.java:1061)
        at oracle.xdo.parser.v2.XMLReader.scanQName(XMLReader.java:1871)
        at oracle.xdo.parser.v2.XMLReader.getEntity(XMLReader.java:2125)
        at oracle.xdo.parser.v2.NonValidatingParser.parseContentEntityRef(NonValidatingParser.java:1654)
        at oracle.xdo.parser.v2.NonValidatingParser.parseElement(NonValidatingParser.java:1272)
        at oracle.xdo.parser.v2.NonValidatingParser.parseRootElement(NonValidatingParser.java:338)
        at oracle.xdo.parser.v2.NonValidatingParser.parseDocument(NonValidatingParser.java:285)
        at oracle.xdo.parser.v2.XMLParser.parse(XMLParser.java:289)
        ... 17 more


Solution:
-----------

select invoice_number from xxdn_ACCOUNT_ANALYSIS_INVTEMP where invoice_number like '%&%';

The above table is taken from the output file of the concurrent request and this gives the output column in which the "&" is included in the value which is supposed to be removed.

Checking output xml file Line 17018, we notice “&”, which is causing the issue.
2016-0402 & 2016-5829

You will have to run a data fix for this particular output or check with the developers to fix this.

No comments: