cxf-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From dk...@apache.org
Subject svn commit: r831917 - in /cxf/branches/2.2.x-fixes: ./ rt/javascript/src/main/java/org/apache/cxf/javascript/service/ rt/javascript/src/test/java/org/apache/cxf/javascript/ rt/javascript/src/test/java/org/apache/cxf/javascript/fortest/ rt/javascript/sr...
Date Mon, 02 Nov 2009 15:22:52 GMT
Author: dkulp
Date: Mon Nov  2 15:22:51 2009
New Revision: 831917

URL: http://svn.apache.org/viewvc?rev=831917&view=rev
Log:
Merged revisions 831688 via svnmerge from 
https://svn.apache.org/repos/asf/cxf/trunk

........
  r831688 | bimargulies | 2009-11-01 10:43:30 -0500 (Sun, 01 Nov 2009) | 1 line
  
  CXF-2513. Javascript generated code has to ignore env:Header (and anything else that shows
up ahead of env:Body).
........

Modified:
    cxf/branches/2.2.x-fixes/   (props changed)
    cxf/branches/2.2.x-fixes/rt/javascript/src/main/java/org/apache/cxf/javascript/service/ServiceJavascriptBuilder.java
    cxf/branches/2.2.x-fixes/rt/javascript/src/test/java/org/apache/cxf/javascript/DocLitWrappedClientTest.java
    cxf/branches/2.2.x-fixes/rt/javascript/src/test/java/org/apache/cxf/javascript/fortest/SimpleDocLitWrapped.java
    cxf/branches/2.2.x-fixes/rt/javascript/src/test/java/org/apache/cxf/javascript/fortest/SimpleDocLitWrappedImpl.java
    cxf/branches/2.2.x-fixes/rt/javascript/src/test/resources/org/apache/cxf/javascript/DocLitWrappedTests.js

Propchange: cxf/branches/2.2.x-fixes/
            ('svn:mergeinfo' removed)

Propchange: cxf/branches/2.2.x-fixes/
------------------------------------------------------------------------------
Binary property 'svnmerge-integrated' - no diff available.

Modified: cxf/branches/2.2.x-fixes/rt/javascript/src/main/java/org/apache/cxf/javascript/service/ServiceJavascriptBuilder.java
URL: http://svn.apache.org/viewvc/cxf/branches/2.2.x-fixes/rt/javascript/src/main/java/org/apache/cxf/javascript/service/ServiceJavascriptBuilder.java?rev=831917&r1=831916&r2=831917&view=diff
==============================================================================
--- cxf/branches/2.2.x-fixes/rt/javascript/src/main/java/org/apache/cxf/javascript/service/ServiceJavascriptBuilder.java
(original)
+++ cxf/branches/2.2.x-fixes/rt/javascript/src/main/java/org/apache/cxf/javascript/service/ServiceJavascriptBuilder.java
Mon Nov  2 15:22:51 2009
@@ -468,6 +468,14 @@
                 utils.appendLine("element = this.jsutils.getFirstElementChild(element);");
                 utils.appendLine("this.jsutils.trace('first element child: ' "
                                  + "+ this.jsutils.traceElementName(element));");
+                // loop to find the body.
+                utils.startWhile("!this.jsutils.isNodeNamedNS(element, "
+                                 + "'http://schemas.xmlsoap.org/soap/envelope/', 'Body')");
+                utils.appendLine("element = this.jsutils.getNextElementSibling(element);");
+                utils.startIf("element == null");
+                utils.appendLine("throw 'No env:Body in message.'");
+                utils.endBlock();
+                utils.endBlock();
                 // Go down one more from the body to the response item.
                 utils.appendLine("element = this.jsutils.getFirstElementChild(element);");
                 utils.appendLine("this.jsutils.trace('part element: ' "

Modified: cxf/branches/2.2.x-fixes/rt/javascript/src/test/java/org/apache/cxf/javascript/DocLitWrappedClientTest.java
URL: http://svn.apache.org/viewvc/cxf/branches/2.2.x-fixes/rt/javascript/src/test/java/org/apache/cxf/javascript/DocLitWrappedClientTest.java?rev=831917&r1=831916&r2=831917&view=diff
==============================================================================
--- cxf/branches/2.2.x-fixes/rt/javascript/src/test/java/org/apache/cxf/javascript/DocLitWrappedClientTest.java
(original)
+++ cxf/branches/2.2.x-fixes/rt/javascript/src/test/java/org/apache/cxf/javascript/DocLitWrappedClientTest.java
Mon Nov  2 15:22:51 2009
@@ -140,6 +140,37 @@
     }
     
     @Test
+    public void callFunctionWithHeader() {
+        testUtilities.runInsideContext(Void.class, new JSRunnable<Void>() {
+
+            public Void run(Context context) {
+                LOG.info("About to call testDummyHeader " + getAddress());
+                Notifier notifier = 
+                    testUtilities.rhinoCallConvert("testDummyHeader", Notifier.class, 
+                                                   testUtilities.javaToJS(getAddress()),

+                                                   testUtilities.javaToJS("narcissus"),
+                                                   null);
+                boolean notified = notifier.waitForJavascript(1000 * 10);
+                assertTrue(notified);
+                Integer errorStatus = testUtilities.rhinoEvaluateConvert("globalErrorStatus",
Integer.class);
+                assertNull(errorStatus);
+                String errorText = testUtilities.rhinoEvaluateConvert("globalErrorStatusText",
String.class);
+                assertNull(errorText);
+
+                Scriptable responseObject = (Scriptable)testUtilities.rhinoEvaluate("globalResponseObject");
+                assertNotNull(responseObject);
+                // by default, for doc/lit/wrapped, we end up with a part object with a slot
named 
+                // 'return'.
+                String returnValue = testUtilities.rhinoCallMethodInContext(String.class,
responseObject,
+                                                                             "getReturn");
+                assertEquals("narcissus", returnValue);
+                return null;
+            }
+            
+        });
+    }
+    
+    @Test
     public void callIntReturnMethod() {
         testUtilities.runInsideContext(Void.class, new JSRunnable<Void>() {
             public Void run(Context context) {

Modified: cxf/branches/2.2.x-fixes/rt/javascript/src/test/java/org/apache/cxf/javascript/fortest/SimpleDocLitWrapped.java
URL: http://svn.apache.org/viewvc/cxf/branches/2.2.x-fixes/rt/javascript/src/test/java/org/apache/cxf/javascript/fortest/SimpleDocLitWrapped.java?rev=831917&r1=831916&r2=831917&view=diff
==============================================================================
--- cxf/branches/2.2.x-fixes/rt/javascript/src/test/java/org/apache/cxf/javascript/fortest/SimpleDocLitWrapped.java
(original)
+++ cxf/branches/2.2.x-fixes/rt/javascript/src/test/java/org/apache/cxf/javascript/fortest/SimpleDocLitWrapped.java
Mon Nov  2 15:22:51 2009
@@ -52,6 +52,9 @@
     TestBean1 functionReturnTestBean1();
     
     @WebMethod
+    String echoWithHeader(@WebParam(name = "what") String what);
+    
+    @WebMethod
     int basicTypeFunctionReturnInt(@WebParam(name = "s") String s, 
                                    @WebParam(name = "i") int i, 
                                    @WebParam(name = "l") long l, 

Modified: cxf/branches/2.2.x-fixes/rt/javascript/src/test/java/org/apache/cxf/javascript/fortest/SimpleDocLitWrappedImpl.java
URL: http://svn.apache.org/viewvc/cxf/branches/2.2.x-fixes/rt/javascript/src/test/java/org/apache/cxf/javascript/fortest/SimpleDocLitWrappedImpl.java?rev=831917&r1=831916&r2=831917&view=diff
==============================================================================
--- cxf/branches/2.2.x-fixes/rt/javascript/src/test/java/org/apache/cxf/javascript/fortest/SimpleDocLitWrappedImpl.java
(original)
+++ cxf/branches/2.2.x-fixes/rt/javascript/src/test/java/org/apache/cxf/javascript/fortest/SimpleDocLitWrappedImpl.java
Mon Nov  2 15:22:51 2009
@@ -19,7 +19,17 @@
 
 package org.apache.cxf.javascript.fortest;
 
+import java.util.ArrayList;
+import java.util.List;
+
+import javax.annotation.Resource;
 import javax.jws.WebService;
+import javax.xml.bind.JAXBException;
+import javax.xml.namespace.QName;
+import javax.xml.ws.WebServiceContext;
+
+import org.apache.cxf.headers.Header;
+import org.apache.cxf.jaxb.JAXBDataBinding;
 
 /**
  * 
@@ -28,6 +38,8 @@
             targetNamespace = "uri:org.apache.cxf.javascript.fortest")
 public class SimpleDocLitWrappedImpl implements SimpleDocLitWrapped {
     
+    @Resource
+    private WebServiceContext context;
     private String lastString;
     private int lastInt;
     private long lastLong;
@@ -38,6 +50,20 @@
     private SpecificGenericClass lastSpecificGeneric;
     private GenericGenericClass<Double> lastGenericGeneric;
     private InheritanceTestDerived lastInheritanceTestDerived;
+    
+    public String echoWithHeader(String what) {
+        List<Header> headers = new ArrayList<Header>();
+        Header dummyHeader;
+        try {
+            dummyHeader = new Header(new QName("uri:org.apache.cxf", "dummy"), "decapitated",
+                                            new JAXBDataBinding(String.class));
+        } catch (JAXBException e) {
+            throw new RuntimeException(e);
+        }
+        headers.add(dummyHeader);
+        context.getMessageContext().put(Header.HEADER_LIST, headers);
+        return what;
+    }
 
     /** {@inheritDoc}*/
     public int basicTypeFunctionReturnInt(String s, int i, long l, float f, double d) {

Modified: cxf/branches/2.2.x-fixes/rt/javascript/src/test/resources/org/apache/cxf/javascript/DocLitWrappedTests.js
URL: http://svn.apache.org/viewvc/cxf/branches/2.2.x-fixes/rt/javascript/src/test/resources/org/apache/cxf/javascript/DocLitWrappedTests.js?rev=831917&r1=831916&r2=831917&view=diff
==============================================================================
--- cxf/branches/2.2.x-fixes/rt/javascript/src/test/resources/org/apache/cxf/javascript/DocLitWrappedTests.js
(original)
+++ cxf/branches/2.2.x-fixes/rt/javascript/src/test/resources/org/apache/cxf/javascript/DocLitWrappedTests.js
Mon Nov  2 15:22:51 2009
@@ -134,4 +134,18 @@
 	intf.inheritanceTestFunction(test1SuccessCallback, test1ErrorCallback, derived);
 
 	return globalNotifier;
+}
+
+function testDummyHeader(url, stringArg) 
+{
+	org_apache_cxf_trace.trace("Enter testDummyHeader.");
+	resetGlobals();
+	globalNotifier = new org_apache_cxf_notifier();
+	
+	var intf = new org_apache_cxf_javascript_fortest_SimpleDocLitWrapped();
+	intf.url = url;
+	// param order from the interface
+	intf.echoWithHeader(test1SuccessCallback, test1ErrorCallback, stringArg);
+    // Return the notifier as a convenience to the Java code.
+	return globalNotifier;
 }
\ No newline at end of file



Mime
View raw message