I'm trying to capture business data from an Oracle SOA Composite payload as Dynatrace Request Attributes.
Currently, I'm targeting:
com.collaxa.cube.engine.ejb.impl.CubeEngineBean, Method:syncCreateAndInvokeParticipate(...)
Using Deep Object Access on Normalized message parameter, the following works:
getPayload().values().iterator().next().getTextContent()
However, this does not return the XML structure or tags. It returns only the concatenated XML values, and Dynatrace further truncates the result due to Request Attribute character limits. Since the payload can contain thousands of XML lines, identifying and extracting specific business fields from a truncated value stream becomes extremely difficult.
I attempted XML navigation approaches such as:
getPayload().values().iterator().next()
.getElementsByTagName("OrderNumber")
but such method calls are not supported by Dynatrace Request Attributes.
Questions:
- Is there any supported Deep Object Access syntax to navigate XML elements instead of returning only text content?
- Has anyone successfully extracted individual XML tags from an Oracle SOA Composite payload?
- What is the recommended approach when getTextContent() returns only truncated values without tags or structure?
Note: Business Events are not a viable option for this use case. The transactions are primarily internal JMS/T3 flows within Oracle SOA/WebLogic.
Any examples or best practices would be greatly appreciated.
Thanks!