You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-dev@axis.apache.org by di...@apache.org on 2005/09/05 08:03:12 UTC
svn commit: r278677 - in /webservices/axis/trunk/java/src/org/apache/axis:
Message.java deployment/wsdd/WSDDConstants.java
transport/http/AxisServlet.java
Author: dims
Date: Sun Sep 4 23:03:07 2005
New Revision: 278677
URL: http://svn.apache.org/viewcvs?rev=278677&view=rev
Log:
Extract action from content-Type (SOAP1.2)
Modified:
webservices/axis/trunk/java/src/org/apache/axis/Message.java
webservices/axis/trunk/java/src/org/apache/axis/deployment/wsdd/WSDDConstants.java
webservices/axis/trunk/java/src/org/apache/axis/transport/http/AxisServlet.java
Modified: webservices/axis/trunk/java/src/org/apache/axis/Message.java
URL: http://svn.apache.org/viewcvs/webservices/axis/trunk/java/src/org/apache/axis/Message.java?rev=278677&r1=278676&r2=278677&view=diff
==============================================================================
--- webservices/axis/trunk/java/src/org/apache/axis/Message.java (original)
+++ webservices/axis/trunk/java/src/org/apache/axis/Message.java Sun Sep 4 23:03:07 2005
@@ -320,6 +320,10 @@
int delimiterIndex = contentType.lastIndexOf("charset");
if (delimiterIndex > 0) {
String charsetPart = contentType.substring(delimiterIndex);
+ int delimiterIndex2 = charsetPart.indexOf(';');
+ if(delimiterIndex2 != -1){
+ charsetPart = charsetPart.substring(0, delimiterIndex2);
+ }
int charsetIndex = charsetPart.indexOf('=');
String charset = charsetPart.substring(charsetIndex + 1).trim();
if ((charset.startsWith("\"") || charset.startsWith("\'"))) {
Modified: webservices/axis/trunk/java/src/org/apache/axis/deployment/wsdd/WSDDConstants.java
URL: http://svn.apache.org/viewcvs/webservices/axis/trunk/java/src/org/apache/axis/deployment/wsdd/WSDDConstants.java?rev=278677&r1=278676&r2=278677&view=diff
==============================================================================
--- webservices/axis/trunk/java/src/org/apache/axis/deployment/wsdd/WSDDConstants.java (original)
+++ webservices/axis/trunk/java/src/org/apache/axis/deployment/wsdd/WSDDConstants.java Sun Sep 4 23:03:07 2005
@@ -163,6 +163,7 @@
public static final String ATTR_CLASSNAME = "classname";
public static final String ATTR_CLASS = "class";
public static final String ATTR_SOAPACTION = "soapAction";
+ public static final String ATTR_SOAP12ACTION = "action";
public static final String ATTR_MEP = "mep";
public static final String ATTR_INNER_TYPE = "innerType";
public static final String ATTR_INNER_NAME = "innerName";
Modified: webservices/axis/trunk/java/src/org/apache/axis/transport/http/AxisServlet.java
URL: http://svn.apache.org/viewcvs/webservices/axis/trunk/java/src/org/apache/axis/transport/http/AxisServlet.java?rev=278677&r1=278676&r2=278677&view=diff
==============================================================================
--- webservices/axis/trunk/java/src/org/apache/axis/transport/http/AxisServlet.java (original)
+++ webservices/axis/trunk/java/src/org/apache/axis/transport/http/AxisServlet.java Sun Sep 4 23:03:07 2005
@@ -991,6 +991,15 @@
*/
private String getSoapAction(HttpServletRequest req) throws AxisFault {
String soapAction = req.getHeader(HTTPConstants.HEADER_SOAP_ACTION);
+ if (soapAction == null) {
+ String contentType = req.getHeader(HTTPConstants.HEADER_CONTENT_TYPE);
+ if(contentType != null) {
+ int index = contentType.indexOf("action");
+ if(index != -1){
+ soapAction = contentType.substring(index + 7);
+ }
+ }
+ }
if (isDebug) {
log.debug("HEADER_SOAP_ACTION:" + soapAction);