Hi,
I am implementing Livelink Webservices in PHP. Since the standard PHP stack does not support MTOM attachments, I use the WSO2/PHP framework to transfer large documents. This works fine for downloading files using the ContentService. With uploading douments I have an issue.
The first steps (authentication and obtaining a proper context ID) works fine, but the actual streaming fails. Because an initial test with SoapUI showed that it worked, I know that I send the correct information. Using Wireshark I looked at the differences and found out that the WSO2 software streams data with so-called chunked encoding. I found out that in SoapUI you can set a similar switch and then it also fails with SoapUI, at least I understand the process of the failure.
When I examine closely the TCP stream in Wireshark I see the error, it is a HTTP error code 411, missing Content-Length. But with chunked mode you don't have the length available in the HTTP header, so for some reason, it fails at the server side.
I can see the POST request arriving at the webserver, but I don't see the message appearing in the Tomcat logs or the Livelink webservices logs. I updated the NSAPI connector to the latest version, just to make sure it supportes chunked encoding.
My question (after this long introduction) is does Livelink webservices support chunked encoding? To me it is not obvious if chunked encoding is seen by the application or if this is dealt with between the webserver-tomcat or tomcat-application.
Can somebody test this with an Apache webserver? I only have a sunONE webserver and I have seen reports from developers saying that chunked encoding works fine on Apache, but not on sunONE.
Cheers,
Martin