Author: dkulp
Date: Tue May  9 15:03:29 2006
New Revision: 405552

URL: http://svn.apache.org/viewcvs?rev=405552&view=rev
Log:
Initial server side code for Celtix binding (for standalone/non-tomcat mode).  
Basic "helloworld" stuff works.



Added:
    
incubator/tuscany/java/sca/bindings/binding.celtix/src/main/java/org/apache/tuscany/binding/celtix/handler/CeltixEntryPointContextImpl.java
   (with props)
    
incubator/tuscany/java/sca/bindings/binding.celtix/src/main/java/org/apache/tuscany/binding/celtix/handler/io/SCAServerDataBindingCallback.java
   (with props)
Modified:
    
incubator/tuscany/java/sca/bindings/binding.celtix/src/main/java/org/apache/tuscany/binding/celtix/builder/WebServiceEntryPointBuilder.java
    
incubator/tuscany/java/sca/bindings/binding.celtix/src/main/java/org/apache/tuscany/binding/celtix/config/WebServiceEntryPointContextFactory.java
    
incubator/tuscany/java/sca/bindings/binding.celtix/src/main/java/org/apache/tuscany/binding/celtix/handler/io/NodeDataReader.java
    
incubator/tuscany/java/sca/bindings/binding.celtix/src/main/java/org/apache/tuscany/binding/celtix/handler/io/NodeDataWriter.java
    
incubator/tuscany/java/sca/bindings/binding.celtix/src/main/java/org/apache/tuscany/binding/celtix/handler/io/SCADataBindingCallback.java
    
incubator/tuscany/java/sca/bindings/binding.celtix/src/test/java/org/apache/tuscany/binding/celtix/handler/io/NodeDataWriterTestCase.java

Modified: 
incubator/tuscany/java/sca/bindings/binding.celtix/src/main/java/org/apache/tuscany/binding/celtix/builder/WebServiceEntryPointBuilder.java
URL: 
http://svn.apache.org/viewcvs/incubator/tuscany/java/sca/bindings/binding.celtix/src/main/java/org/apache/tuscany/binding/celtix/builder/WebServiceEntryPointBuilder.java?rev=405552&r1=405551&r2=405552&view=diff
==============================================================================
--- 
incubator/tuscany/java/sca/bindings/binding.celtix/src/main/java/org/apache/tuscany/binding/celtix/builder/WebServiceEntryPointBuilder.java
 (original)
+++ 
incubator/tuscany/java/sca/bindings/binding.celtix/src/main/java/org/apache/tuscany/binding/celtix/builder/WebServiceEntryPointBuilder.java
 Tue May  9 15:03:29 2006
@@ -20,6 +20,8 @@
 import org.apache.tuscany.core.extension.EntryPointBuilderSupport;
 import org.apache.tuscany.core.extension.EntryPointContextFactory;
 import org.apache.tuscany.core.message.MessageFactory;
+import org.apache.tuscany.core.system.annotation.Autowire;
+import org.apache.tuscany.core.webapp.ServletHost;
 import org.apache.tuscany.model.assembly.EntryPoint;
 import org.osoa.sca.annotations.Scope;
 
@@ -30,9 +32,16 @@
  */
 @Scope("MODULE")
 public class WebServiceEntryPointBuilder extends 
EntryPointBuilderSupport<WebServiceBinding> {
+    ServletHost tomcatHost;
+    
+    @Autowire
+    public void setTomcatHost(ServletHost tomcatHost) {
+        this.tomcatHost = tomcatHost;
+    }
 
+    
     protected EntryPointContextFactory 
createEntryPointContextFactory(EntryPoint entryPoint,
                                                                       
MessageFactory msgFactory) {
-        return new WebServiceEntryPointContextFactory(entryPoint.getName(), 
msgFactory);
+        return new WebServiceEntryPointContextFactory(tomcatHost, entryPoint, 
msgFactory);
     }
 }

Modified: 
incubator/tuscany/java/sca/bindings/binding.celtix/src/main/java/org/apache/tuscany/binding/celtix/config/WebServiceEntryPointContextFactory.java
URL: 
http://svn.apache.org/viewcvs/incubator/tuscany/java/sca/bindings/binding.celtix/src/main/java/org/apache/tuscany/binding/celtix/config/WebServiceEntryPointContextFactory.java?rev=405552&r1=405551&r2=405552&view=diff
==============================================================================
--- 
incubator/tuscany/java/sca/bindings/binding.celtix/src/main/java/org/apache/tuscany/binding/celtix/config/WebServiceEntryPointContextFactory.java
 (original)
+++ 
incubator/tuscany/java/sca/bindings/binding.celtix/src/main/java/org/apache/tuscany/binding/celtix/config/WebServiceEntryPointContextFactory.java
 Tue May  9 15:03:29 2006
@@ -16,8 +16,13 @@
  */
 package org.apache.tuscany.binding.celtix.config;
 
+import org.apache.tuscany.binding.celtix.handler.CeltixEntryPointContextImpl;
+import org.apache.tuscany.core.builder.ContextCreationException;
+import org.apache.tuscany.core.context.EntryPointContext;
 import org.apache.tuscany.core.extension.EntryPointContextFactory;
 import org.apache.tuscany.core.message.MessageFactory;
+import org.apache.tuscany.core.webapp.ServletHost;
+import org.apache.tuscany.model.assembly.EntryPoint;
 
 /**
  * Creates instances of [EMAIL PROTECTED] 
org.apache.tuscany.core.context.EntryPointContext} configured with the
@@ -26,9 +31,28 @@
  * @version $Rev$ $Date$
  */
 public class WebServiceEntryPointContextFactory extends 
EntryPointContextFactory {
-
-    public WebServiceEntryPointContextFactory(String name, MessageFactory 
messageFactory) {
-        super(name, messageFactory);
+    MessageFactory messageFactory;
+    EntryPoint entryPoint;
+    ServletHost servlet;
+    
+    public WebServiceEntryPointContextFactory(ServletHost tomcatHost,
+                                            EntryPoint entryPoint,
+                                            MessageFactory mf) {
+        super(entryPoint.getName(), mf);
+        messageFactory = mf;
+        this.entryPoint = entryPoint;
+        servlet = tomcatHost;
+    }
+    
+    public EntryPointContext createContext() throws ContextCreationException {
+        if (servlet == null) {
+            return new CeltixEntryPointContextImpl(entryPoint,
+                                               getSourceWireFactories().get(0),
+                                               messageFactory);
+        } else {
+            //REVISIT - running in tomcat
+            return null;
+        }
     }
 
 }

Added: 
incubator/tuscany/java/sca/bindings/binding.celtix/src/main/java/org/apache/tuscany/binding/celtix/handler/CeltixEntryPointContextImpl.java
URL: 
http://svn.apache.org/viewcvs/incubator/tuscany/java/sca/bindings/binding.celtix/src/main/java/org/apache/tuscany/binding/celtix/handler/CeltixEntryPointContextImpl.java?rev=405552&view=auto
==============================================================================
--- 
incubator/tuscany/java/sca/bindings/binding.celtix/src/main/java/org/apache/tuscany/binding/celtix/handler/CeltixEntryPointContextImpl.java
 (added)
+++ 
incubator/tuscany/java/sca/bindings/binding.celtix/src/main/java/org/apache/tuscany/binding/celtix/handler/CeltixEntryPointContextImpl.java
 Tue May  9 15:03:29 2006
@@ -0,0 +1,245 @@
+package org.apache.tuscany.binding.celtix.handler;
+
+import java.lang.reflect.Method;
+import java.net.MalformedURLException;
+import java.net.URL;
+import java.util.Iterator;
+import java.util.List;
+import java.util.Map;
+import java.util.concurrent.ConcurrentHashMap;
+import java.util.concurrent.Executor;
+
+import javax.jws.soap.SOAPBinding.Style;
+import javax.wsdl.Binding;
+import javax.wsdl.BindingInput;
+import javax.wsdl.BindingOperation;
+import javax.wsdl.Definition;
+import javax.wsdl.Port;
+import javax.wsdl.extensions.ExtensibilityElement;
+import javax.wsdl.extensions.soap.SOAPAddress;
+import javax.wsdl.extensions.soap.SOAPBody;
+import javax.xml.namespace.QName;
+import javax.xml.ws.WebServiceProvider;
+
+import commonj.sdo.helper.TypeHelper;
+
+import org.apache.tuscany.binding.celtix.assembly.WebServiceBinding;
+import 
org.apache.tuscany.binding.celtix.handler.io.SCAServerDataBindingCallback;
+import org.apache.tuscany.core.builder.BuilderConfigException;
+import org.apache.tuscany.core.context.ContextInitException;
+import org.apache.tuscany.core.context.CoreRuntimeException;
+import org.apache.tuscany.core.context.impl.EntryPointContextImpl;
+import org.apache.tuscany.core.message.MessageFactory;
+import org.apache.tuscany.core.wire.SourceWireFactory;
+import org.apache.tuscany.model.assembly.EntryPoint;
+import org.objectweb.celtix.Bus;
+import org.objectweb.celtix.bindings.DataBindingCallback;
+import org.objectweb.celtix.bindings.ServerBinding;
+import org.objectweb.celtix.bindings.ServerBindingEndpointCallback;
+import org.objectweb.celtix.bindings.ServerDataBindingCallback;
+import org.objectweb.celtix.bus.bindings.WSDLMetaDataCache;
+import org.objectweb.celtix.bus.bindings.WSDLOperationInfo;
+import org.objectweb.celtix.context.ObjectMessageContext;
+import org.objectweb.celtix.ws.addressing.AttributedURIType;
+import org.objectweb.celtix.ws.addressing.EndpointReferenceType;
+import org.objectweb.celtix.wsdl.EndpointReferenceUtils;
+import org.osoa.sca.annotations.Destroy;
+import org.xmlsoap.schemas.wsdl.http.AddressType;
+
+public class CeltixEntryPointContextImpl extends EntryPointContextImpl
+    implements ServerBindingEndpointCallback {
+    
+    EntryPoint entry;
+    private Bus bus;
+    private Port port;
+    private TypeHelper typeHelper;
+    private WSDLMetaDataCache wsdlCache;
+    private ServerBinding serverBinding;
+    private Object entryPointProxy;
+    
+    private Map<QName, ServerDataBindingCallback> opMap = 
+        new ConcurrentHashMap<QName, ServerDataBindingCallback>(); 
+
+    
+    public CeltixEntryPointContextImpl(EntryPoint entry,
+                                       SourceWireFactory sourceWireFactory,
+                                       MessageFactory messageFactory)
+        throws ContextInitException {
+        
+        super(entry.getName(), sourceWireFactory, messageFactory);
+        this.entry = entry;
+    }
+
+    public void start() throws ContextInitException {
+        // TODO Auto-generated method stub
+        super.start();
+        System.out.println("In start");
+        
+        entryPointProxy = getInstance(null);
+        WebServiceBinding wsBinding = 
(WebServiceBinding)entry.getBindings().get(0);
+        bus = wsBinding.getBus();
+        typeHelper = wsBinding.getTypeHelper();
+        Definition wsdlDef = wsBinding.getWSDLDefinition();
+        port = wsBinding.getWSDLPort();
+        wsdlCache = new WSDLMetaDataCache(wsdlDef, wsBinding.getWSDLPort());
+        
+        initOperationMap(wsdlDef);
+        
+        String key = wsdlDef.getDocumentBaseURI();
+        URL url;
+        try {
+            url = new URL(key);
+        } catch (MalformedURLException e) {
+            throw new ContextInitException(e);
+        }
+
+        EndpointReferenceType reference = 
EndpointReferenceUtils.getEndpointReference(url,
+                wsBinding.getWSDLService().getQName(),
+                wsBinding.getWSDLPort().getName());
+        
+        AttributedURIType address = new AttributedURIType();
+
+        String bindingId = null;
+        Binding binding = wsBinding.getWSDLPort().getBinding();
+        if (null != binding) {
+            List list = binding.getExtensibilityElements();
+            if (!list.isEmpty()) {
+                bindingId = 
((ExtensibilityElement)list.get(0)).getElementType().getNamespaceURI();
+            }
+        }
+        List<?> list = wsBinding.getWSDLPort().getExtensibilityElements();
+        for (Object ep : list) {
+            ExtensibilityElement ext = (ExtensibilityElement)ep;
+            if (ext instanceof SOAPAddress) {
+                if (bindingId == null) {
+                    bindingId = ((SOAPAddress)ext).getLocationURI();
+                }
+                address.setValue(((SOAPAddress)ext).getLocationURI());
+            }
+            if (ext instanceof AddressType) {
+                if (bindingId == null) {
+                    bindingId = ((AddressType)ext).getLocation();
+                }
+                address.setValue(((AddressType)ext).getLocation());
+            }
+        }
+        if (reference.getAddress() == null) {
+            //REVIST - bug in Celtix that the HTTP transport won't find the 
address correctly
+            reference.setAddress(address);
+        }
+        
+        try {
+            serverBinding = 
bus.getBindingManager().getBindingFactory(bindingId).createServerBinding(
+                    reference, this);
+            serverBinding.activate();
+        } catch (Exception e) {
+            throw new ContextInitException(e);
+        }        
+    }
+
+    @Destroy
+    public void stop() throws CoreRuntimeException {
+        System.out.println("In stop");
+        super.stop();
+    }
+
+    private void initOperationMap(Definition def) {
+        List ops = port.getBinding().getBindingOperations();
+        Iterator opIt = ops.iterator();
+        while (opIt.hasNext()) {
+            BindingOperation op = (BindingOperation)opIt.next();
+            BindingInput bindingInput = op.getBindingInput();
+            List elements = bindingInput.getExtensibilityElements();
+            QName qn = new QName(def.getTargetNamespace(), op.getName());
+            for (Iterator i = elements.iterator(); i.hasNext();) {
+                Object element = i.next();
+                if (SOAPBody.class.isInstance(element)) {
+                    SOAPBody body = (SOAPBody)element;
+                    if (body.getNamespaceURI() != null) {
+                        qn = new QName(body.getNamespaceURI(), op.getName());
+                    }
+                }
+            }
+            
+            ServerDataBindingCallback cb = getDataBindingCallback(qn, null,
+                                                                  
DataBindingCallback.Mode.PARTS);
+            opMap.put(qn, cb);
+            if (!"".equals(cb.getRequestWrapperQName().getLocalPart())) {
+                opMap.put(cb.getRequestWrapperQName(), cb);
+            }
+        }        
+    }
+    public ServerDataBindingCallback getDataBindingCallback(QName 
operationName,
+                                                            
ObjectMessageContext objContext,
+                                                            
DataBindingCallback.Mode mode) {
+        if (opMap.containsKey(operationName)) {
+            return opMap.get(operationName);
+        }
+        WSDLOperationInfo opInfo = 
wsdlCache.getOperationInfo(operationName.getLocalPart());
+        boolean inout = false;
+        
+        
+        Class<?> serviceInterface = getServiceInterface();
+        System.out.println(serviceInterface.getName());
+        Method meth = getMethod(serviceInterface, 
operationName.getLocalPart());
+        System.out.println(meth);
+        
+        ServerDataBindingCallback scb = new 
SCAServerDataBindingCallback(opInfo,
+                                                                         
typeHelper,
+                                                                         inout,
+                                                                         meth,
+                                                                         
entryPointProxy);
+        // TODO Auto-generated method stub
+        return scb;
+    }
+    protected Method getMethod(Class<?> serviceInterface, String 
operationName) {
+        // Note: this doesn't support overloaded operations
+        Method[] methods = serviceInterface.getMethods();
+        for (Method m : methods) {
+            if (m.getName().equals(operationName)) {
+                return m;
+            }
+            // tolerate WSDL with capatalized operation name
+            StringBuilder sb = new StringBuilder(operationName);
+            sb.setCharAt(0, Character.toLowerCase(sb.charAt(0)));
+            if (m.getName().equals(sb.toString())) {
+                return m;
+            }
+        }
+        throw new BuilderConfigException("no operation named " + operationName
+                                         + " found on service interface: " + 
serviceInterface.getName());
+    }
+
+    
+    public DataBindingCallback 
getFaultDataBindingCallback(ObjectMessageContext objContext) {
+        // TODO Auto-generated method stub
+        return null;
+    }
+
+    public Map<QName, ? extends DataBindingCallback> getOperations() {
+        return opMap;
+    }
+
+    public Style getStyle() {
+        // TODO Auto-generated method stub
+        return wsdlCache.getStyle();
+    }
+    public DataBindingCallback.Mode getServiceMode() {
+        return DataBindingCallback.Mode.PARTS;
+    }
+
+    public WebServiceProvider getWebServiceProvider() {
+        // TODO Auto-generated method stub
+        return null;
+    }
+
+    public Executor getExecutor() {
+        //Let the transport handle it (or it goes to the Bus default wq 
+        //if the transport cannot handle it
+        return null;
+    }
+
+    
+    
+}
+

Propchange: 
incubator/tuscany/java/sca/bindings/binding.celtix/src/main/java/org/apache/tuscany/binding/celtix/handler/CeltixEntryPointContextImpl.java
------------------------------------------------------------------------------
    svn:eol-style = native

Modified: 
incubator/tuscany/java/sca/bindings/binding.celtix/src/main/java/org/apache/tuscany/binding/celtix/handler/io/NodeDataReader.java
URL: 
http://svn.apache.org/viewcvs/incubator/tuscany/java/sca/bindings/binding.celtix/src/main/java/org/apache/tuscany/binding/celtix/handler/io/NodeDataReader.java?rev=405552&r1=405551&r2=405552&view=diff
==============================================================================
--- 
incubator/tuscany/java/sca/bindings/binding.celtix/src/main/java/org/apache/tuscany/binding/celtix/handler/io/NodeDataReader.java
 (original)
+++ 
incubator/tuscany/java/sca/bindings/binding.celtix/src/main/java/org/apache/tuscany/binding/celtix/handler/io/NodeDataReader.java
 Tue May  9 15:03:29 2006
@@ -68,7 +68,11 @@
             if (callback.hasInOut()) {
                 //REVISIT - inOuts
             } else {
-                objCtx.setReturn(os[0]);
+                if (isOutBound) {
+                    objCtx.setReturn(os[0]);
+                } else {
+                    objCtx.setMessageObjects(os);
+                }
             }
         } catch (IOException e) {
             throw new WebServiceException(e);

Modified: 
incubator/tuscany/java/sca/bindings/binding.celtix/src/main/java/org/apache/tuscany/binding/celtix/handler/io/NodeDataWriter.java
URL: 
http://svn.apache.org/viewcvs/incubator/tuscany/java/sca/bindings/binding.celtix/src/main/java/org/apache/tuscany/binding/celtix/handler/io/NodeDataWriter.java?rev=405552&r1=405551&r2=405552&view=diff
==============================================================================
--- 
incubator/tuscany/java/sca/bindings/binding.celtix/src/main/java/org/apache/tuscany/binding/celtix/handler/io/NodeDataWriter.java
 (original)
+++ 
incubator/tuscany/java/sca/bindings/binding.celtix/src/main/java/org/apache/tuscany/binding/celtix/handler/io/NodeDataWriter.java
 Tue May  9 15:03:29 2006
@@ -51,6 +51,7 @@
         }
 
         DataObject obj = toWrappedDataObject(callback.getTypeHelper(),
+                isOutbound ? objCtx.getReturn() : null,
                 objCtx.getMessageObjects(),
                 wrapperName);
 
@@ -82,6 +83,7 @@
 
 
     public static DataObject toWrappedDataObject(TypeHelper typeHelper,
+                                                 Object ret,
                                                  Object[] os,
                                                  QName typeQN) {
         XSDHelper xsdHelper = new XSDHelperImpl(typeHelper);
@@ -89,12 +91,17 @@
                 typeQN.getLocalPart(), true);
         DataObject dataObject = new 
DataFactoryImpl(typeHelper).create(property.getType());
         List ips = dataObject.getInstanceProperties();
-        for (int i = 0; i < ips.size(); i++) {
-            if (os[i] instanceof Holder) {
-                Holder<?> holder = (Holder<?>)os[i];
+        int offset = 0;
+        if (ret != null) {
+            dataObject.set(0, ret);
+            offset = 1;
+        }
+        for (int i = offset; i < ips.size(); i++) {
+            if (os[i - offset] instanceof Holder) {
+                Holder<?> holder = (Holder<?>)os[i - offset];
                 dataObject.set(i, holder.value);
             } else {
-                dataObject.set(i, os[i]);
+                dataObject.set(i, os[i - offset]);
             }
         }
         return dataObject;

Modified: 
incubator/tuscany/java/sca/bindings/binding.celtix/src/main/java/org/apache/tuscany/binding/celtix/handler/io/SCADataBindingCallback.java
URL: 
http://svn.apache.org/viewcvs/incubator/tuscany/java/sca/bindings/binding.celtix/src/main/java/org/apache/tuscany/binding/celtix/handler/io/SCADataBindingCallback.java?rev=405552&r1=405551&r2=405552&view=diff
==============================================================================
--- 
incubator/tuscany/java/sca/bindings/binding.celtix/src/main/java/org/apache/tuscany/binding/celtix/handler/io/SCADataBindingCallback.java
 (original)
+++ 
incubator/tuscany/java/sca/bindings/binding.celtix/src/main/java/org/apache/tuscany/binding/celtix/handler/io/SCADataBindingCallback.java
 Tue May  9 15:03:29 2006
@@ -1,5 +1,6 @@
 package org.apache.tuscany.binding.celtix.handler.io;
 
+
 import org.w3c.dom.Node;
 import commonj.sdo.helper.TypeHelper;
 import org.objectweb.celtix.bindings.DataReader;
@@ -9,8 +10,9 @@
 import org.objectweb.celtix.context.ObjectMessageContext;
 
 public class SCADataBindingCallback extends 
AbstractWSDLOperationDataBindingCallback {
-    TypeHelper typeHelper;
-    boolean hasInOut;
+    
+    protected TypeHelper typeHelper;
+    protected boolean hasInOut;
 
     public SCADataBindingCallback(WSDLOperationInfo op, TypeHelper helper, 
boolean inout) {
         super(op);
@@ -52,7 +54,8 @@
     }
 
     public void initObjectContext(ObjectMessageContext octx) {
-        //REVISIT - this is only used server side, must be implemented for 
server side to work        
+        //REVISIT - is this even used?       
     }
+
 
 }

Added: 
incubator/tuscany/java/sca/bindings/binding.celtix/src/main/java/org/apache/tuscany/binding/celtix/handler/io/SCAServerDataBindingCallback.java
URL: 
http://svn.apache.org/viewcvs/incubator/tuscany/java/sca/bindings/binding.celtix/src/main/java/org/apache/tuscany/binding/celtix/handler/io/SCAServerDataBindingCallback.java?rev=405552&view=auto
==============================================================================
--- 
incubator/tuscany/java/sca/bindings/binding.celtix/src/main/java/org/apache/tuscany/binding/celtix/handler/io/SCAServerDataBindingCallback.java
 (added)
+++ 
incubator/tuscany/java/sca/bindings/binding.celtix/src/main/java/org/apache/tuscany/binding/celtix/handler/io/SCAServerDataBindingCallback.java
 Tue May  9 15:03:29 2006
@@ -0,0 +1,43 @@
+package org.apache.tuscany.binding.celtix.handler.io;
+
+import java.lang.reflect.InvocationTargetException;
+import java.lang.reflect.Method;
+
+import commonj.sdo.helper.TypeHelper;
+
+import org.objectweb.celtix.bindings.ServerDataBindingCallback;
+import org.objectweb.celtix.bus.bindings.WSDLOperationInfo;
+import org.objectweb.celtix.context.ObjectMessageContext;
+
+public class SCAServerDataBindingCallback extends SCADataBindingCallback
+    implements ServerDataBindingCallback {
+    Method method;
+    Object targetObject;
+
+    public SCAServerDataBindingCallback(WSDLOperationInfo op, TypeHelper 
helper,
+                                        boolean inout, Method meth, Object 
target) {
+        super(op, helper, inout);
+        method = meth;
+        targetObject = target;
+    }
+    
+
+    public void invoke(ObjectMessageContext octx) throws 
InvocationTargetException {
+        Object ret;
+        try {
+            ret = method.invoke(targetObject, octx.getMessageObjects());
+        } catch (RuntimeException e) {
+            throw e;
+        } catch (Exception e) {
+            throw new InvocationTargetException(e);
+        }
+        octx.setReturn(ret);
+    }
+    
+    public void initObjectContext(ObjectMessageContext octx) {
+        Object o[] = new Object[method.getParameterTypes().length];
+        //REVIST - holders?
+        octx.setMessageObjects(o);
+    }
+    
+}

Propchange: 
incubator/tuscany/java/sca/bindings/binding.celtix/src/main/java/org/apache/tuscany/binding/celtix/handler/io/SCAServerDataBindingCallback.java
------------------------------------------------------------------------------
    svn:eol-style = native

Modified: 
incubator/tuscany/java/sca/bindings/binding.celtix/src/test/java/org/apache/tuscany/binding/celtix/handler/io/NodeDataWriterTestCase.java
URL: 
http://svn.apache.org/viewcvs/incubator/tuscany/java/sca/bindings/binding.celtix/src/test/java/org/apache/tuscany/binding/celtix/handler/io/NodeDataWriterTestCase.java?rev=405552&r1=405551&r2=405552&view=diff
==============================================================================
--- 
incubator/tuscany/java/sca/bindings/binding.celtix/src/test/java/org/apache/tuscany/binding/celtix/handler/io/NodeDataWriterTestCase.java
 (original)
+++ 
incubator/tuscany/java/sca/bindings/binding.celtix/src/test/java/org/apache/tuscany/binding/celtix/handler/io/NodeDataWriterTestCase.java
 Tue May  9 15:03:29 2006
@@ -75,7 +75,7 @@
         assertEquals("Value not written", "Hello", 
element.getFirstChild().getTextContent().trim());
         
         DataReader<Node> reader = callback.createReader(Node.class);
-        reader.readWrapper(objCtx , false, element);
+        reader.readWrapper(objCtx , true, element);
         
         assertEquals("Hello", objCtx.getReturn());
     }


Reply via email to