You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tuscany.apache.org by an...@apache.org on 2006/05/09 12:51:02 UTC

svn commit: r405382 - in /incubator/tuscany/java/sca/databinding/sdo/src: main/java/org/apache/tuscany/databinding/sdo/ test/java/org/apache/tuscany/databinding/sdo/ test/resources/ test/resources/org/ test/resources/org/apache/ test/resources/org/apac...

Author: antelder
Date: Tue May  9 03:50:58 2006
New Revision: 405382

URL: http://svn.apache.org/viewcvs?rev=405382&view=rev
Log:
Add SDOXMLHelper. Code moved from Axis2 AxiomHelper to be used by Rhino/E4X and Axis2 projects
(and suppress a deprecation warning) 

Added:
    incubator/tuscany/java/sca/databinding/sdo/src/main/java/org/apache/tuscany/databinding/sdo/SDOXMLHelper.java
    incubator/tuscany/java/sca/databinding/sdo/src/test/java/org/apache/tuscany/databinding/sdo/SDOXMLHelperTestCase.java
    incubator/tuscany/java/sca/databinding/sdo/src/test/resources/
    incubator/tuscany/java/sca/databinding/sdo/src/test/resources/org/
    incubator/tuscany/java/sca/databinding/sdo/src/test/resources/org/apache/
    incubator/tuscany/java/sca/databinding/sdo/src/test/resources/org/apache/tuscany/
    incubator/tuscany/java/sca/databinding/sdo/src/test/resources/org/apache/tuscany/databinding/
    incubator/tuscany/java/sca/databinding/sdo/src/test/resources/org/apache/tuscany/databinding/sdo/
    incubator/tuscany/java/sca/databinding/sdo/src/test/resources/org/apache/tuscany/databinding/sdo/CreditScoreDocLit.wsdl
    incubator/tuscany/java/sca/databinding/sdo/src/test/resources/org/apache/tuscany/databinding/sdo/CreditScoreDocLitWrapped.wsdl
    incubator/tuscany/java/sca/databinding/sdo/src/test/resources/org/apache/tuscany/databinding/sdo/helloworld.wsdl
Modified:
    incubator/tuscany/java/sca/databinding/sdo/src/main/java/org/apache/tuscany/databinding/sdo/ImportSDOLoader.java

Modified: incubator/tuscany/java/sca/databinding/sdo/src/main/java/org/apache/tuscany/databinding/sdo/ImportSDOLoader.java
URL: http://svn.apache.org/viewcvs/incubator/tuscany/java/sca/databinding/sdo/src/main/java/org/apache/tuscany/databinding/sdo/ImportSDOLoader.java?rev=405382&r1=405381&r2=405382&view=diff
==============================================================================
--- incubator/tuscany/java/sca/databinding/sdo/src/main/java/org/apache/tuscany/databinding/sdo/ImportSDOLoader.java (original)
+++ incubator/tuscany/java/sca/databinding/sdo/src/main/java/org/apache/tuscany/databinding/sdo/ImportSDOLoader.java Tue May  9 03:50:58 2006
@@ -75,6 +75,7 @@
         }
     }
 
+    @SuppressWarnings("deprecation")
     private void importWSDL(XMLStreamReader reader, LoaderContext loaderContext) throws ConfigurationLoadException {
         String wsdLLocation = reader.getAttributeValue(null, "wsdlLocation");
         if (wsdLLocation != null) {

Added: incubator/tuscany/java/sca/databinding/sdo/src/main/java/org/apache/tuscany/databinding/sdo/SDOXMLHelper.java
URL: http://svn.apache.org/viewcvs/incubator/tuscany/java/sca/databinding/sdo/src/main/java/org/apache/tuscany/databinding/sdo/SDOXMLHelper.java?rev=405382&view=auto
==============================================================================
--- incubator/tuscany/java/sca/databinding/sdo/src/main/java/org/apache/tuscany/databinding/sdo/SDOXMLHelper.java (added)
+++ incubator/tuscany/java/sca/databinding/sdo/src/main/java/org/apache/tuscany/databinding/sdo/SDOXMLHelper.java Tue May  9 03:50:58 2006
@@ -0,0 +1,178 @@
+/**
+ *
+ *  Copyright 2005 The Apache Software Foundation or its licensors, as applicable.
+ *
+ *  Licensed under the Apache License, Version 2.0 (the "License");
+ *  you may not use this file except in compliance with the License.
+ *  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *  Unless required by applicable law or agreed to in writing, software
+ *  distributed under the License is distributed on an "AS IS" BASIS,
+ *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ *  See the License for the specific language governing permissions and
+ *  limitations under the License.
+ */
+package org.apache.tuscany.databinding.sdo;
+
+import java.io.ByteArrayInputStream;
+import java.io.ByteArrayOutputStream;
+import java.io.IOException;
+import java.util.List;
+
+import javax.xml.namespace.QName;
+
+import org.apache.tuscany.core.wire.InvocationRuntimeException;
+import org.apache.tuscany.sdo.util.SDOUtil;
+import org.osoa.sca.ServiceRuntimeException;
+
+import commonj.sdo.DataObject;
+import commonj.sdo.Property;
+import commonj.sdo.Type;
+import commonj.sdo.helper.DataFactory;
+import commonj.sdo.helper.TypeHelper;
+import commonj.sdo.helper.XMLDocument;
+import commonj.sdo.helper.XMLHelper;
+import commonj.sdo.helper.XSDHelper;
+
+/**
+ * Utility methods to convert between XML byte arrays, SDO DataObjects, and Java objects.
+ * 
+ * Most of these methods rely on the schemas having been registered with XSDHelper.define
+ */
+public final class SDOXMLHelper {
+
+    private SDOXMLHelper() {
+        // utility class, never contructed
+    }
+
+    /**
+     * Deserialize an XML byte array into Java Objects
+     * 
+     * @param xmlBytes
+     *            the byte array containing the XML
+     * @param isWrapped
+     * 
+     * @return the array of deserialized Java objects
+     */
+    public static Object[] toObjects(TypeHelper typeHelper, byte[] xmlBytes, boolean isWrapped) {
+        DataObject dataObject = toDataObject(typeHelper, xmlBytes);
+        return toObjects(dataObject, isWrapped);
+    }
+
+    /**
+     * Convert a typed DataObject to Java objects
+     * 
+     * @param dataObject
+     * @param isWrapped
+     * @return the array of Objects from the DataObject
+     */
+    public static Object[] toObjects(DataObject dataObject, boolean isWrapped) {
+        if (isWrapped) {
+            List ips = dataObject.getInstanceProperties();
+            Object[] os = new Object[ips.size()];
+            for (int i = 0; i < ips.size(); i++) {
+                os[i] = dataObject.get((Property) ips.get(i));
+            }
+            return os;
+        } else {
+            Object object = dataObject;
+            Type type = dataObject.getType();
+            if (type.isSequenced()) {
+                object = dataObject.getSequence().getValue(0);
+            }
+            return new Object[] { object };
+        }
+    }
+
+    /**
+     * Serializes objects to an XML byte array
+     * 
+     * @param os
+     * @param typeNS
+     * @param typeName
+     * @return a byte array containing the XML
+     */
+    public static byte[] toXMLBytes(TypeHelper typeHelper, Object[] os, QName elementQName, boolean isWrapped) {
+        DataObject dataObject = toDataObject(typeHelper, os, elementQName, isWrapped);
+        return toXMLbytes(typeHelper, dataObject, elementQName);
+    }
+
+    /**
+     * Convert a DataObject to an XML byte array
+     * 
+     * @param dataObject
+     * @param typeNS
+     * @param typeName
+     * @return a byte array containing the XML bytes
+     */
+    public static byte[] toXMLbytes(TypeHelper typeHelper, DataObject dataObject, QName elementQName) {
+        try {
+
+            ByteArrayOutputStream pos = new ByteArrayOutputStream();
+            XMLHelper xmlHelper = SDOUtil.createXMLHelper(typeHelper);
+            xmlHelper.save(dataObject, elementQName.getNamespaceURI(), elementQName.getLocalPart(), pos);
+            pos.close();
+
+            return pos.toByteArray();
+
+        } catch (IOException e) {
+            throw new ServiceRuntimeException(e);
+        }
+    }
+
+    /**
+     * Deserialize an XML byte array into a DataObject
+     * 
+     * @param xmlBytes
+     * @return a DataObject
+     */
+    public static DataObject toDataObject(TypeHelper typeHelper, byte[] xmlBytes) {
+        try {
+
+            XMLHelper xmlHelper = SDOUtil.createXMLHelper(typeHelper);
+            XMLDocument document = xmlHelper.load(new ByteArrayInputStream(xmlBytes));
+
+            return document.getRootObject();
+
+        } catch (IOException e) {
+            throw new ServiceRuntimeException(e);
+        }
+    }
+
+    /**
+     * Convert objects to typed DataObject
+     * 
+     * @param typeNS
+     * @param typeName
+     * @param os
+     * @return the DataObject
+     */
+    public static DataObject toDataObject(TypeHelper typeHelper, Object[] os, QName elementQName, boolean isWrapped) {
+        XSDHelper xsdHelper = SDOUtil.createXSDHelper(typeHelper);
+
+        Property property = xsdHelper.getGlobalProperty(elementQName.getNamespaceURI(), elementQName.getLocalPart(), true);
+        if (null == property) {
+            throw new InvocationRuntimeException("Type '" + elementQName.toString() + "' not found in registered SDO types.");
+        }
+        if (isWrapped) {
+            DataFactory dataFactory = SDOUtil.createDataFactory(typeHelper);
+            DataObject dataObject = dataFactory.create(property.getType());
+            List ips = dataObject.getInstanceProperties();
+            for (int i = 0; i < ips.size(); i++) {
+                dataObject.set(i, os[i]);
+            }
+            return dataObject;
+        } else {
+            Object value = os[0];
+            Type type = property.getType();
+            if (!type.isDataType()) {
+                return (DataObject) value;
+            } else {
+                return SDOUtil.createDataTypeWrapper(type, value);
+            }
+        }
+    }
+
+}

Added: incubator/tuscany/java/sca/databinding/sdo/src/test/java/org/apache/tuscany/databinding/sdo/SDOXMLHelperTestCase.java
URL: http://svn.apache.org/viewcvs/incubator/tuscany/java/sca/databinding/sdo/src/test/java/org/apache/tuscany/databinding/sdo/SDOXMLHelperTestCase.java?rev=405382&view=auto
==============================================================================
--- incubator/tuscany/java/sca/databinding/sdo/src/test/java/org/apache/tuscany/databinding/sdo/SDOXMLHelperTestCase.java (added)
+++ incubator/tuscany/java/sca/databinding/sdo/src/test/java/org/apache/tuscany/databinding/sdo/SDOXMLHelperTestCase.java Tue May  9 03:50:58 2006
@@ -0,0 +1,122 @@
+package org.apache.tuscany.databinding.sdo;
+
+import java.net.URL;
+
+import javax.xml.namespace.QName;
+
+import junit.framework.TestCase;
+
+import org.apache.tuscany.sdo.util.DataObjectUtil;
+import org.apache.tuscany.sdo.util.SDOUtil;
+
+import commonj.sdo.DataObject;
+import commonj.sdo.helper.DataFactory;
+import commonj.sdo.helper.TypeHelper;
+import commonj.sdo.helper.XSDHelper;
+
+public class SDOXMLHelperTestCase extends TestCase {
+
+    private TypeHelper typeHelper;
+
+    public static final QName GREETING_QN = new QName("http://helloworldaxis.samples.tuscany.apache.org", "getGreetings");
+
+    private static final String GREETING_NAME = "petra";
+
+    private static final String GREETING_XML = "<helloworldaxis:in0>petra</helloworldaxis:in0>";
+
+    private DataObject greetingDOB;
+
+    private byte[] greetingXML;
+
+    public static final QName DOCLIT_QN = new QName("http://www.example.org/creditscore/doclit/", "getCreditScoreRequest");
+
+    // private static final Object[] CUSTOMER = { "111-22-3333", "John", "Smith" };
+
+    private DataObject nonWrappedDOB;
+
+    public void testXMLBytes1() {
+        byte[] xmlBytes = SDOXMLHelper.toXMLbytes(typeHelper, greetingDOB, GREETING_QN);
+        assertNotNull(xmlBytes);
+        assertTrue(new String(xmlBytes).contains("<helloworldaxis:in0>petra</helloworldaxis:in0>"));
+    }
+
+    public void testXMLBytes2() {
+        byte[] xmlBytes = SDOXMLHelper.toXMLBytes(typeHelper, new Object[] { GREETING_NAME }, GREETING_QN, true);
+        assertNotNull(xmlBytes);
+        assertTrue(new String(xmlBytes).contains(GREETING_XML));
+    }
+
+    // TODO: nonwrapped doesn't work
+    // public void testXMLBytes3() {
+    // byte[] xmlBytes = SDOXMLHelper.toXMLBytes(typeHelper, CUSTOMER, DOCLIT_QN, false);
+    // assertNotNull(xmlBytes);
+    // assertTrue(new String(xmlBytes).contains(DOC_LIT_XML));
+    // }
+
+    public void testToDataObject1() {
+        DataObject dataObject = SDOXMLHelper.toDataObject(typeHelper, greetingXML);
+        assertNotNull(dataObject);
+        assertEquals(GREETING_NAME, dataObject.getString(0));
+    }
+
+    public void testToDataObject2() {
+        DataObject dataObject = SDOXMLHelper.toDataObject(typeHelper, new Object[] { GREETING_NAME }, GREETING_QN, true);
+        assertNotNull(dataObject);
+        assertEquals(GREETING_NAME, dataObject.getString(0));
+    }
+
+    // TODO: nonwrapped doesn't work
+    // public void testToDataObject3() {
+    // DataObject dataObject = SDOXMLHelper.toDataObject(typeHelper, CUSTOMER, DOCLIT_QN, false);
+    // assertNotNull(dataObject);
+    // assertEquals(CUSTOMER[0], dataObject.getString(0));
+    // assertEquals(CUSTOMER[1], dataObject.getString(1));
+    // assertEquals(CUSTOMER[2], dataObject.getString(2));
+    // }
+
+    public void testToObjects1() {
+        Object[] os = SDOXMLHelper.toObjects(typeHelper, greetingXML, true);
+        assertNotNull(os);
+        assertEquals(1, os.length);
+        assertEquals(GREETING_NAME, os[0]);
+    }
+
+    public void testToObjects2() {
+        Object[] os = SDOXMLHelper.toObjects(greetingDOB, true);
+        assertNotNull(os);
+        assertEquals(1, os.length);
+        assertEquals(GREETING_NAME, os[0]);
+    }
+
+    public void testToObjects3() {
+        Object[] os = SDOXMLHelper.toObjects(nonWrappedDOB, false);
+        assertNotNull(os);
+        // assertEquals(3, os.length); TODO: non-wrapped doesn't seem to work
+    }
+
+    protected void setUp() throws Exception {
+        super.setUp();
+        DataObjectUtil.initRuntime();
+        ClassLoader cl = Thread.currentThread().getContextClassLoader();
+        try {
+            Thread.currentThread().setContextClassLoader(getClass().getClassLoader());
+            typeHelper = SDOUtil.createTypeHelper();
+            XSDHelper xsdHelper = SDOUtil.createXSDHelper(typeHelper);
+            URL url = getClass().getResource("helloworld.wsdl");
+            xsdHelper.define(url.openStream(), null);
+            url = getClass().getResource("CreditScoreDocLit.wsdl");
+            xsdHelper.define(url.openStream(), null);
+            greetingDOB = SDOXMLHelper.toDataObject(typeHelper, new Object[] { GREETING_NAME }, GREETING_QN, true);
+            greetingXML = SDOXMLHelper.toXMLBytes(typeHelper, new Object[] { GREETING_NAME }, GREETING_QN, true);
+
+            DataFactory dataFactory = SDOUtil.createDataFactory(typeHelper);
+            nonWrappedDOB = dataFactory.create("http://www.example.org/creditscore/doclit/", "Customer");
+            nonWrappedDOB.setString(0, "111-22-3333");
+            nonWrappedDOB.setString(1, "John");
+            nonWrappedDOB.setString(2, "Smith");
+
+        } finally {
+            Thread.currentThread().setContextClassLoader(cl);
+        }
+    }
+}

Added: incubator/tuscany/java/sca/databinding/sdo/src/test/resources/org/apache/tuscany/databinding/sdo/CreditScoreDocLit.wsdl
URL: http://svn.apache.org/viewcvs/incubator/tuscany/java/sca/databinding/sdo/src/test/resources/org/apache/tuscany/databinding/sdo/CreditScoreDocLit.wsdl?rev=405382&view=auto
==============================================================================
--- incubator/tuscany/java/sca/databinding/sdo/src/test/resources/org/apache/tuscany/databinding/sdo/CreditScoreDocLit.wsdl (added)
+++ incubator/tuscany/java/sca/databinding/sdo/src/test/resources/org/apache/tuscany/databinding/sdo/CreditScoreDocLit.wsdl Tue May  9 03:50:58 2006
@@ -0,0 +1,61 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<wsdl:definitions xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
+	xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
+	xmlns:tns="http://www.example.org/creditscore/doclit/"
+	xmlns:xsd="http://www.w3.org/2001/XMLSchema" name="CreditScore"
+	targetNamespace="http://www.example.org/creditscore/doclit/">
+	<wsdl:types>
+		<xsd:schema
+			targetNamespace="http://www.example.org/creditscore/doclit/"
+			xmlns:xsd="http://www.w3.org/2001/XMLSchema">
+			<xsd:element name="getCreditScoreRequest" type="tns:Customer" />
+			<xsd:complexType name="Customer">
+				<xsd:sequence>
+					<xsd:element name="ssn" type="xsd:string" />
+					<xsd:element name="firstName" type="xsd:string" />
+					<xsd:element name="lastName" type="xsd:string" />
+				</xsd:sequence>
+			</xsd:complexType>				
+			<xsd:element name="getCreditScoreResponse" type="tns:CreditReport"/>
+			<xsd:complexType name="CreditReport">
+				<xsd:sequence>
+					<xsd:element name="score" type="xsd:int"/>
+				</xsd:sequence>
+			</xsd:complexType>				
+		</xsd:schema>
+	</wsdl:types>
+	<wsdl:message name="getCreditScoreResponse">
+		<wsdl:part element="tns:getCreditScoreResponse"
+			name="getCreditScoreResponse" />
+	</wsdl:message>
+	<wsdl:message name="getCreditScoreRequest">
+		<wsdl:part element="tns:getCreditScoreRequest"
+			name="getCreditScoreRequest" />
+	</wsdl:message>
+	<wsdl:portType name="CreditScoreDocLit">
+		<wsdl:operation name="getCreditScore">
+			<wsdl:input message="tns:getCreditScoreRequest" />
+			<wsdl:output message="tns:getCreditScoreResponse" />
+		</wsdl:operation>
+	</wsdl:portType>
+	<wsdl:binding name="CreditScoreDocLitSOAP" type="tns:CreditScoreDocLit">
+		<soap:binding style="document"
+			transport="http://schemas.xmlsoap.org/soap/http" />
+		<wsdl:operation name="getCreditScore">
+			<soap:operation
+				soapAction="http://www.example.org/creditscore/doclit/getCreditScore" />
+			<wsdl:input>
+				<soap:body parts="getCreditScoreRequest" use="literal" />
+			</wsdl:input>
+			<wsdl:output>
+				<soap:body parts="getCreditScoreResponse" use="literal" />
+			</wsdl:output>
+		</wsdl:operation>
+	</wsdl:binding>
+	<wsdl:service name="CreditScore">
+		<wsdl:port binding="tns:CreditScoreDocLitSOAP"
+			name="CreditScoreDocLitSOAP">
+			<soap:address location="http://www.example.org/" />
+		</wsdl:port>
+	</wsdl:service>
+</wsdl:definitions>

Added: incubator/tuscany/java/sca/databinding/sdo/src/test/resources/org/apache/tuscany/databinding/sdo/CreditScoreDocLitWrapped.wsdl
URL: http://svn.apache.org/viewcvs/incubator/tuscany/java/sca/databinding/sdo/src/test/resources/org/apache/tuscany/databinding/sdo/CreditScoreDocLitWrapped.wsdl?rev=405382&view=auto
==============================================================================
--- incubator/tuscany/java/sca/databinding/sdo/src/test/resources/org/apache/tuscany/databinding/sdo/CreditScoreDocLitWrapped.wsdl (added)
+++ incubator/tuscany/java/sca/databinding/sdo/src/test/resources/org/apache/tuscany/databinding/sdo/CreditScoreDocLitWrapped.wsdl Tue May  9 03:50:58 2006
@@ -0,0 +1,63 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<wsdl:definitions xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
+	xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
+	xmlns:tns="http://www.example.org/creditscore/doclitwrapped/"
+	xmlns:xsd="http://www.w3.org/2001/XMLSchema" name="CreditScore"
+	targetNamespace="http://www.example.org/creditscore/doclitwrapped/">
+	<wsdl:types>
+		<xsd:schema
+			targetNamespace="http://www.example.org/creditscore/doclitwrapped/"
+			xmlns:xsd="http://www.w3.org/2001/XMLSchema">
+			<xsd:element name="getCreditScoreResponse">
+			<xsd:complexType>
+				<xsd:sequence>
+					<xsd:element name="score" type="xsd:int" />
+				</xsd:sequence>
+			</xsd:complexType>			
+			</xsd:element>
+			<xsd:element name="getCreditScore">
+			<xsd:complexType>
+				<xsd:sequence>
+					<xsd:element name="ssn" type="xsd:string" />
+					<xsd:element name="firstName" type="xsd:string" />
+					<xsd:element name="lastName" type="xsd:string" />
+				</xsd:sequence>
+			</xsd:complexType>
+			</xsd:element>
+		</xsd:schema>
+	</wsdl:types>
+	<wsdl:message name="getCreditScoreResponse">
+		<wsdl:part element="tns:getCreditScoreResponse"
+			name="getCreditScoreResponse" />
+	</wsdl:message>
+	<wsdl:message name="getCreditScoreRequest">
+		<wsdl:part element="tns:getCreditScore"
+			name="getCreditScoreRequest" />
+	</wsdl:message>
+	<wsdl:portType name="CreditScoreDocLitWrapped">
+		<wsdl:operation name="getCreditScore">
+			<wsdl:input message="tns:getCreditScoreRequest" />
+			<wsdl:output message="tns:getCreditScoreResponse" />
+		</wsdl:operation>
+	</wsdl:portType>
+	<wsdl:binding name="CreditScoreDocLitWrappedSOAP" type="tns:CreditScoreDocLitWrapped">
+		<soap:binding style="document"
+			transport="http://schemas.xmlsoap.org/soap/http" />
+		<wsdl:operation name="getCreditScore">
+			<soap:operation
+				soapAction="http://www.example.org/creditscore/doclitwrapped/getCreditScore" />
+			<wsdl:input>
+				<soap:body parts="getCreditScoreRequest" use="literal" />
+			</wsdl:input>
+			<wsdl:output>
+				<soap:body parts="getCreditScoreResponse" use="literal" />
+			</wsdl:output>
+		</wsdl:operation>
+	</wsdl:binding>
+	<wsdl:service name="CreditScore">
+		<wsdl:port binding="tns:CreditScoreDocLitWrappedSOAP"
+			name="CreditScoreDocLitWrappedSOAP">
+			<soap:address location="http://localhost:8080/CreditScoreService/services/CreditScoreDocLitWrappedSOAP"/>
+		</wsdl:port>
+	</wsdl:service>
+</wsdl:definitions>

Added: incubator/tuscany/java/sca/databinding/sdo/src/test/resources/org/apache/tuscany/databinding/sdo/helloworld.wsdl
URL: http://svn.apache.org/viewcvs/incubator/tuscany/java/sca/databinding/sdo/src/test/resources/org/apache/tuscany/databinding/sdo/helloworld.wsdl?rev=405382&view=auto
==============================================================================
--- incubator/tuscany/java/sca/databinding/sdo/src/test/resources/org/apache/tuscany/databinding/sdo/helloworld.wsdl (added)
+++ incubator/tuscany/java/sca/databinding/sdo/src/test/resources/org/apache/tuscany/databinding/sdo/helloworld.wsdl Tue May  9 03:50:58 2006
@@ -0,0 +1,106 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+  Copyright (c) 2005 The Apache Software Foundation or its licensors, as applicable.
+
+  Licensed under the Apache License, Version 2.0 (the "License");
+  you may not use this file except in compliance with the License.
+  You may obtain a copy of the License at
+
+     http://www.apache.org/licenses/LICENSE-2.0
+
+  Unless required by applicable law or agreed to in writing, software
+  distributed under the License is distributed on an "AS IS" BASIS,
+  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  See the License for the specific language governing permissions and
+  limitations under the License.
+ -->
+<wsdl:definitions targetNamespace="http://helloworldaxis.samples.tuscany.apache.org" xmlns:apachesoap="http://xml.apache.org/xml-soap" xmlns:impl="http://helloworldaxis.samples.tuscany.apache.org" xmlns:intf="http://helloworldaxis.samples.tuscany.apache.org" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:wsdlsoap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" name="stockquote">
+    <!--WSDL created by Apache Axis version: 1.2.1
+Built on Jun 14, 2005 (09:15:57 EDT)-->
+    <wsdl:types>
+        <schema elementFormDefault="qualified" targetNamespace="http://helloworldaxis.samples.tuscany.apache.org" xmlns="http://www.w3.org/2001/XMLSchema">
+            <element name="getGreetings">
+                <complexType>
+                    <sequence>
+                        <element name="in0" type="xsd:string"/>
+                    </sequence>
+                </complexType>
+            </element>
+            <element name="getGreetingsResponse">
+                <complexType>
+                    <sequence>
+                        <element name="getGreetingsReturn" type="xsd:string"/>
+                    </sequence>
+                </complexType>
+            </element>
+        </schema>
+    </wsdl:types>
+
+    <wsdl:message name="getGreetingsRequest">
+
+        <wsdl:part element="impl:getGreetings" name="parameters"/>
+
+    </wsdl:message>
+
+    <wsdl:message name="getGreetingsResponse">
+
+        <wsdl:part element="impl:getGreetingsResponse" name="parameters"/>
+
+    </wsdl:message>
+
+    <wsdl:portType name="HelloWorldServiceImpl">
+
+        <wsdl:operation name="getGreetings">
+
+            <wsdl:input message="impl:getGreetingsRequest" name="getGreetingsRequest"/>
+
+            <wsdl:output message="impl:getGreetingsResponse" name="getGreetingsResponse"/>
+
+        </wsdl:operation>
+
+    </wsdl:portType>
+
+    <wsdl:binding name="helloworldSoapBinding" type="impl:HelloWorldServiceImpl">
+
+        <wsdlsoap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
+
+        <wsdl:operation name="getGreetings">
+
+            <wsdlsoap:operation soapAction=""/>
+
+            <wsdl:input name="getGreetingsRequest">
+
+                <wsdlsoap:body use="literal"/>
+
+            </wsdl:input>
+
+            <wsdl:output name="getGreetingsResponse">
+
+                <wsdlsoap:body use="literal"/>
+
+            </wsdl:output>
+
+        </wsdl:operation>
+
+    </wsdl:binding>
+
+    <wsdl:service name="HelloWorldServiceImplService">
+
+        <wsdl:port binding="impl:helloworldSoapBinding" name="helloworld">
+
+            <!-- Tuscany SCA Service -->
+<!--
+            <wsdlsoap:address location="http://localhost:8080/tuscany-samples-helloworldws-service/services/HelloWorldService"/>
+-->
+            <wsdlsoap:address location="http://localhost:9876/tuscany-samples-helloworldws-service/services/HelloWorldService"/>
+
+            <!-- Axis Web Service -->
+            <!--
+            <wsdlsoap:address location="http://localhost:8081/helloworldaxissvc-SNAPSHOT/services/helloworld"/>
+            -->
+
+        </wsdl:port>
+
+    </wsdl:service>
+
+</wsdl:definitions>