BizTalk Server Orchestration - Call External Web Service.

This is Interesting: Free IT Magazines  
Home > Archive > BizTalk Server Orchestration > June 2005 > Call External Web Service.





You are viewing an archived Text-only version of the thread. To view this thread in it's original format and/or if you want to reply to this thread please [click here]

Author Call External Web Service.
Perry Molendijk

2005-04-18, 5:50 pm

We have been at this one for quite a number of days now and although we
are very close to get this working we can't quite get there.

We need to send a message using a SOAP Send Port to an external web
service but with the following obstacles:

1. The url of the web service is longer than 256 characters - this
requires the use of a proxy because the BT does not support URLs longer
than 256 characters.

2. The XML schema defines a ComplexType with maxOccurs="UNBOUNDED" which
is not supported by BT either.

So far we have tried:

wsdl.exe to create a proxy but the code is generates is not
complete/incorrect.

wsewsdl2.exe to create the proxy (wsewsdl2 comes with the WSE 2.0
toolkit). The code is fine and we have managed to send a message but we
somehow can't find a way to add Basic Authentication parameters in the
proxy file. WseWsdl2.exe creates a proxy using SoapClient.
This would do http://username:password@wsServer.com but doesn't work; we
need to add a username and password to the HTTPRequest.

Attached are the WSDL and the proxy files generated by wsdl.exe and
wsewsdl2.exe. Any help or suggestions would be greatly appreciated.

Regards,

Perry Molendijk
Jon Flanders[MVP]

2005-04-18, 5:50 pm

Question related to #1 - what part of the url is especially long? if it is
the DNS name - you could munge your hosts file and maybe get around the 256
character limit that way (again just another work around but it avoids the
proxy).

Relating to #2 - you might want to try to use the HTTP send adapter instead.

To do this you have to wrap the outgoing schema in the SOAP envelope with a
map (or with a .NET method).

Also you have to put the SOAPAction header into the message context with a
custom pipeline component.

Let me know if you want to go this route I can provide an example.

--
Jon Flanders
http://www.masteringbiztalk.com/blogs/jon/

"Perry Molendijk" <inflexions@westnet.com.au> wrote in message
news:4263ceec$1@quokka.wn.com.au...
> We have been at this one for quite a number of days now and although we
> are very close to get this working we can't quite get there.
>
> We need to send a message using a SOAP Send Port to an external web
> service but with the following obstacles:
>
> 1. The url of the web service is longer than 256 characters - this
> requires the use of a proxy because the BT does not support URLs longer
> than 256 characters.
>
> 2. The XML schema defines a ComplexType with maxOccurs="UNBOUNDED" which
> is not supported by BT either.
>
> So far we have tried:
>
> wsdl.exe to create a proxy but the code is generates is not
> complete/incorrect.
>
> wsewsdl2.exe to create the proxy (wsewsdl2 comes with the WSE 2.0
> toolkit). The code is fine and we have managed to send a message but we
> somehow can't find a way to add Basic Authentication parameters in the
> proxy file. WseWsdl2.exe creates a proxy using SoapClient.
> This would do http://username:password@wsServer.com but doesn't work; we
> need to add a username and password to the HTTPRequest.
>
> Attached are the WSDL and the proxy files generated by wsdl.exe and
> wsewsdl2.exe. Any help or suggestions would be greatly appreciated.
>
> Regards,
>
> Perry Molendijk



Perry Molendijk

2005-04-18, 5:50 pm

#1 The length of the is in the parameters at the end. The Web Service is
generated by SAP XI and the URL contains a large number of parameters.

#2 If using the HTTP adapter is an option I would love to have your example.

Regards,

Perry

Jon Flanders[MVP] wrote:
> Question related to #1 - what part of the url is especially long? if it is
> the DNS name - you could munge your hosts file and maybe get around the 256
> character limit that way (again just another work around but it avoids the
> proxy).
>
> Relating to #2 - you might want to try to use the HTTP send adapter instead.
>
> To do this you have to wrap the outgoing schema in the SOAP envelope with a
> map (or with a .NET method).
>
> Also you have to put the SOAPAction header into the message context with a
> custom pipeline component.
>
> Let me know if you want to go this route I can provide an example.
>

bvin

2005-06-15, 2:48 am

Jon,

Would it be possible to get a copy of the example.

I have a similar situation where I need to provide a HTTP Authorization
header on a SOAP request to a webservice. I haven't found any way to do this
yet (and I have tried many things). Using an HTTP adapter would work out
great.

Thanks in advance...

"Jon Flanders[MVP]" wrote:

> Question related to #1 - what part of the url is especially long? if it is
> the DNS name - you could munge your hosts file and maybe get around the 256
> character limit that way (again just another work around but it avoids the
> proxy).
>
> Relating to #2 - you might want to try to use the HTTP send adapter instead.
>
> To do this you have to wrap the outgoing schema in the SOAP envelope with a
> map (or with a .NET method).
>
> Also you have to put the SOAPAction header into the message context with a
> custom pipeline component.
>
> Let me know if you want to go this route I can provide an example.
>
> --
> Jon Flanders
> http://www.masteringbiztalk.com/blogs/jon/
>
> "Perry Molendijk" <inflexions@westnet.com.au> wrote in message
> news:4263ceec$1@quokka.wn.com.au...
>
>
>

Sponsored Links






Free braindumps | Software forum | Database administration forum

Copyright 2003 - 2008 webservertalk.com