SCR doesn't cope when the DS xml is not encoded using the default platform 
encoding.
------------------------------------------------------------------------------------

                 Key: FELIX-3108
                 URL: https://issues.apache.org/jira/browse/FELIX-3108
             Project: Felix
          Issue Type: Bug
          Components: Declarative Services (SCR)
    Affects Versions:  scr-1.6.0
            Reporter: Alasdair Nottingham


I've been trying to use felix SCR on z/OS (insane I know). The default platform 
encoding for z/OS is EBCDIC. When parsing my DS component xml I get the 
following exception in the log:

!STACK 0
org.xmlpull.v1.XmlPullParserException: unterminated entity ref (position:TEXT 
ÃŒ_%€ÎÁÊËÃ'?>Â'...@1:239 in java.io.BufferedReader@71fedaf) 
        at org.kxml2.io.KXmlParser.exception(Unknown Source)
        at org.kxml2.io.KXmlParser.error(Unknown Source)
        at org.kxml2.io.KXmlParser.pushEntity(Unknown Source)
        at org.kxml2.io.KXmlParser.pushText(Unknown Source)
        at org.kxml2.io.KXmlParser.nextImpl(Unknown Source)
        at org.kxml2.io.KXmlParser.next(Unknown Source)
        at 
org.apache.felix.scr.impl.parser.KXml2SAXParser.parseXML(KXml2SAXParser.java:62)
        at 
org.apache.felix.scr.impl.BundleComponentActivator.loadDescriptor(BundleComponentActivator.java:227)

The component.xml is UTF-8 encoded not EBCDIC. The DS spec 112.4.2 (page 310) 
says that the file is UTF-8 encoded so it should be able to parse it. I suspect 
the BundleComponentActivator creates an InputStreamReader and doesn't provide 
an encoding which is why I see this problem.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira


Reply via email to