Hi there,
We provide some web services from WebSphere Portal 6.1.0.23 on RHEL 5.2 and one of the users has raised an issue to do with CR+LF characters in the SOAP headers. When there are attachments with long file names the resulting message seems to sometimes have the CR+LF characters within the file name. Here's an example:
Content-Type: application/octet-stream
Content-Transfer-Encoding: 8bit
Content-ID: 3610543@aaaaaaaaaa.aaa
Content-Disposition: attachment;
filename="This is a very long filename_this is still a very long
file.pdf"
Content-Length: 445688
Shorter filenames looks like:
Content-Type: application/octet-stream
Content-Transfer-Encoding: 8bit
Content-ID: 3610544@aaaaaaaaaa.aaa
Content-Disposition: attachment; filename="shortFileName.pdf"
Content-Length: 301175
As you can see, the version with a long file name has "x0d x0a x09" after "attachment; ", and has "x0d x0a" within the filename. Our own Test Web Service client seems to handle these characters without a problem, however one of our users' clients seems to have a issue with them. I've used WireShark to confirm that the characters really do exist in the message and are not an artifact created by the local webservice client.
I've been trying to find out if this is actually valid as a SOAP message or not, as if it is valid then the user needs to fix their client. If not we need to fix our webservice. I suspect they are using the line feed as a delimiter when retrieving the filename from the message.
Does anyone know if the above message fragment is valid with CR+LF in the filename line? I can't seem to find any resources that address the issue, so if anyone can help or point me in the right direction it would be much appreciated.
Thanks in advance,
Dave.C