I guess only the Transport class can set the content_type. In fact, I see code in the setTransportProperty method that's supposed to let you set the content_type via a pointer to the Transport. Only thing is, this code is commented out.
Also, I don't see any code that actually *uses* the content_type value. So is the content type in axis output just hard-coded somewhere to "text/html"? If so, I don't see it anywhere. _____________________________________________ From: Yampolsky, Robert Sent: Wednesday, May 25, 2005 3:49 PM To: '[email protected]' Subject: Wrong content type for ?wsdl - mod_axis2.cpp always sets text/html on GET After some patching, I'm able to get axis 1.5 to send out wsdl from the wsdls directory. Only problem is it sends it out as content type "text/html", so Firefox tries to display it as HTML (interestingly, IE does not). Anyway, the culprit (I think) is this code snippet from src/server/apache2/mod_axis2.cpp: /* for SOAP 1.2 this this should be "application/soap+xml" but keep this for * the moment. */ req_rec->content_type = (M_POST == req_rec->method_number) ? "text/xml" : "text/html"; Looks like if the caller does a POST operation, axis sets the conten type to xml, otherwise sets it to html. No special test for a GET on service?wsdl. The wsdl handling is done out of process_request(), which is called just below this code. Process_request is passed in pTransport, which is constructed with the pointer to req_rec, so I guess it should be able to override the content type in there. Sound like something safe to do? R o b Y a m p o l s k y Harris Corporation [EMAIL PROTECTED] (212) 303 - 4250
