Problems sending a large Purchase Order XML file

Home Page Forums BizTalk 2004 – BizTalk 2010 Problems sending a large Purchase Order XML file

Viewing 1 reply thread
  • Author
    Posts
    • #17955

      Hi,

      We are trying to send a large Purchase Order XML file to an outside company. If the orders are average size (20+ lines) there is no problem, but if it is 90+ lines we are getting the 403 Forbidden message.

      Has anyone else come accross this problem before, and if so, have you any advice (apart from don't make the Orders so large!!)

      As this is our first Biztalk application, it's all new to us….

      Thanks

      Mike

    • #18005

      Mike,

      If you google a 403 (say http://www.checkupdown.com/status/E403.html) you get the following:

      Your Web server thinks that the HTTP data stream sent by the
      client was correct, but access
      to the resource identified by the URL is forbidden for some reason
      …This indicates a fundamental access problem, which may be
      difficult to resolve because the HTTP protocol allows the Web server to give
      this response without providing any reason at all. So the 403 error is
      equivalent to a blanket 'NO' by your Web server – with no further discussion
      allowed.

      So, this is an access problem, not (I would suggest) a problem with your large orders. I would probably start by checking the logs on the webserver you're posting to and see whether there is anything reported there. If that doesn't work, post the error log entry when the adapter fails and I'm sure the community can offer more advice.

      Hope that (sort of helps?!?)

      Nick,

      ps. I'm assuming your using the 'out of the box' HTTP adapter for this task? 

      • #18011

        Looks like this is limitation of HTTP Protocol with large payload. We used to get the same problem even with custom code written to do HTTP Post. Fortunately, in our case the other party used to get our orders but somehow their web server returned this error inspite of fully receiving the payload.. We could not do anything but to catch this exception and proceed with other logic…

        Please post here if you happen to solve this problem in a standard way. It will help all of us. 

         

        • #18092

          Well the good news is that I managaed to get this working!! It seems the 403 message may have been misleading?

          I started playing with the file – reducing it's size and then upping it until I hit problems. When it reached 48K I got "Chunked encoding upload is not supported on the HTTP/1.0 protocol."

          Official Microsoft reason for the problems: You cannot disable HTTP chunked encoding in BizTalk Server 2004.

          Explanation: Microsoft BizTalk Server uses chunked encoding in HTTP transport when the message size is more than 48 KB. Sometimes, you may not want to use chunked encoding. For example, you may have to disable the chunked encoding when the other end of the HTTP transport cannot receive chunked encoding.

          Solution: Either stop production of files larger than 48K, or install Service Pack 2 and then make some amendments to the machine registry to enable larger files through —

          After you install the fix, you must add the DisableChunkEncoding registry value to disable chunked encoding for outbound requests and responses to inbound requests. The registry value is a DWORD type. To disable chunked encoding, set the registry value to 1. By default, the registry value is 0.

          For outbound requests, you must add this registry value under each registry key that matches this pattern:

          HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\BTSSvc{Host instance GUID}For inbound requests, you must add this registry value under the following registry key:

          HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\BTSSvc 3.0\HttpReceive

          This will obviosuly switch off chunk encoding rather than increase the 48k limit.

          This will obviosuly switch off chunk encoding rather than increase the 48k limit.

          As i said – good news is that it now works fine for large files!!

          blems: You cannot disable HTTP chunked encoding in BizTalk Server 2004.

          Explanation: Microsoft BizTalk Server uses chunked encoding in HTTP transport when the message size is more than 48 KB. Sometimes, you may not want to use chunked encoding. For example, you may have to disable the chunked encoding when the other end of the HTTP transport cannot receive chunked encoding.

          Solution: Either stop production of files larger than 48K, or install Service Pack 2 and then make some amendments to the machine registry to enable larger files through —

          After you install the fix, you must add the DisableChunkEncoding registry value to disable chunked encoding for outbound requests and responses to inbound requests. The registry value is a DWORD type. To disable chunked encoding, set the registry value to 1. By default, the registry value is 0.

          For outbound requests, you must add this registry value under each registry key that matches this pattern:

          HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\BTSSvc{Host instance GUID}For inbound requests, you must add this registry value under the following registry key:

          HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\BTSSvc 3.0\HttpReceive

          This will obviosuly switch off chunk encoding rather than increase the 48k limit.

          This will obviosuly switch off chunk encoding rather than increase the 48k limit.

          As i said – good news is that it now works fine for large files!!

Viewing 1 reply thread
  • The forum ‘BizTalk 2004 – BizTalk 2010’ is closed to new topics and replies.