[ http://issues.apache.org/jira/browse/AXISCPP-609?page=all ]
Bernd Weber updated AXISCPP-609:
--------------------------------
Attachment: axis_transport_diff.zip
Hi Frank & Samisa,
I attached axis_transport_diff.zip containing the changed sources and a diff
file. The sources now contain the ASCII char defines, so they are ready-to-use.
The changes are a lot. The main things:
- Bugfix receiving two HTTP headers (100 and another one) in the same buffer.
- Hopefully bugfix "Missing some bytes randomly" due to using the chunk sizes
to find the beginning of the next chunk.
- Redesign of classes HTTPTransport and HTTPChannel and some new ones for
readability reasons.
Reading in the whole message before it is passed back for processing may be a
disadvantage, but I think the time needed to process the received XML is so
little, that there is only to discuss the point of returning control back to
the user while waiting for the next chunk, which should be done by a separate
thread in my opinion. Another aspect is that currently Axis only supports the
Sax parser. But if received data is of reference type, it can only be parsed
using DOM, and therefore the whole message must be read in before parsing can
be done. So I think that disadvantage is acceptable. But of course you're free
to adjust these classes to read in only the actually received message parts.
> Multi chunked http responses miss some bytes randomly
> -----------------------------------------------------
>
> Key: AXISCPP-609
> URL: http://issues.apache.org/jira/browse/AXISCPP-609
> Project: Axis-C++
> Type: Bug
> Components: Transport (axis3)
> Versions: unspecified
> Environment: The issue is not specific of a particular environment
> Reporter: Arcangelo Di Balsamo
> Attachments: HTTPTransport.cpp, HTTPTransport.cpp, HTTPTransport.cpp,
> HTTPTransport.cpp, HTTPTransport.cpp, HTTPTransport.dll, HTTPTransport.hpp,
> HTTPTransport.zip, axis-c-1-5_transport.zip, axis_transport_diff.zip
>
> Multi chunked http responses miss some bytes randomly.
> The issue is partially related to the AXISCPP-518 reported by myself too.
> The bug is in the getBytes method of HTTPTransport class.
> I made a tentative fix, that I've deeply tested.
> In the fix I did, I've changed a little bit the implementation logic.
> Splitting the getBytes method in more methods should be a nice to have.
> I'm attaching the modified file.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
http://www.atlassian.com/software/jira