Author: midon
Date: Thu Jun 26 19:28:24 2008
New Revision: 672084
URL: http://svn.apache.org/viewvc?rev=672084&view=rev
Log:
ODE-306: return the full MIMEContent object, not only the type
Modified:
ode/branches/APACHE_ODE_1.1/axis2/src/main/java/org/apache/ode/axis2/httpbinding/HttpBindingValidator.java
ode/branches/APACHE_ODE_1.1/axis2/src/main/java/org/apache/ode/axis2/httpbinding/HttpClientHelper.java
ode/branches/APACHE_ODE_1.1/utils/src/main/java/org/apache/ode/utils/wsdl/WsdlUtils.java
ode/branches/APACHE_ODE_1.1/utils/src/test/java/org/apache/ode/utils/wsdl/WsdlUtilsTest.java
Modified:
ode/branches/APACHE_ODE_1.1/axis2/src/main/java/org/apache/ode/axis2/httpbinding/HttpBindingValidator.java
URL:
http://svn.apache.org/viewvc/ode/branches/APACHE_ODE_1.1/axis2/src/main/java/org/apache/ode/axis2/httpbinding/HttpBindingValidator.java?rev=672084&r1=672083&r2=672084&view=diff
==============================================================================
---
ode/branches/APACHE_ODE_1.1/axis2/src/main/java/org/apache/ode/axis2/httpbinding/HttpBindingValidator.java
(original)
+++
ode/branches/APACHE_ODE_1.1/axis2/src/main/java/org/apache/ode/axis2/httpbinding/HttpBindingValidator.java
Thu Jun 26 19:28:24 2008
@@ -26,8 +26,8 @@
import javax.wsdl.BindingInput;
import javax.wsdl.BindingOperation;
import javax.wsdl.BindingOutput;
-import javax.wsdl.extensions.http.HTTPBinding;
import javax.wsdl.extensions.http.HTTPOperation;
+import javax.wsdl.extensions.mime.MIMEContent;
import java.util.Map;
import java.util.Set;
import java.util.Iterator;
@@ -76,8 +76,8 @@
BindingOutput output = bindingOperation.getBindingOutput();
- String outputContentType =
WsdlUtils.getMimeContentType(output.getExtensibilityElements());
- if (!outputContentType.endsWith("text/xml")) {
+ MIMEContent outputContent =
WsdlUtils.getMimeContent(output.getExtensibilityElements());
+ if (outputContent!=null &&
!outputContent.getType().endsWith("text/xml")) {
throw new
IllegalArgumentException(httpMsgs.msgUnsupportedContentType(binding,
bindingOperation));
}
@@ -87,7 +87,6 @@
}
BindingInput input = bindingOperation.getBindingInput();
- String inputContentType =
WsdlUtils.getMimeContentType(input.getExtensibilityElements());
// multipartRelated not supported
if (WsdlUtils.useMimeMultipartRelated(input)) {
@@ -95,7 +94,9 @@
}
// only 2 content-types supported
- if (inputContentType != null) {
+ MIMEContent inputContent=
WsdlUtils.getMimeContent(input.getExtensibilityElements());
+ if (inputContent != null) {
+ String inputContentType = inputContent.getType();
if (!inputContentType.endsWith("text/xml") &&
!PostMethod.FORM_URL_ENCODED_CONTENT_TYPE.equalsIgnoreCase(inputContentType)) {
throw new
IllegalArgumentException(httpMsgs.msgUnsupportedContentType(binding,
bindingOperation));
}
Modified:
ode/branches/APACHE_ODE_1.1/axis2/src/main/java/org/apache/ode/axis2/httpbinding/HttpClientHelper.java
URL:
http://svn.apache.org/viewvc/ode/branches/APACHE_ODE_1.1/axis2/src/main/java/org/apache/ode/axis2/httpbinding/HttpClientHelper.java?rev=672084&r1=672083&r2=672084&view=diff
==============================================================================
---
ode/branches/APACHE_ODE_1.1/axis2/src/main/java/org/apache/ode/axis2/httpbinding/HttpClientHelper.java
(original)
+++
ode/branches/APACHE_ODE_1.1/axis2/src/main/java/org/apache/ode/axis2/httpbinding/HttpClientHelper.java
Thu Jun 26 19:28:24 2008
@@ -55,6 +55,7 @@
import javax.wsdl.Operation;
import javax.wsdl.Part;
import javax.wsdl.extensions.http.HTTPOperation;
+import javax.wsdl.extensions.mime.MIMEContent;
import javax.xml.namespace.QName;
import java.io.UnsupportedEncodingException;
import java.util.HashMap;
@@ -136,7 +137,8 @@
// convenience variables...
BindingInput bindingInput = bindingOperation.getBindingInput();
HTTPOperation httpOperation = (HTTPOperation)
WsdlUtils.getOperationExtension(bindingOperation);
- String contentType =
WsdlUtils.getMimeContentType(bindingInput.getExtensibilityElements());
+ MIMEContent content =
WsdlUtils.getMimeContent(bindingInput.getExtensibilityElements());
+ String contentType = content == null ? "" : content.getType();
boolean useUrlEncoded = WsdlUtils.useUrlEncoded(bindingInput) ||
PostMethod.FORM_URL_ENCODED_CONTENT_TYPE.equalsIgnoreCase(contentType);
boolean useUrlReplacement = WsdlUtils.useUrlReplacement(bindingInput);
Modified:
ode/branches/APACHE_ODE_1.1/utils/src/main/java/org/apache/ode/utils/wsdl/WsdlUtils.java
URL:
http://svn.apache.org/viewvc/ode/branches/APACHE_ODE_1.1/utils/src/main/java/org/apache/ode/utils/wsdl/WsdlUtils.java?rev=672084&r1=672083&r2=672084&view=diff
==============================================================================
---
ode/branches/APACHE_ODE_1.1/utils/src/main/java/org/apache/ode/utils/wsdl/WsdlUtils.java
(original)
+++
ode/branches/APACHE_ODE_1.1/utils/src/main/java/org/apache/ode/utils/wsdl/WsdlUtils.java
Thu Jun 26 19:28:24 2008
@@ -220,7 +220,7 @@
* contained in the extensibility element list. Or null if none.
* @throws IllegalArgumentException if more than 1 MIMEContent is found.
*/
- public static String getMimeContentType(List extensibilityElements) {
+ public static MIMEContent getMimeContent(List extensibilityElements) {
Collection<MIMEContent> coll =
CollectionsX.filter(extensibilityElements, MIMEContent.class);
if (coll.size() == 0) {
return null;
@@ -229,8 +229,7 @@
throw new IllegalArgumentException(msgs.msgMultipleMimeContent());
} else {
// retrieve the single element
- MIMEContent mimeContent = coll.iterator().next();
- return mimeContent.getType();
+ return coll.iterator().next();
}
}
Modified:
ode/branches/APACHE_ODE_1.1/utils/src/test/java/org/apache/ode/utils/wsdl/WsdlUtilsTest.java
URL:
http://svn.apache.org/viewvc/ode/branches/APACHE_ODE_1.1/utils/src/test/java/org/apache/ode/utils/wsdl/WsdlUtilsTest.java?rev=672084&r1=672083&r2=672084&view=diff
==============================================================================
---
ode/branches/APACHE_ODE_1.1/utils/src/test/java/org/apache/ode/utils/wsdl/WsdlUtilsTest.java
(original)
+++
ode/branches/APACHE_ODE_1.1/utils/src/test/java/org/apache/ode/utils/wsdl/WsdlUtilsTest.java
Thu Jun 26 19:28:24 2008
@@ -194,12 +194,12 @@
public void testGetMimeContentType() {
Binding binding = definition.getBinding(new
QName("http://axis2.ode.apache.org", "DummyServiceHttpBinding"));
BindingOperation operation = binding.getBindingOperation("hello",
null, null);
- String mimeContentType =
WsdlUtils.getMimeContentType(operation.getBindingInput().getExtensibilityElements());
+ String mimeContentType =
WsdlUtils.getMimeContent(operation.getBindingInput().getExtensibilityElements()).getType();
assertEquals("text/xml", mimeContentType);
binding = definition.getBinding(new
QName("http://axis2.ode.apache.org", "DummyServiceSOAP11Binding"));
operation = binding.getBindingOperation("hello", null, null);
- mimeContentType =
WsdlUtils.getMimeContentType(operation.getBindingInput().getExtensibilityElements());
+ mimeContentType =
WsdlUtils.getMimeContent(operation.getBindingInput().getExtensibilityElements()).getType();
assertNull(mimeContentType);