Search This Blog

SBL-EAI-05153: The binding element '%1' is invalid.

Applies to: Siebel System Software - Version: 7.8.2.11 SIA[19244] and later [Release: V7 and later ]
Information in this document applies to any platform.
Symptoms
On : 7.8.2.11 SIA[19244] version, Siebel EAI

When attempting to generate definitions for Outbound Web Service based on wsdl the following error occurs.

ERROR
-----------------------
Project: News Limited
WSDL file to import: C:\intellilinkapi.wsdl
Run-time configuration data file: C:\intellilinkapi.xml
Log File: C:\intellilinkapi.log

Errors during processing:
There are no web service definitions to be generated.(SBL-EAI-04340)
Following are warnings generated in the process:
Service 'IntelliLinkAPIWSService' can not be imported, because none of its ports could be imported.(SBL-EAI-04333)

Port 'IntelliLinkAPIWSServicePort' can not be imported. The binding element

'soap://verint.com/CCS/IntelliLink/ILAPIWS:IntelliLinkAPIWSServiceBinding' is invalid.
(SBL-EAI-05153)
.The transport UNDEFINED for binding IntelliLinkAPIWSServiceBinding is not supported.

STEPS
-----------------------
The issue can be reproduced at will with the following steps:
1. From Siebel Tools > File > New Object > EAI > Web Service
2. Select the WSDL
3. Run the import and the error appears.

Cause
The issue with message 'The transport UNDEFINED for binding IntelliLinkAPIWSServiceBinding is not supported' is caused due to the following undefined definition for Transport within the Binding definition:

"<wsdl:binding name="IntelliLinkAPIWSServiceBinding" type="tns:IntelliLinkAPIWSServicePortType">
<soap:binding style="document" transport=""/>"

In order to get a valid WSDL, it has to include an URI for the Transport attribute in the binding to be used. Information related to the required 'Transport' value is included in Web Service Definition 1.1 standard (http://www.w3.org/TR/wsdl#_soap:binding).
Solution
In order to accomplish with the WSDL 1.1. standard, the 'Transport' attribute has to include an URI with the transport to be used in the service. The standard URI for HTTP is 'http://schemas.xmlsoap.org/soap/http', so please edit your WSDL and replace the content:

"<wsdl:binding name="IntelliLinkAPIWSServiceBinding" type="tns:IntelliLinkAPIWSServicePortType">
<soap:binding style="document" transport=""/>"

with the definition including the URI for transport:

"<wsdl:binding name="IntelliLinkAPIWSServiceBinding" type="tns:IntelliLinkAPIWSServicePortType">
<soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>"

Save and repeat the Web Service creation from Siebel Toosl.

After doing this you should be able of generating the definitions for the Outbound Web Service.







Applies to: Siebel CRM Call Center - Version: 8.0.0.5 [20420] - Release: V8

Information in this document applies to any platform.
Symptoms
When you try to consume the WSDL in Tools, the following error is output:

“Service 'xGateCreateUser' can not be imported, because none of its ports could be imported.(SBL-EAI-04333)

Port 'Request' can not be imported. The binding element 'http://xgate.com.au/xgate/webservices/definitions/xGate-Create-User-Request:xGateCreateUserBinding' is invalid.
(SBL-EAI-05153)
.The SoapOperation %1 does not have either an input or output SoapBody child.”
Cause
I carried out some research and came across another SR where the customer also encountered the error “The SoapOperation %1 does not have either an input or output SoapBody child.” The error occurred because the WSDL included input soap:header elements in the binding section. The customer’s WSDL also included such elements.
Solution
For the aforementioned SR, the WSDL could be consumed after the Input soap:header elements were removed. It appeared that Output soap:header elements were ignored. CR 10569979 was raised to address this behavior.

Obviously, no repository objects were created for the removed input soap headers. It is possible to add any required headers to an outgoing SOAP document using a local business service. Information on how to do this is included in [Using a Local Business Service To Customize the SOAP Header for an Outbound Web Service in Siebel 7.x and 8.x] (Doc ID 477891.1).

In this case, the customer confirmed that the WSDL could be consumed and that the proxy business service and IOs were created after the soap:header sections were specified after the soap:body.
ReferencesBUG:10569979 - THE SOAPOPERATION %1 DOES NOT HAVE EITHER AN INPUT OR OUTPUT SOAPBODY CHILD.WSDL WITH INPUT HEADER
NOTE:477891.1 - Using a Local Business Service To Customize the SOAP Header for an Outbound Web Service in Siebel 7.x and 8.x
Related


Products


Siebel > Customer Relationship Management > CRM - Enterprise Edition > Siebel CRM Call Center
Errors

 
SBL-EAI-05153; SBL-EAI-04333
 

 

No comments:

Post a Comment