Biztalk 2004 Integration Experiences

Thursday, September 01, 2005

HTTP Send Adapter - Submit to ASP Page Issue

I had an issue recently with the HTTP Send Adapter and as usual it was due to poor Biztalk 2004 documentation.

A common scenario in a B2B Application would be to post xml documents to a partner's web site, which might be an asp page. We had configured a send port with the HTTP Adapter as transport and url as "http://testing.com/submit.asp" (the asp page is at a partner site, which would do a binary read to read the data posted and update the partner's system).

This configuration was working fine till the message size was 48 KB. Once it's greater than that, we received warnings like this and eventually the send port failed to transmit.

The adapter failed to transmit message going to send port "http://testing.com/submit.asp". It will be retransmitted after the retry interval specified for this Send Port.
Details:"The remote server returned an error: (500) Internal Server Error.".


I had no clue whatsoever of why this might happen and began to do some research on this. After some time I figured out what was happening. It was not a bug in the adapter but was designed like this.

To have large message support when the size of the message is greater than 48 KB, the http send adapter is sending the data in chunks to the server instead of a full stream, also makes the contentlength to -1 (which is not supported in asp).

Shouldn't this be documented somewhere in Biztalk 2004 documentation or a support article, apparently no :)

OK, also there is a way to overcome this, ie) if you want the HTTP Send Adapter to send the data as a full stream instead of chunks, there is a registry key you can set (Which is also un-documented)

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\BTSSvc{Host instance GUID} (Typically the BiztalkServerApplication host's GUID)

Create a DWORD key named "DisableChunkEncoding" and set it to "1"

I had to use reflector to go through HTTP Adapters code to figure out this, the only hit in google after finding the solution was this support article which is for different reason.

http://support.microsoft.com/default.aspx?scid=kb;en-us;839663

2 Comments:

  • At 12:44 AM, Blogger Jake Dude said…

    Biztalk server online training - 21st Century Software Solutions
    www.21cssindia.com/courses/biztalk-server-online-training-213.html
    biztalk server online training, biztalk server training, biztalk server online training visakhapatnam, biztalk 2010 online training, microsoft biztalk online training, ...
    Biztalk admin online training - 21st Century Software Solutions
    www.21cssindia.com/courses/biztalk-admin-online-training-220.html
    biztalk admin online training, biztalk admin training, biztalk server online training, biztalk server training, biztalk admin course contents, biztalk admin enquiry, ...

     
  • At 8:55 AM, Blogger Deepan M said…

    Hi Deepak,

    Thank you very much for your post. It indeed really helped a lot while I was banging my head to get rid of this issue. Thanks for the clarity in your post.


    Thanks,
    Deepan M

     

Post a Comment

<< Home