[424949] Status panel of Web Services Explorer does not always display
SOAP envelopes correctly
diff --git a/bundles/org.eclipse.wst.ws.explorer/wsexplorer/wsdl/soap_envelope_xml.jsp b/bundles/org.eclipse.wst.ws.explorer/wsexplorer/wsdl/soap_envelope_xml.jsp
index 3beec90..c1c1085 100644
--- a/bundles/org.eclipse.wst.ws.explorer/wsexplorer/wsdl/soap_envelope_xml.jsp
+++ b/bundles/org.eclipse.wst.ws.explorer/wsexplorer/wsdl/soap_envelope_xml.jsp
@@ -1,34 +1,48 @@
<%
-/*******************************************************************************
- * Copyright (c) 2001, 2007 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- * yyyymmdd bug Email and other contact information
- * -------- -------- -----------------------------------------------------------
- * 20070413 176493 makandre@ca.ibm.com - Andrew Mak, WSE: Make message/transport stack pluggable
- *******************************************************************************/
-%><%@ page contentType="text/xml; charset=UTF-8" import="org.eclipse.wst.ws.internal.explorer.platform.wsdl.perspective.*,
+ /*******************************************************************************
+ * Copyright (c) 2001, 2014 IBM Corporation and others.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * IBM Corporation - initial API and implementation
+ * yyyymmdd bug Email and other contact information
+ * -------- -------- -----------------------------------------------------------
+ * 20070413 176493 makandre@ca.ibm.com - Andrew Mak, WSE: Make message/transport stack pluggable
+ *******************************************************************************/
+
+ String userAgent = request.getHeader("User-Agent");
+
+ // Safari has no native support for viewing raw XML, so display as plain text
+ if(userAgent != null && userAgent.contains("Safari")) {
+ response.setContentType("text/plain");
+ } else {
+ response.setContentType("text/xml");
+ }
+
+%><%@ page
+ import="org.eclipse.wst.ws.internal.explorer.platform.wsdl.perspective.*,
org.eclipse.wst.ws.internal.explorer.platform.wsdl.constants.*,
org.eclipse.wst.ws.internal.explorer.platform.wsdl.datamodel.WSDLOperationElement,
- org.eclipse.wst.ws.internal.explorer.transport.*" %><jsp:useBean id="controller" class="org.eclipse.wst.ws.internal.explorer.platform.perspective.Controller" scope="session"/><%
-int soapEnvelopeType = Integer.parseInt(request.getParameter(WSDLActionInputs.SOAP_ENVELOPE_TYPE));
-WSDLPerspective wsdlPerspective = controller.getWSDLPerspective();
-WSDLOperationElement operElement = (WSDLOperationElement) wsdlPerspective.getOperationNode().getTreeElement();
-ISOAPMessage soapMessage;
-switch (soapEnvelopeType)
-{
- case WSDLActionInputs.SOAP_ENVELOPE_TYPE_REQUEST:
- soapMessage = (ISOAPMessage) operElement.getPropertyAsObject(WSDLModelConstants.PROP_SOAP_REQUEST);
- break;
- case WSDLActionInputs.SOAP_ENVELOPE_TYPE_RESPONSE:
- default:
- soapMessage = (ISOAPMessage) operElement.getPropertyAsObject(WSDLModelConstants.PROP_SOAP_RESPONSE);
- break;
-}
-String messages = soapMessage.toXML();
-%><%=messages%>
+ org.eclipse.wst.ws.internal.explorer.transport.*"
+ %><jsp:useBean id="controller"
+ class="org.eclipse.wst.ws.internal.explorer.platform.perspective.Controller"
+ scope="session" /><%
+
+ int soapEnvelopeType = Integer.parseInt(request.getParameter(WSDLActionInputs.SOAP_ENVELOPE_TYPE));
+ WSDLPerspective wsdlPerspective = controller.getWSDLPerspective();
+ WSDLOperationElement operElement = (WSDLOperationElement) wsdlPerspective.getOperationNode().getTreeElement();
+ ISOAPMessage soapMessage;
+ switch (soapEnvelopeType) {
+ case WSDLActionInputs.SOAP_ENVELOPE_TYPE_REQUEST:
+ soapMessage = (ISOAPMessage) operElement.getPropertyAsObject(WSDLModelConstants.PROP_SOAP_REQUEST);
+ break;
+ case WSDLActionInputs.SOAP_ENVELOPE_TYPE_RESPONSE:
+ default:
+ soapMessage = (ISOAPMessage) operElement.getPropertyAsObject(WSDLModelConstants.PROP_SOAP_RESPONSE);
+ break;
+ }
+ String messages = soapMessage.toXML();
+%><%=messages%>
\ No newline at end of file