APAR status
Closed as program error.
Error description
Issue reported : When using just the JRE, this program works fine. When a standard WebSphere Application Server jar file is added to the classpath, the deserialization fails with an exception. Case description: This fix is for tWAS 8.5, 9.0 and Liberty WebSphere Application Server (Liberty, version 21.0.0.9) jar $ java -classpath ../bin:$WLP/lib/com.ibm.ws.xlxp.1.5.3_1.0.56.jar com.example.JaxbTest WebSphere Application Server (tWAS) jar version 8.5.5.20: $ WAS=.../AppServer $ java -classpath ../bin:$WAS/plugins/com.ibm.ws.prereq.xlxp.jar com.example.JaxbTest $ java -classpath ../bin:$WAS/runtimes/com.ibm.jaxws.thinclient_8.5.0.jar com.example.JaxbTest Each of the three mentioned jars contains a files META-INF/services/javax.xml.bind.JAXBContext. Exception: java.lang.ArrayIndexOutOfBoundsException: Array index out of range: -1 at com.ibm.xml.xlxp2.scan.util.XMLCharacterProperties.nameStar tChar10(XMLCharacterProperties.java:419) at com.ibm.xml.xlxp2.jaxb.unmarshal.impl.DeserializationContex t$JAXPQNameProducer.parseQNameUnbuffered(DeserializationContext .java:1669) at com.ibm.xml.xlxp2.jaxb.unmarshal.impl.DeserializationContex t$JAXPQNameProducer.parseQName(DeserializationContext.java:1645) at com.ibm.xml.xlxp2.jaxb.unmarshal.impl.DeserializationContex t$JAXPQNameProducer.getQNameValue(DeserializationContext.java:1 633) at com.ibm.xml.xlxp2.jaxb.unmarshal.impl.DeserializationContex t.getQNameValue(DeserializationContext.java:1359) at com.example.jaxb.Data_JAXB_Deserialization_Stub.writeAttrib uteProperty(com.example.jaxb.Data_JAXB_Deserialization_Stub.jav a) at com.ibm.xml.xlxp2.jaxb.unmarshal.impl.DeserializationStub.w riteAttributeProperties(DeserializationStub.java:216) at com.example.jaxb.Data_JAXB_Deserialization_Stub.start(com.e xample.jaxb.Data_JAXB_Deserialization_Stub.java) at com.ibm.xml.xlxp2.jaxb.unmarshal.impl.DeserializationContex t.startComplexType(DeserializationContext.java:702) at com.ibm.xml.xlxp2.jaxb.unmarshal.impl.DeserializationContex t.handleRootElementEvent(DeserializationContext.java:313) at com.ibm.xml.xlxp2.jaxb.unmarshal.impl.DeserializationContex t.handleRootElementEvent(DeserializationContext.java:279) at com.ibm.xml.xlxp2.jaxb.unmarshal.impl.JAXBDocumentScanner.p roduceRootElementEvent(JAXBDocumentScanner.java:176) at com.ibm.xml.xlxp2.scan.DocumentScanner.scanRootElement(Docu mentScanner.java:2245) at com.ibm.xml.xlxp2.scan.DocumentScanner.scanProlog(DocumentS canner.java:1733) at com.ibm.xml.xlxp2.scan.DocumentScanner.nextEvent(DocumentSc anner.java:1323) at com.ibm.xml.xlxp2.scan.DocumentScanner.parseDocumentEntity( DocumentScanner.java:1175) at com.ibm.xml.xlxp2.jaxb.unmarshal.impl.JAXBDocumentScanner.u nmarshal(JAXBDocumentScanner.java:147) at com.ibm.xml.xlxp2.jaxb.unmarshal.UnmarshallerImpl.unmarshal (UnmarshallerImpl.java:131) at com.ibm.xml.xlxp2.jaxb.unmarshal.AbstractUnmarshallerImpl.u nmarshal(AbstractUnmarshallerImpl.java:81) at com.example.JaxbTest.main(JaxbTest.java:21)
Local fix
And setting System.setProperty("com.ibm.xml.xlxp.jaxb.opti.level", "2"); looks like a work around.
Problem summary
**************************************************************** * USERS AFFECTED: All users of IBM WebSphere Application * * Server * **************************************************************** * PROBLEM DESCRIPTION: Array index out of bounds exception * * when * * unmarshalling XML into QName Java type * **************************************************************** * RECOMMENDATION: * **************************************************************** Array index out of bounds exception from JAXB processor when unmarshalling XML into QName Java type with multi-byte UTF-8 characters.
Problem conclusion
The fix for this APAR is targeted for inclusion in fix pack 8.5.5.22, 9.0.5.13. For more information, see 'Recommended Updat for WebSphere Application Server': https://www.ibm.com/support/pages/node/715553
Temporary fix
Comments
APAR Information
APAR number
PH46247
Reported component name
WEBSPHERE APP S
Reported component ID
5724J0800
Reported release
900
Status
CLOSED PER
PE
NoPE
HIPER
NoHIPER
Special Attention
NoSpecatt / Xsystem
Submitted date
2022-05-09
Closed date
2022-07-25
Last modified date
2022-09-08
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
WEBSPHERE APP S
Fixed component ID
5724J0800
Applicable component levels
[{"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","Line of Business":{"code":"LOB45","label":"Automation"}}]
Document Information
Modified date:
08 September 2022