My Oracle Support Banner

Inbound REST Fails With Error: Cannot convert Integration Object Hierarchy to XML Hierarchy.(SBL-EAI-04108),Integration component type 'xxx' is not a valid child type for component type 'yyy'.(SBL-EAI-04008) (Doc ID 2989577.1)

Last updated on DECEMBER 27, 2023

Applies to:

Siebel CRM - Version 23.9 and later
Information in this document applies to any platform.

Symptoms

After patching the environment from 19.7 to 23.10, an inbound REST call throws the following errors in EAIObjMgr*.log

ObjMgrLog Error 1 0000010e654101b6:0 2023-11-01 13:46:21 (eaiobjinst.cpp (3387)) SBL-EAI-04008: Integration component type 'xxxx' is not a valid child type for component type 'yyyy'.

ObjMgrBusServiceLog Error 1 0000010e654101b6:0 2023-11-01 13:46:21 (eaixmlcnvsv.cpp (203)) SBL-EAI-04108: Cannot convert Integration Object Hierarchy to XML Hierarchy.

PrcExec PropSet 4 0000010e654101b6:0 2023-11-01 13:46:21 Error invoking service 'EAI XML Converter', method 'IntObjHierToXMLDoc' at step 'Hier_to_Text Request'.(SBL-BPR-00162)


The issue can be reproduced at will with the following steps:


1. Create a custom business service that takes as input a custom integration object named

TestAccountIO with integration Components

name AccountIC , xmltag AccountIC

name ContactIC , xmltag ContactIC

2. Code the business service to invoke EAI XML Converter, method IntObjHierToXMLDoc, and pass as input TestAccountIO.


3. Setup the business service to be invoked as an inboundd REST interface, by following the steps in this KM article:

•  How To Test Siebel IP2016 and 17+ RESTFul Services API (Doc ID 2193144.2)


4. Use a testing tool such as Chrome Postman or SoapUI to invoke the REST service and pass the following structure as input:

Notice contactic is passed all in lower case, but is defined in the integration component name and XML tag properties as ContactIC instead:



"SiebelMessage": {

"MessageId": "",

"MessageType": "Integration Object",

"IntObjectName": "TestAccountIO",

"IntObjectFormat": "Siebel Hierarchical",

"ListOfTestAccountIO: {

"AccountIC": {

"Name": "xxxx",

"Account Type": "Individual",

"ListOfContactIC": {

"contactic": [

{

"First Name": "xxx",

"Last Name": "xxxx"

}

]

}

}

}

}

 


5. This works fine in 19.7, but fails in 23.10

Changes

Update from 19.7 to 23.10

 

Cause

To view full details, sign in with your My Oracle Support account.

Don't have a My Oracle Support account? Click to get started!


In this Document
Symptoms
Changes
Cause
Solution
References


My Oracle Support provides customers with access to over a million knowledge articles and a vibrant support community of peers and Oracle experts.