Siebel EAI >  SBL-EAI-00137 Supplied input is not well formed or does not contain the expected data.

Siebel Inbound Web Service Returns Error "Supplied input is not well formed or does not contain the expected data.(SBL-EAI-00137)"

APPLIES TO:
Siebel CRM - Version 8.1.1.14.14 [IP2014] and later
Information in this document applies to any platform.
SYMPTOMS
PRODUCT VERSIONS:
------------------------------
SIEBEL VERSION: Siebel 8.1.1.11
DATABASE VERSION: Oracle 11.2.0.4
SIEBEL APP O/S: Linux x86

ISSUE STATEMENT:
----------------------------
Customer is using testing the Siebel out of the box Inbound Web Service named "Siebel Contact".

Customer uses SOAPUI to submit a request for this inbound web service. When doing so, customer encounters an error returned for the soap response.

ERROR MESSAGE:
--------------------------
The error message that occurs with this issue is:

<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
<SOAP-ENV:Body>
<SOAP-ENV:Fault>
<faultcode>SOAP-ENV:Client</faultcode>
<faultstring>Supplied input is not well formed or does not contain the expected data.(SBL-EAI-00137)</faultstring>
<detail>
<siebelf:siebdetail xmlns:siebelf="http://www.siebel.com/ws/fault">
<siebelf:logfilename>EAIObjMgr_enu_0031_32505905.log</siebelf:logfilename>
<siebelf:errorstack>
<siebelf:error>
<siebelf:errorcode>SBL-EAI-00137</siebelf:errorcode>
<siebelf:errorsymbol>IDS_EAI_WS_BAD_XML_DOCUMENT</siebelf:errorsymbol>
<siebelf:errormsg>Supplied input is not well formed or does not contain the expected data.(SBL-EAI-00137)</siebelf:errormsg>
</siebelf:error>
<siebelf:error>
<siebelf:errorcode>SBL-EAI-00246</siebelf:errorcode>
<siebelf:errorsymbol>IDS_XMLCNV_ERR_EMPTYMSG</siebelf:errorsymbol>
<siebelf:errormsg>XML Hierarchy Converter error - empty input message, expecting an XML document in &lt;Value> of input arguments(SBL-EAI-00246)</siebelf:errormsg>
</siebelf:error>
</siebelf:errorstack>
</siebelf:siebdetail>
</detail>
</SOAP-ENV:Fault>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>

WHERE IT HAPPENED:
-------------------------------
The issue happens in customer's Development environment.

STEPS TO REPRODUCE:
---------------------------------
The behaviour occurs as follows:

1. In the Siebel application, navigate to Sitemap > Administration - Web Services screen > Inbound Web Services view > query for web service named "Siebel Contact" > set the status to 'Active'.

2. Generate the WSDL file for this "Siebel Contact" web services.

3. Restart the Siebel server services.

4. Launch the SOAPUI tool and load the WSDL file.

5. Then, submit a request for the web service, the reported error is returned.

LOSS OF FUNCTIONALITY / BUSINESS IMPACT:
------------------------------
This is the first time customer is trying to invoke a Siebel Inbound Web Services and it is not working. Thus, they need to have this resolved to ensure that integration of similar web services with Sales Cloud will work properly.


CAUSE
The cause of the issue is that customer is sending the web service soap request into Siebel using the http:// protocol in the URL, but the web server redirects the request to the https:// protocol, yet the https was not enabled at the Web Server that runs the Siebel SWSE application.

Customer's http log for the failed request shows the following:


Mon Feb 15 17:35:19 PST 2016:DEBUG:>> "POST /eai_anon_enu/start.swe?SWEExtSource=SecureWebService&SWEExtCmd=Execute HTTP/1.1[\r][\n]"
Mon Feb 15 17:35:19 PST 2016:DEBUG:>> "Content-Type: text/xml;charset=UTF-8[\r][\n]"
Mon Feb 15 17:35:19 PST 2016:DEBUG:>> "SOAPAction: "rpc/http://siebel.com/asi/:SiebelContactQueryById"[r][n]"
Mon Feb 15 17:35:19 PST 2016:DEBUG:>> "Content-Length: 316[\r][\n]"
Mon Feb 15 17:35:19 PST 2016:DEBUG:>> "Host: HOST_NAME_HERE[\r][\n]"
Mon Feb 15 17:35:19 PST 2016:DEBUG:>> "Connection: Keep-Alive[\r][\n]"
Mon Feb 15 17:35:19 PST 2016:DEBUG:>> "User-Agent: Apache-HttpClient/4.1.1 (java 1.5)[\r][\n]"
Mon Feb 15 17:35:19 PST 2016:DEBUG:>> "[\r][\n]"
Mon Feb 15 17:35:19 PST 2016:DEBUG:>> "[r][n]"
Mon Feb 15 17:35:19 PST 2016:DEBUG:>> " [\r] [\n]"
Mon Feb 15 17:35:19 PST 2016:DEBUG:>> " [\r][\n]"
Mon Feb 15 17:35:19 PST 2016:DEBUG:>> " [\r][\n]"
Mon Feb 15 17:35:19 PST 2016:DEBUG:>> " 1-683WR[\r][\n]"
Mon Feb 15 17:35:19 PST 2016:DEBUG:>> " [\r][\n]"
Mon Feb 15 17:35:19 PST 2016:DEBUG:>> " [\r][\n]"
Mon Feb 15 17:35:19 PST 2016:DEBUG:>> ""
Mon Feb 15 17:35:19 PST 2016:DEBUG:<< "HTTP/1.0 302 Found[\r][\n]"
Mon Feb 15 17:35:19 PST 2016:DEBUG:<< "Location: https://WEB_SERVER_NAME/eai_anon_enu/start.swe?SWEExtSource=SecureWebService&SWEExtCmd=Execute[r][n]"

Note above, though in soapui, the URL is http://WEB_SERVER_NAME/eai_anon_enu/start.swe?SWEExtSource=SecureWebService&SWEExtCmd=Execute

However, the http log shows it is eventually going to a location with https://

Customer also investigated onsite and further discovered that the request gets directed to https.

SOLUTION
To apply the fix:

1. Connect to the Web Server machine where the Siebel SWSE is running on.

2. On the Web Server software, enable https protocol.