Direct links to fixes
APAR status
Closed as program error.
Error description
To serialize a business object into an IBM Business Process Manager (BPM) proprietary XML format, you can use the toXML or toXMLString functions on the business object: var xml = tw.local.variableName.toXML(); var xmlString = tw.local.variableName.toXMLString(); Alternatively, you can use the serializer API: var xml = tw.system.serializer.toXml(tw.local.variableName); To deserialize the XML back into a variable, you use the following JavaScript (JS) API: tw.local.variableName = tw.system.serializer.fromXml(xml); However, when you run the "tw.local.variableName = tw.system.serializer.fromXml(xml)" JavaScript API for an XML that contains a serialized object of a business object type, and that business object uses a name that is used in multiple toolkits, the operation fails and you find an exception like the following example in the SystemOut.log file on the server: [1/27/17 13:07:03:936 CST] 000001a7 SerializerScr E com.lombardisoftware.core.script.js.SerializerScriptable jsFunction_fromXml fromXML() Error deserializing: Attempt to deserialize element of complex type <BOTYPENAME> failed because the property name '<PROPERTYNAME>' specified in the XML content does not exist on the specified type. com.lombardisoftware.core.TeamWorksException: Attempt to deserialize element of complex type <BOTYPENAME> failed because the property name '<PROPERTYNAME>' specified in the XML content does not exist on the specified type. at com.lombardisoftware.core.VariableObjectSerializer.deserializeCo mplexType(VariableObjectSerializer.java:1185) at com.lombardisoftware.core.VariableObjectSerializer.deserialize(V ariableObjectSerializer.java:951) at com.lombardisoftware.core.VariableObjectSerializer.deserialize(V ariableObjectSerializer.java:876) at com.lombardisoftware.core.VariableObjectSerializer.deserializeCo mplexType(VariableObjectSerializer.java:1197) at com.lombardisoftware.core.VariableObjectSerializer.deserialize(V ariableObjectSerializer.java:951) at com.lombardisoftware.core.VariableObjectSerializer.deserialize(V ariableObjectSerializer.java:876) at com.lombardisoftware.core.VariableObjectSerializer.deserializeCo mplexType(VariableObjectSerializer.java:1197) at com.lombardisoftware.core.VariableObjectSerializer.deserialize(V ariableObjectSerializer.java:951) PRODUCTS AFFECTED IBM BPM Advanced IBM BPM Standard IBM BPM Express
Local fix
Problem summary
The serialized XML for a business object included only information about its type name. During deserialization, IBM BPM used the ordered dependency list of the toolkits to find the first business object type that had a matching name. This business object type might be wrong if the serialized XML is of a type from another toolkit that is later in the dependency list.
Problem conclusion
A fix will be included in IBM BPM V8.5.7 cumulative fix 2017.03 that enhances the serialized XML format with an additional attribute that identifies the toolkit or process application that contains the business object type so that the deserialization can use that information to find the correct business object type.
Temporary fix
Comments
APAR Information
APAR number
JR57376
Reported component name
BPM ADVANCED
Reported component ID
5725C9400
Reported release
856
Status
CLOSED PER
PE
NoPE
HIPER
NoHIPER
Special Attention
NoSpecatt / Xsystem
Submitted date
2017-02-06
Closed date
2017-03-07
Last modified date
2017-03-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
BPM STANDARD
Fixed component ID
5725C9500
Applicable component levels
[{"Business Unit":{"code":"BU059","label":"IBM Software w\/o TPS"},"Product":{"code":"SSFTDH","label":"IBM Business Process Manager Standard"},"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"856","Line of Business":{"code":"LOB45","label":"Automation"}}]
Document Information
Modified date:
04 September 2023