You are viewing a plain text version of this content. The canonical link for it is here.
Posted to axis-cvs@ws.apache.org by ke...@apache.org on 2007/03/30 13:30:22 UTC

svn commit: r524046 - in /webservices/axis2/branches/java/1_2/modules: codegen/src/org/apache/axis2/wsdl/codegen/emitter/ kernel/src/org/apache/axis2/ kernel/src/org/apache/axis2/description/ kernel/src/org/apache/axis2/transport/ samples/yahoorestsear...

Author: keithc
Date: Fri Mar 30 04:30:19 2007
New Revision: 524046

URL: http://svn.apache.org/viewvc?view=rev&rev=524046
Log:
Fixing yahoorestsearch sample.
Fixing transportUtils to handle response (Had to add a property the msgContext if the request is soap response)

Modified:
    webservices/axis2/branches/java/1_2/modules/codegen/src/org/apache/axis2/wsdl/codegen/emitter/AxisServiceBasedMultiLanguageEmitter.java
    webservices/axis2/branches/java/1_2/modules/kernel/src/org/apache/axis2/Constants.java
    webservices/axis2/branches/java/1_2/modules/kernel/src/org/apache/axis2/description/OutInAxisOperation.java
    webservices/axis2/branches/java/1_2/modules/kernel/src/org/apache/axis2/transport/TransportUtils.java
    webservices/axis2/branches/java/1_2/modules/samples/yahoorestsearch/src/sample/yahooservices/RESTSearch/RESTSearchModel.java

Modified: webservices/axis2/branches/java/1_2/modules/codegen/src/org/apache/axis2/wsdl/codegen/emitter/AxisServiceBasedMultiLanguageEmitter.java
URL: http://svn.apache.org/viewvc/webservices/axis2/branches/java/1_2/modules/codegen/src/org/apache/axis2/wsdl/codegen/emitter/AxisServiceBasedMultiLanguageEmitter.java?view=diff&rev=524046&r1=524045&r2=524046
==============================================================================
--- webservices/axis2/branches/java/1_2/modules/codegen/src/org/apache/axis2/wsdl/codegen/emitter/AxisServiceBasedMultiLanguageEmitter.java (original)
+++ webservices/axis2/branches/java/1_2/modules/codegen/src/org/apache/axis2/wsdl/codegen/emitter/AxisServiceBasedMultiLanguageEmitter.java Fri Mar 30 04:30:19 2007
@@ -2157,6 +2157,9 @@
                     "\"" +
                             org.apache.axis2.transport.http.HTTPConstants.MEDIA_TYPE_X_WWW_FORM +
                             "\""));
+            methodElement.appendChild(generateOptionParamComponent(doc,
+                    "org.apache.axis2.Constants.Configuration.SOAP_RESPONSE_MEP",
+                    "true"));
         } else if (bindingType != null && bindingType.equals(WSDL2Constants.URI_WSDL2_HTTP)) {
 
             methodElement.appendChild(generateOptionParamComponent(doc,

Modified: webservices/axis2/branches/java/1_2/modules/kernel/src/org/apache/axis2/Constants.java
URL: http://svn.apache.org/viewvc/webservices/axis2/branches/java/1_2/modules/kernel/src/org/apache/axis2/Constants.java?view=diff&rev=524046&r1=524045&r2=524046
==============================================================================
--- webservices/axis2/branches/java/1_2/modules/kernel/src/org/apache/axis2/Constants.java (original)
+++ webservices/axis2/branches/java/1_2/modules/kernel/src/org/apache/axis2/Constants.java Fri Mar 30 04:30:19 2007
@@ -320,5 +320,7 @@
          */
         public static final String MESSAGE_TYPE = "messageType";
 
+        public static final String SOAP_RESPONSE_MEP = "soapResponseMEP";
+
     }
 }

Modified: webservices/axis2/branches/java/1_2/modules/kernel/src/org/apache/axis2/description/OutInAxisOperation.java
URL: http://svn.apache.org/viewvc/webservices/axis2/branches/java/1_2/modules/kernel/src/org/apache/axis2/description/OutInAxisOperation.java?view=diff&rev=524046&r1=524045&r2=524046
==============================================================================
--- webservices/axis2/branches/java/1_2/modules/kernel/src/org/apache/axis2/description/OutInAxisOperation.java (original)
+++ webservices/axis2/branches/java/1_2/modules/kernel/src/org/apache/axis2/description/OutInAxisOperation.java Fri Mar 30 04:30:19 2007
@@ -337,7 +337,7 @@
 
         // Options object reused above so soapAction needs to be removed so
         // that soapAction+wsa:Action on response don't conflict
-        responseMessageContext.setSoapAction("");
+        responseMessageContext.setSoapAction(null);
 
         if (responseMessageContext.getEnvelope() == null) {
             // If request is REST we assume the responseMessageContext is REST, so

Modified: webservices/axis2/branches/java/1_2/modules/kernel/src/org/apache/axis2/transport/TransportUtils.java
URL: http://svn.apache.org/viewvc/webservices/axis2/branches/java/1_2/modules/kernel/src/org/apache/axis2/transport/TransportUtils.java?view=diff&rev=524046&r1=524045&r2=524046
==============================================================================
--- webservices/axis2/branches/java/1_2/modules/kernel/src/org/apache/axis2/transport/TransportUtils.java (original)
+++ webservices/axis2/branches/java/1_2/modules/kernel/src/org/apache/axis2/transport/TransportUtils.java Fri Mar 30 04:30:19 2007
@@ -113,6 +113,18 @@
             } else {
                 type = contentType;
             }
+            // Some services send REST responces as text/xml. We should convert it to
+            // application/xml if its a REST response, if not it will try to use the SOAPMessageBuilder.         
+            if (HTTPConstants.MEDIA_TYPE_TEXT_XML.equals(type)) {
+                if (msgContext.isServerSide()) {
+                    if (msgContext.getSoapAction() == null) {
+                        type = HTTPConstants.MEDIA_TYPE_APPLICATION_XML;
+                    }
+                } else if (msgContext.isDoingREST() && !JavaUtils.isTrueExplicitly(
+                        msgContext.getProperty(Constants.Configuration.SOAP_RESPONSE_MEP))) {
+                    type = HTTPConstants.MEDIA_TYPE_APPLICATION_XML;
+                }
+            }
             Builder builder = BuilderUtil.getBuilderFromSelector(type, msgContext);
             if (builder != null) {
                 documentElement = builder.processDocument(inStream, contentType, msgContext);

Modified: webservices/axis2/branches/java/1_2/modules/samples/yahoorestsearch/src/sample/yahooservices/RESTSearch/RESTSearchModel.java
URL: http://svn.apache.org/viewvc/webservices/axis2/branches/java/1_2/modules/samples/yahoorestsearch/src/sample/yahooservices/RESTSearch/RESTSearchModel.java?view=diff&rev=524046&r1=524045&r2=524046
==============================================================================
--- webservices/axis2/branches/java/1_2/modules/samples/yahoorestsearch/src/sample/yahooservices/RESTSearch/RESTSearchModel.java (original)
+++ webservices/axis2/branches/java/1_2/modules/samples/yahoorestsearch/src/sample/yahooservices/RESTSearch/RESTSearchModel.java Fri Mar 30 04:30:19 2007
@@ -47,7 +47,7 @@
     public String searchYahoo(String query, String format) {
         try {
             snippet = beginHTML;
-            String epr = "http://api.search.yahoo.com/WebSearchService/V1/webSearch";
+            String epr = "http://search.yahooapis.com/WebSearchService/V1/webSearch";
 
             ServiceClient client = new ServiceClient();
             Options options = new Options();
@@ -55,6 +55,7 @@
             options.setTo(new EndpointReference(epr));
             options.setProperty(Constants.Configuration.ENABLE_REST, Constants.VALUE_TRUE);
             options.setProperty(Constants.Configuration.HTTP_METHOD, Constants.Configuration.HTTP_METHOD_GET);
+	    options.setProperty(Constants.Configuration.MESSAGE_TYPE,org.apache.axis2.transport.http.HTTPConstants.MEDIA_TYPE_X_WWW_FORM);
 
             //if post is through GET of HTTP
             OMElement response = client.sendReceive(getPayloadForYahooSearchCall(query, format));



---------------------------------------------------------------------
To unsubscribe, e-mail: axis-cvs-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-cvs-help@ws.apache.org