#184 SOAP::Lite and Tibco

open
Byrne Reese
Protocol (8)
5
2013-04-12
2013-04-12
No

We are using SOAP::Lite (version 0.712) for sending events to some Event correlation system from a company called "Tibco".
Our script talks to a Apache tomcat-server which is part of Tibco software suite.

There is a problem with one of the HTTP-headers sent by SOAP::Lite, namely "Accept". SOAP::Lite creates this header as an array, wich produces multiple "Accept" headers:

Accept: text/xml
Accept: multipart/*
Accept: application/soap

Unfortunately that Tibco tomcat-server is not able to handle such multiple headers and throws an internal server error.

As a quick fix, i changed line 151 in SOAP/Transport/HTTP.pm from

Accept => ['text/xml', 'multipart/*', 'application/soap'] );
to
Accept => 'text/xml, multipart/*, application/soap' );

This produces just one "Accept:" header and Tibco tomcat is happy again.

I'm quite sure that i will not succeed by blaming Tibco for writing software which doesn't accept standard HTTP headers, so is there a chance my little fix could be integrated into SOAP::Lite "officially"?

Discussion