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 ke...@apache.org on 2007/11/19 10:40:09 UTC
svn commit: r596234 - in
/webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2:
builder/XFormURLEncodedBuilder.java
dispatchers/HTTPLocationBasedDispatcher.java
Author: keithc
Date: Mon Nov 19 01:40:07 2007
New Revision: 596234
URL: http://svn.apache.org/viewvc?rev=596234&view=rev
Log:
Fixing some issues with REST. Updating dispatcher to work even if endpoint cannot be found from the request URL
Modified:
webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/builder/XFormURLEncodedBuilder.java
webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/dispatchers/HTTPLocationBasedDispatcher.java
Modified: webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/builder/XFormURLEncodedBuilder.java
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/builder/XFormURLEncodedBuilder.java?rev=596234&r1=596233&r2=596234&view=diff
==============================================================================
--- webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/builder/XFormURLEncodedBuilder.java (original)
+++ webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/builder/XFormURLEncodedBuilder.java Mon Nov 19 01:40:07 2007
@@ -307,7 +307,10 @@
}
private SOAPFactory getSOAPFactory(String nsURI) throws AxisFault {
- if (SOAP12Constants.SOAP_ENVELOPE_NAMESPACE_URI.equals(nsURI)) {
+ if (nsURI == null) {
+ return OMAbstractFactory.getSOAP12Factory();
+ }
+ else if (SOAP12Constants.SOAP_ENVELOPE_NAMESPACE_URI.equals(nsURI)) {
return OMAbstractFactory.getSOAP12Factory();
} else if (SOAP11Constants.SOAP_ENVELOPE_NAMESPACE_URI.equals(nsURI)) {
return OMAbstractFactory.getSOAP11Factory();
Modified: webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/dispatchers/HTTPLocationBasedDispatcher.java
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/dispatchers/HTTPLocationBasedDispatcher.java?rev=596234&r1=596233&r2=596234&view=diff
==============================================================================
--- webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/dispatchers/HTTPLocationBasedDispatcher.java (original)
+++ webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/dispatchers/HTTPLocationBasedDispatcher.java Mon Nov 19 01:40:07 2007
@@ -21,12 +21,15 @@
package org.apache.axis2.dispatchers;
import org.apache.axis2.AxisFault;
+import org.apache.axis2.Constants;
import org.apache.axis2.context.MessageContext;
import org.apache.axis2.description.AxisEndpoint;
import org.apache.axis2.description.AxisOperation;
import org.apache.axis2.description.AxisService;
import org.apache.axis2.description.HandlerDescription;
import org.apache.axis2.description.WSDL2Constants;
+import org.apache.axis2.description.AxisBinding;
+import org.apache.axis2.description.AxisBindingOperation;
import org.apache.axis2.engine.AbstractDispatcher;
import org.apache.axis2.transport.http.HTTPConstants;
import org.apache.commons.logging.Log;
@@ -81,8 +84,22 @@
Map httpLocationTable = (Map) endpoint.getBinding()
.getProperty(WSDL2Constants.HTTP_LOCATION_TABLE);
if (httpLocationTable != null) {
- return getOperationFromHTTPLocation(httpLocation,
- httpLocationTable);
+ AxisOperation axisOperation =
+ getOperationFromHTTPLocation(httpLocation,
+ httpLocationTable);
+ if (axisOperation != null) {
+ messageContext.setProperty(WSDL2Constants.ENDPOINT_LOCAL_NAME,
+ endpoint);
+ AxisBinding axisBinding = endpoint.getBinding();
+ if (axisBinding != null) {
+ AxisBindingOperation axisBindingOperation =
+ (AxisBindingOperation) axisBinding
+ .getChild(axisOperation.getName());
+ messageContext.setProperty(Constants.AXIS_BINDING_OPERATION,
+ axisBindingOperation);
+ return axisOperation;
+ }
+ }
}
}
}
---------------------------------------------------------------------
To unsubscribe, e-mail: axis-cvs-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-cvs-help@ws.apache.org