Tamer is finally blogging!

Thought at the end of the day

  Home  |   Contact  |   Syndication    |   Login
  14 Posts | 0 Stories | 3 Comments | 22 Trackbacks

News

Archives

Post Categories

Image Galleries

For Presentations

Squash links

Siebel consultants use a wizard to build Web service WSDLs from their integration objects. One thing to watch out for is the value for ElementFormDefault in the WSDL. Sometimes (Not sure why) they will generate the WSDL and will have the following line:

 

<xsd:schema xmlns:xsdLocal0="http://www.CompanyName.co.uk/103Product/BBTErrorReturn" targetNamespace=http://www.CompanyName.co.uk/103Product/BBTErrorReturn xmlns:xsd="http://www.w3.org/2001/XMLSchema">

 

Which is fine but then the return value you get from the web service call is qualified, which looks like this:

 

 

xml version="1.0" encoding="UTF-8" ?>

- <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">

- <SOAP-ENV:Body xmlns="http://www.CompanyName.co.uk/xml/BBT_Account_And_Address_Inbound/BBT_Account_And_Address_Inbound">

- <BBTErrorReturn xmlns="http://www.CompanyName.co.uk/103Product/BBTErrorReturn">

  <ErrorCode xmlns="http://www.CompanyName.co.uk/103Product/BBTErrorReturn">0x6cbe -- 0x6b0c -- 0x80d8ErrorCode>

  <ErrorMessage xmlns="http://www.CompanyName.co.uk/103Product/BBTErrorReturn">'Street Address' is a required field. Please enter a value for the field. (SBL-DAT-00498) -- Stack trace: Service [BBT_Account_and_Address_Inbound].Service_PreInvokeMethod(), Line: 282 -- Error invoking service 'BBT_Account_and_Address_Inbound', method 'AccountAddressInbound' at step 'Update Account And Address'.(SBL-BPR-00162)ErrorMessage>

  BBTErrorReturn>

  SOAP-ENV:Body>

  SOAP-ENV:Envelope>

 

You end up having a dehydrated orchestration because you will are not able to read the SOAP response. If you use the SOAP Tool Kit as a proxy you can see the response coming back ok In addition if you use debug view to output the message from inside the orchestration, you will only see the top element without the sub elements.

 

The way around this is by manually editing the WSDL to add the attribute elementFormDefault="qualified". So that line should look like this:

<xsd:schema elementFormDefault="qualified"

 targetNamespace="http://www.siebel.com/xml/BBT Admin Product Definition"

 xmlns:xsdLocal1="http://www.siebel.com/xml/BBT Admin Product Definition"

 xmlns:xsd="http://www.w3.org/2001/XMLSchema"

> 

 

Then regenerate your schemas again from the Web reference. I tried just changing the schemas generated from the WSDL but that did not work. My best guess is that BizTalk 2004 uses the WSDL rather than the xsd file that VS2003 produces.

 

I hope this helps few people.

 

posted on Wednesday, January 19, 2005 2:03 PM

Feedback

# re: Gotcha!! Integrating with Siebel Web services using Biztalk 2004 SOAP 5/23/2007 5:03 AM Pandurang
hi ,
i will really appretiate if anybody helps me.
we are calling web services which are hosted on client machine.
whenever i try to call througn biztalk i am getting following exception.


System.Net.WebException: The request failed with HTTP status 504: Proxy Timeout ( The connection timed out. ).
at System.Web.Services.Protocols.SoapHttpClientProtocol.ReadResponse(SoapClientMessage message, WebResponse response, Stream responseStream, Boolean asyncCall)
at System.Web.Services.Protocols.SoapHttpClientProtocol.Invoke(String methodName, Object[] parameters)
at S3CommonAr


Please help me regarding same.

Post Feedback

Title:
Name:
Email: (never displayed)
Url:
Comments: 
Please add 3 and 2 and type the answer here: