tuscany-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From ramku...@apache.org
Subject svn commit: r711522 - in /tuscany/sandbox/ramkumar: ./ helloworld-ws-reference/ helloworld-ws-reference/src/ helloworld-ws-reference/src/main/ helloworld-ws-reference/src/main/java/ helloworld-ws-reference/src/main/java/helloworld/ helloworld-ws-refere...
Date Wed, 05 Nov 2008 07:12:53 GMT
Author: ramkumar
Date: Tue Nov  4 23:12:52 2008
New Revision: 711522

URL: http://svn.apache.org/viewvc?rev=711522&view=rev
Log:
testcase for databinding issue

Added:
    tuscany/sandbox/ramkumar/helloworld-ws-reference/
    tuscany/sandbox/ramkumar/helloworld-ws-reference/README
    tuscany/sandbox/ramkumar/helloworld-ws-reference/build.xml
    tuscany/sandbox/ramkumar/helloworld-ws-reference/pom.xml
    tuscany/sandbox/ramkumar/helloworld-ws-reference/src/
    tuscany/sandbox/ramkumar/helloworld-ws-reference/src/main/
    tuscany/sandbox/ramkumar/helloworld-ws-reference/src/main/java/
    tuscany/sandbox/ramkumar/helloworld-ws-reference/src/main/java/helloworld/
    tuscany/sandbox/ramkumar/helloworld-ws-reference/src/main/java/helloworld/HelloWorldClient.java
    tuscany/sandbox/ramkumar/helloworld-ws-reference/src/main/java/helloworld/HelloWorldService.java
    tuscany/sandbox/ramkumar/helloworld-ws-reference/src/main/java/helloworld/HelloWorldServiceComponent.java
    tuscany/sandbox/ramkumar/helloworld-ws-reference/src/main/resources/
    tuscany/sandbox/ramkumar/helloworld-ws-reference/src/main/resources/helloworldwsclient.composite
    tuscany/sandbox/ramkumar/helloworld-ws-reference/src/main/resources/logging.properties
    tuscany/sandbox/ramkumar/helloworld-ws-reference/src/main/resources/wsdl/
    tuscany/sandbox/ramkumar/helloworld-ws-reference/src/main/resources/wsdl/helloworld.wsdl
    tuscany/sandbox/ramkumar/helloworld-ws-service/
    tuscany/sandbox/ramkumar/helloworld-ws-service/README
    tuscany/sandbox/ramkumar/helloworld-ws-service/build.xml
    tuscany/sandbox/ramkumar/helloworld-ws-service/pom.xml
    tuscany/sandbox/ramkumar/helloworld-ws-service/src/
    tuscany/sandbox/ramkumar/helloworld-ws-service/src/main/
    tuscany/sandbox/ramkumar/helloworld-ws-service/src/main/java/
    tuscany/sandbox/ramkumar/helloworld-ws-service/src/main/java/helloworld/
    tuscany/sandbox/ramkumar/helloworld-ws-service/src/main/java/helloworld/HelloWorldImpl.java
    tuscany/sandbox/ramkumar/helloworld-ws-service/src/main/java/helloworld/HelloWorldServer.java
    tuscany/sandbox/ramkumar/helloworld-ws-service/src/main/java/helloworld/HelloWorldService.java
    tuscany/sandbox/ramkumar/helloworld-ws-service/src/main/resources/
    tuscany/sandbox/ramkumar/helloworld-ws-service/src/main/resources/META-INF/
    tuscany/sandbox/ramkumar/helloworld-ws-service/src/main/resources/META-INF/sca-deployables/
    tuscany/sandbox/ramkumar/helloworld-ws-service/src/main/resources/META-INF/sca-deployables/helloworldws.composite
    tuscany/sandbox/ramkumar/helloworld-ws-service/src/main/resources/wsdl/
    tuscany/sandbox/ramkumar/helloworld-ws-service/src/main/resources/wsdl/helloworld.wsdl
Removed:
    tuscany/sandbox/ramkumar/test.txt

Added: tuscany/sandbox/ramkumar/helloworld-ws-reference/README
URL: http://svn.apache.org/viewvc/tuscany/sandbox/ramkumar/helloworld-ws-reference/README?rev=711522&view=auto
==============================================================================
--- tuscany/sandbox/ramkumar/helloworld-ws-reference/README (added)
+++ tuscany/sandbox/ramkumar/helloworld-ws-reference/README Tue Nov  4 23:12:52 2008
@@ -0,0 +1,178 @@
+Hello World Web Service References Sample
+=========================================
+This sample demonstrates an SCA reference that uses a web service binding. 
+
+The README in the samples directory (the directory above this) provides 
+general instructions about building and running samples. Take a look there 
+first. 
+
+If you just want to run it to see what happens you need to run the server first 
+so open a command prompt, navigate to the helloworld-ws-service sample directory 
+and do 
+
+ant run
+
+OR if you don't have ant, on Windows do
+
+java -cp ..\..\lib\tuscany-sca-manifest.jar;target\sample-helloworld-ws-service.jar helloworld.HelloWorldServer
+
+and on *nix do
+
+java -cp ../../lib/tuscany-sca-manifest.jar:target/sample-helloworld-ws-service.jar helloworld.HelloWorldServer
+
+
+Once the server is running open a command prompt, navigate to this sample 
+directory and do:
+
+ant run
+
+OR if you don't have ant, on Windows do
+
+java -cp ..\..\lib\tuscany-sca-manifest.jar;target\sample-helloworld-ws-reference.jar helloworld.HelloWorldClient
+
+and on *nix do
+
+java -cp ../../lib/tuscany-sca-manifest.jar:target/sample-helloworld-ws-reference.jar helloworld.HelloWorldClient
+
+
+Sample Overview
+---------------
+The sample provides a single component that is wired to a reference with a 
+web service binding. The binding refers to WSDL that identifies the service
+exposed by the helloworld-ws-service sample. 
+
+helloworld-ws-reference/
+  src/
+    main/
+      java/
+        helloworld/
+          HelloWorldService.java          - interface description for 
+                                            HelloWorldServiceComponent
+          HelloWorldServiceComponent.java - component implementation
+          HelloWorldClient.java           - starts the SCA Runtime and 
+                                            deploys the helloworldwsclient
+                                            .composite. It then calls the 
+                                            HelloWorldServiceComponent
+      resources/
+        wsdl
+          helloworld.wsdl                 - the service description that the 
+                                            SCA reference uses to bind to 
+        helloworldwsclient.composite      - the SCA assembly for this sample
+        logging.properties                - log4j configuration file
+    test/
+      java/
+        helloworld/
+          HelloWorldClientTestCase.java   - JUnit test case
+          HelloWorldServerTest.java       - starts the Web service
+  helloworld-ws-reference.png             - a pictorial representation of the 
+                                            sample .composite file
+  build.xml                               - the Ant build file
+  pom.xml                                 - the Maven build file        
+
+Building And Running The Sample Using Ant
+-----------------------------------------
+With the binary distribution the sample can be built and run using Ant. Before
+you do this start up the service that the reference will talk to. To do this
+run up the helloworld-ws-service test. Take a look at the README in that sample
+and you will see you need the following commands
+
+cd helloworld-ws-service
+ant run
+
+Once done you can now compile and run this sample using the following commands;
+
+cd helloworld-ws-reference
+ant compile
+ant run
+
+You should see the following output from the run target.
+
+run:
+     [java] Injected helloWorldService
+     [java] Called getGreetings
+     [java] Hello World
+
+Building And Running The Sample Using Maven 
+-------------------------------------------
+With either the binary or source distributions the sample can be built and run 
+using Maven as follows. When using Maven you don't need to run the helloworld-
+ws-service sample first as Maven does this for you. 
+
+cd helloworld-ws-reference
+mvn
+
+You should see the following output from the test phase.
+
+-------------------------------------------------------
+ T E S T S
+-------------------------------------------------------
+Running helloworld.HelloWorldClientTestCase
+14-Jan-2008 14:06:12 org.apache.catalina.core.StandardEngine start
+INFO: Starting Servlet Engine: Apache Tomcat/6.0.10
+14-Jan-2008 14:06:12 org.apache.catalina.startup.ContextConfig defaultWebConfig
+INFO: No default web.xml
+14-Jan-2008 14:06:12 org.apache.catalina.startup.DigesterFactory register
+WARNING: Could not get url for /javax/servlet/resources/j2ee_1_4.xsd
+14-Jan-2008 14:06:12 org.apache.catalina.startup.DigesterFactory register
+WARNING: Could not get url for /javax/servlet/resources/xml.xsd
+14-Jan-2008 14:06:12 org.apache.catalina.startup.DigesterFactory register
+WARNING: Could not get url for /javax/servlet/jsp/resources/jsp_2_0.xsd
+14-Jan-2008 14:06:12 org.apache.catalina.startup.DigesterFactory register
+WARNING: Could not get url for /javax/servlet/jsp/resources/web-jsptaglibrary_2_
+0.xsd
+14-Jan-2008 14:06:12 org.apache.catalina.startup.DigesterFactory register
+WARNING: Could not get url for /javax/servlet/resources/web-app_2_4.xsd
+14-Jan-2008 14:06:12 org.apache.catalina.startup.DigesterFactory register
+WARNING: Could not get url for /javax/servlet/resources/j2ee_web_services_1_1.xs
+d
+14-Jan-2008 14:06:12 org.apache.catalina.startup.DigesterFactory register
+WARNING: Could not get url for /javax/servlet/resources/j2ee_web_services_client
+_1_1.xsd
+14-Jan-2008 14:06:12 org.apache.coyote.http11.Http11Protocol init
+INFO: Initializing Coyote HTTP/1.1 on http-8085
+14-Jan-2008 14:06:12 org.apache.coyote.http11.Http11Protocol start
+INFO: Starting Coyote HTTP/1.1 on http-8085
+14-Jan-2008 14:06:12 org.apache.tuscany.sca.http.tomcat.TomcatServer addServletM
+apping
+INFO: Added Servlet mapping: http://L3AW203:8085/HelloWorldService
+Injected helloWorldService
+Called getGreetings
+14-Jan-2008 14:06:14 org.apache.coyote.http11.Http11Protocol destroy
+INFO: Stopping Coyote HTTP/1.1 on http-8085
+14-Jan-2008 14:06:17 org.apache.catalina.core.StandardEngine start
+INFO: Starting Servlet Engine: Apache Tomcat/6.0.10
+14-Jan-2008 14:06:17 org.apache.catalina.loader.WebappLoader start
+INFO: Dual registration of jndi stream handler: factory already defined
+14-Jan-2008 14:06:17 org.apache.catalina.startup.ContextConfig defaultWebConfig
+INFO: No default web.xml
+14-Jan-2008 14:06:17 org.apache.catalina.startup.DigesterFactory register
+WARNING: Could not get url for /javax/servlet/resources/j2ee_1_4.xsd
+14-Jan-2008 14:06:17 org.apache.catalina.startup.DigesterFactory register
+WARNING: Could not get url for /javax/servlet/resources/xml.xsd
+14-Jan-2008 14:06:17 org.apache.catalina.startup.DigesterFactory register
+WARNING: Could not get url for /javax/servlet/jsp/resources/jsp_2_0.xsd
+14-Jan-2008 14:06:17 org.apache.catalina.startup.DigesterFactory register
+WARNING: Could not get url for /javax/servlet/jsp/resources/web-jsptaglibrary_2_
+0.xsd
+14-Jan-2008 14:06:17 org.apache.catalina.startup.DigesterFactory register
+WARNING: Could not get url for /javax/servlet/resources/web-app_2_4.xsd
+14-Jan-2008 14:06:17 org.apache.catalina.startup.DigesterFactory register
+WARNING: Could not get url for /javax/servlet/resources/j2ee_web_services_1_1.xs
+d
+14-Jan-2008 14:06:17 org.apache.catalina.startup.DigesterFactory register
+WARNING: Could not get url for /javax/servlet/resources/j2ee_web_services_client
+_1_1.xsd
+14-Jan-2008 14:06:17 org.apache.coyote.http11.Http11Protocol init
+INFO: Initializing Coyote HTTP/1.1 on http-8085
+14-Jan-2008 14:06:17 org.apache.coyote.http11.Http11Protocol start
+INFO: Starting Coyote HTTP/1.1 on http-8085
+14-Jan-2008 14:06:17 org.apache.tuscany.sca.http.tomcat.TomcatServer addServletM
+apping
+INFO: Added Servlet mapping: http://L3AW203:8085/HelloWorldService
+Injected helloWorldService
+Called getGreetings
+14-Jan-2008 14:06:18 org.apache.coyote.http11.Http11Protocol destroy
+INFO: Stopping Coyote HTTP/1.1 on http-8085
+Tests run: 2, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 13.625 sec
+
+This shows that the Junit test cases have run successfully. 

Added: tuscany/sandbox/ramkumar/helloworld-ws-reference/build.xml
URL: http://svn.apache.org/viewvc/tuscany/sandbox/ramkumar/helloworld-ws-reference/build.xml?rev=711522&view=auto
==============================================================================
--- tuscany/sandbox/ramkumar/helloworld-ws-reference/build.xml (added)
+++ tuscany/sandbox/ramkumar/helloworld-ws-reference/build.xml Tue Nov  4 23:12:52 2008
@@ -0,0 +1,72 @@
+<!--
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you 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.    
+-->
+<project name="helloworld-ws-reference" default="compile">
+    <property name="test.class" value="helloworld.HelloWorldClient" />
+	<property name="test.jar"   value="sample-helloworld-ws-reference.jar" />
+	
+    <target name="init">
+        <mkdir dir="target/classes"/>
+    </target>
+	
+    <target name="compile" depends="init">
+        <javac srcdir="src/main/java"
+               destdir="target/classes"
+               debug="on"
+               source="1.5"
+               target="1.5">
+            <classpath>
+            	<pathelement location="../../lib/tuscany-sca-manifest.jar"/>
+            </classpath>
+        </javac> 
+        <copy todir="target/classes">
+            <fileset dir="src/main/resources"/>
+        </copy>
+        <jar destfile="target/${test.jar}" basedir="target/classes">
+            <manifest>
+                <attribute name="Main-Class" value="${test.class}" /> 
+            </manifest>
+        </jar>    	
+    </target>	
+	
+    <target name="run-classes">
+        <java classname="${test.class}"
+              fork="true">
+            <classpath>
+                <pathelement path="target/classes"/>
+            	<pathelement location="../../lib/tuscany-sca-manifest.jar"/>
+            </classpath>
+        </java>
+    </target>
+	
+    <target name="run">
+        <java classname="${test.class}"
+              fork="true">
+            <classpath>
+                <pathelement path="target/${test.jar}"/>
+            	<pathelement location="../../lib/tuscany-sca-manifest.jar"/>
+            </classpath>
+        </java>    	
+    </target>
+	
+    <target name="clean">
+        <delete quiet="true" includeemptydirs="true">
+            <fileset dir="target"/>
+        </delete>
+    </target>
+</project>

Added: tuscany/sandbox/ramkumar/helloworld-ws-reference/pom.xml
URL: http://svn.apache.org/viewvc/tuscany/sandbox/ramkumar/helloworld-ws-reference/pom.xml?rev=711522&view=auto
==============================================================================
--- tuscany/sandbox/ramkumar/helloworld-ws-reference/pom.xml (added)
+++ tuscany/sandbox/ramkumar/helloworld-ws-reference/pom.xml Tue Nov  4 23:12:52 2008
@@ -0,0 +1,79 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+    * Licensed to the Apache Software Foundation (ASF) under one
+    * or more contributor license agreements.  See the NOTICE file
+    * distributed with this work for additional information
+    * regarding copyright ownership.  The ASF licenses this file
+    * to you 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.    
+-->
+<project>
+    <modelVersion>4.0.0</modelVersion>
+    <parent>
+        <groupId>org.apache.tuscany.sca</groupId>
+        <artifactId>tuscany-sca</artifactId>
+        <version>1.4-SNAPSHOT</version>
+        <relativePath>../../pom.xml</relativePath>
+    </parent>
+    <artifactId>sample-helloworld-ws-reference</artifactId>
+    <name>Apache Tuscany SCA HelloWorld Web Service Reference Sample</name>
+
+    <repositories>
+       <repository>
+          <id>apache.incubator</id>
+          <url>http://people.apache.org/repo/m2-incubating-repository</url>
+       </repository>
+    </repositories>
+
+    <dependencies>
+        <dependency>
+            <groupId>org.apache.tuscany.sca</groupId>
+            <artifactId>tuscany-host-embedded</artifactId>
+            <version>1.4-SNAPSHOT</version>
+        </dependency>
+
+        <dependency>
+            <groupId>org.apache.tuscany.sca</groupId>
+            <artifactId>tuscany-implementation-java-runtime</artifactId>
+            <version>1.4-SNAPSHOT</version>
+            <scope>runtime</scope>
+        </dependency>
+
+        <dependency>
+            <groupId>org.apache.tuscany.sca</groupId>
+            <artifactId>tuscany-binding-ws-axis2</artifactId>
+            <version>1.4-SNAPSHOT</version>
+            <scope>runtime</scope>
+        </dependency>
+
+        <dependency>
+            <groupId>org.apache.tuscany.sca</groupId>
+            <artifactId>sample-helloworld-ws-service</artifactId>
+            <version>1.4-SNAPSHOT</version>
+            <scope>test</scope>
+        </dependency>
+        
+        <dependency>
+            <groupId>junit</groupId>
+            <artifactId>junit</artifactId>
+            <version>4.5</version>
+            <scope>test</scope>
+        </dependency>
+        
+    </dependencies>
+    
+    <build>
+       <finalName>${artifactId}</finalName>
+    </build>
+
+</project>

Added: tuscany/sandbox/ramkumar/helloworld-ws-reference/src/main/java/helloworld/HelloWorldClient.java
URL: http://svn.apache.org/viewvc/tuscany/sandbox/ramkumar/helloworld-ws-reference/src/main/java/helloworld/HelloWorldClient.java?rev=711522&view=auto
==============================================================================
--- tuscany/sandbox/ramkumar/helloworld-ws-reference/src/main/java/helloworld/HelloWorldClient.java (added)
+++ tuscany/sandbox/ramkumar/helloworld-ws-reference/src/main/java/helloworld/HelloWorldClient.java Tue Nov  4 23:12:52 2008
@@ -0,0 +1,52 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you 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 helloworld;
+
+import javax.activation.DataHandler;
+import javax.activation.FileDataSource;
+import org.apache.tuscany.sca.host.embedded.SCADomain;
+import org.apache.axiom.om.OMElement;
+import org.apache.axiom.om.OMFactory;
+import org.apache.axiom.om.OMAbstractFactory;
+import org.apache.axiom.om.OMText;
+
+/**
+ * This client program shows how to create an SCA runtime, start it,
+ * locate the HelloWorld service and invoke it.
+ */
+public class HelloWorldClient {
+
+    public  final static void main(String[] args) throws Exception {
+        SCADomain scaDomain = SCADomain.newInstance("helloworldwsclient.composite");
+        HelloWorldService helloWorldService = scaDomain.getService(HelloWorldService.class, "HelloWorldServiceComponent");
+
+        OMFactory fac = OMAbstractFactory.getOMFactory();
+        OMElement imageElement = fac.createOMElement("image", null);
+        // Creating the Data Handler for the file.
+        DataHandler dataHandler = new DataHandler(new FileDataSource("C:/attachedfile.jpg"));        
+        //create an OMText node with the above DataHandler and set optimized to true
+        OMText textData = fac.createOMText(dataHandler, true);
+        imageElement.addChild(textData);        
+        
+        String value = helloWorldService.getGreetings("attachedfile.jpg", imageElement);
+        System.out.println(value);
+
+        scaDomain.close();
+    }
+}

Added: tuscany/sandbox/ramkumar/helloworld-ws-reference/src/main/java/helloworld/HelloWorldService.java
URL: http://svn.apache.org/viewvc/tuscany/sandbox/ramkumar/helloworld-ws-reference/src/main/java/helloworld/HelloWorldService.java?rev=711522&view=auto
==============================================================================
--- tuscany/sandbox/ramkumar/helloworld-ws-reference/src/main/java/helloworld/HelloWorldService.java (added)
+++ tuscany/sandbox/ramkumar/helloworld-ws-reference/src/main/java/helloworld/HelloWorldService.java Tue Nov  4 23:12:52 2008
@@ -0,0 +1,30 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you 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 helloworld;
+
+import org.osoa.sca.annotations.Remotable;
+import org.apache.axiom.om.OMElement;
+
+/**
+ * The interface for the helloworld service
+ */
+@Remotable
+public interface HelloWorldService {
+    public String getGreetings(String filename, OMElement attachment) throws Exception;
+}

Added: tuscany/sandbox/ramkumar/helloworld-ws-reference/src/main/java/helloworld/HelloWorldServiceComponent.java
URL: http://svn.apache.org/viewvc/tuscany/sandbox/ramkumar/helloworld-ws-reference/src/main/java/helloworld/HelloWorldServiceComponent.java?rev=711522&view=auto
==============================================================================
--- tuscany/sandbox/ramkumar/helloworld-ws-reference/src/main/java/helloworld/HelloWorldServiceComponent.java (added)
+++ tuscany/sandbox/ramkumar/helloworld-ws-reference/src/main/java/helloworld/HelloWorldServiceComponent.java Tue Nov  4 23:12:52 2008
@@ -0,0 +1,44 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you 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 helloworld;
+
+import org.apache.axiom.om.OMElement;
+
+/**
+ * The HelloWorld service implementation
+ */
+public class HelloWorldServiceComponent implements HelloWorldService {
+   
+    HelloWorldService helloWorldService;
+
+    public String getGreetings(String filename, OMElement attachment) throws Exception {
+        System.out.println("Called getGreetings");
+        return helloWorldService.getGreetings(filename, attachment);
+    }
+
+    public HelloWorldService getHelloWorldService() {
+        System.out.println("Got Injected helloWorldService");
+        return helloWorldService;
+    }
+
+    public void setHelloWorldService(HelloWorldService helloWorldService) {
+        System.out.println("Injected helloWorldService");        
+        this.helloWorldService = helloWorldService;
+    }
+}
\ No newline at end of file

Added: tuscany/sandbox/ramkumar/helloworld-ws-reference/src/main/resources/helloworldwsclient.composite
URL: http://svn.apache.org/viewvc/tuscany/sandbox/ramkumar/helloworld-ws-reference/src/main/resources/helloworldwsclient.composite?rev=711522&view=auto
==============================================================================
--- tuscany/sandbox/ramkumar/helloworld-ws-reference/src/main/resources/helloworldwsclient.composite (added)
+++ tuscany/sandbox/ramkumar/helloworld-ws-reference/src/main/resources/helloworldwsclient.composite Tue Nov  4 23:12:52 2008
@@ -0,0 +1,47 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you 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.    
+-->
+<composite xmlns="http://www.osoa.org/xmlns/sca/1.0"
+	targetNamespace="http://helloworld"
+	xmlns:hw="http://helloworld"
+	name="helloworldwsclient">
+    
+    <!-- A component with an embedded reference definition connecting to an external webservice 
+         The wsdl interface for the reference is derived from the information specified by the 'wsdlElement'
+     -->
+    <component name="HelloTuscanyServiceComponent">
+      <implementation.java class="helloworld.HelloWorldServiceComponent"/>
+      <reference name="helloWorldService">
+        <binding.ws uri="http://localhost:8085/HelloWorldService"/>
+        <!--<binding.ws wsdlElement="http://helloworld#wsdl.port(HelloWorldService/HelloWorldSoapPort)"/>
+      --></reference>
+    </component>
+    
+    <!-- A component with a reference promoted as a composite reference -->
+    <component name="HelloWorldServiceComponent">
+      <implementation.java class="helloworld.HelloWorldServiceComponent"/>
+    </component>
+    
+    <reference name="HelloWorldService" promote="HelloWorldServiceComponent/helloWorldService">
+        <!--<interface.java interface="helloworld.HelloWorldService" />
+        <binding.ws wsdlElement="http://helloworld#wsdl.port(HelloWorldService/HelloWorldSoapPort)"/>-->
+        <binding.ws uri="http://localhost:8085/HelloWorldService"/>
+    </reference>
+
+</composite>

Added: tuscany/sandbox/ramkumar/helloworld-ws-reference/src/main/resources/logging.properties
URL: http://svn.apache.org/viewvc/tuscany/sandbox/ramkumar/helloworld-ws-reference/src/main/resources/logging.properties?rev=711522&view=auto
==============================================================================
--- tuscany/sandbox/ramkumar/helloworld-ws-reference/src/main/resources/logging.properties (added)
+++ tuscany/sandbox/ramkumar/helloworld-ws-reference/src/main/resources/logging.properties Tue Nov  4 23:12:52 2008
@@ -0,0 +1,30 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you 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.    
+#
+#  $Rev: 463856 $ $Date: 2006-10-14 03:54:29 +0530 (Sat, 14 Oct 2006) $
+#
+
+# Custom logging configuration for Tuscany samples
+# By default, only INFO level logging is enabled and ALL messages get sent to the console
+# For more messages from the runtime, uncomment specific settings at the end of this file
+handlers = java.util.logging.ConsoleHandler
+java.util.logging.ConsoleHandler.level = ALL
+java.util.logging.ConsoleHandler.formatter = java.util.logging.SimpleFormatter
+.level=INFO
+
+# Uncomment the next setting to get all Tuscany messages (this will be a lot)
+#org.apache.tuscany.level=FINEST

Added: tuscany/sandbox/ramkumar/helloworld-ws-reference/src/main/resources/wsdl/helloworld.wsdl
URL: http://svn.apache.org/viewvc/tuscany/sandbox/ramkumar/helloworld-ws-reference/src/main/resources/wsdl/helloworld.wsdl?rev=711522&view=auto
==============================================================================
--- tuscany/sandbox/ramkumar/helloworld-ws-reference/src/main/resources/wsdl/helloworld.wsdl (added)
+++ tuscany/sandbox/ramkumar/helloworld-ws-reference/src/main/resources/wsdl/helloworld.wsdl Tue Nov  4 23:12:52 2008
@@ -0,0 +1,92 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you 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://helloworld" xmlns:tns="http://helloworld" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:wsdlsoap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:xsd="http://www.w3.org/2001/XMLSchema"
+	name="helloworld">
+
+    <wsdl:types>
+        <schema elementFormDefault="qualified" targetNamespace="http://helloworld" xmlns="http://www.w3.org/2001/XMLSchema">
+
+            <element name="getGreetings">
+                <complexType>
+                    <sequence>
+                        <element name="name" 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="tns:getGreetings" name="parameters"/>
+    </wsdl:message>
+
+    <wsdl:message name="getGreetingsResponse">
+        <wsdl:part element="tns:getGreetingsResponse" name="parameters"/>
+    </wsdl:message>
+
+    <wsdl:portType name="HelloWorld">
+        <wsdl:operation name="getGreetings">
+            <wsdl:input message="tns:getGreetingsRequest" name="getGreetingsRequest"/>
+            <wsdl:output message="tns:getGreetingsResponse" name="getGreetingsResponse"/>
+        </wsdl:operation>
+    </wsdl:portType>
+
+    <wsdl:binding name="HelloWorldSoapBinding" type="tns:HelloWorld">
+        <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:binding name="HelloWorldSoapJmsBinding" type="tns:HelloWorld">
+        <wsdlsoap:binding style="document" transport="http://schemas.xmlsoap.org/soap/jms"/>
+        <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="HelloWorldService">
+        <wsdl:port binding="tns:HelloWorldSoapBinding" name="HelloWorldSoapPort">
+            <wsdlsoap:address location="http://localhost:8085/HelloWorldService"/>
+        </wsdl:port>
+    </wsdl:service>
+
+</wsdl:definitions>

Added: tuscany/sandbox/ramkumar/helloworld-ws-service/README
URL: http://svn.apache.org/viewvc/tuscany/sandbox/ramkumar/helloworld-ws-service/README?rev=711522&view=auto
==============================================================================
--- tuscany/sandbox/ramkumar/helloworld-ws-service/README (added)
+++ tuscany/sandbox/ramkumar/helloworld-ws-service/README Tue Nov  4 23:12:52 2008
@@ -0,0 +1,141 @@
+Hello World Web Service Service Sample
+======================================
+This sample demonstrates an SCA service that uses a web service binding. 
+
+The README in the samples directory (the directory above this) provides 
+general instructions about building and running samples. Take a look there 
+first. 
+
+If you just want to run it to see what happens open a command prompt, navigate
+to this sample directory and do:
+
+ant run
+
+OR if you don't have ant, on Windows do
+
+java -cp ..\..\lib\tuscany-sca-manifest.jar;target\sample-helloworld-ws-service.jar helloworld.HelloWorldServer
+
+and on *nix do
+
+java -cp ../../lib/tuscany-sca-manifest.jar:target/sample-helloworld-ws-service.jar helloworld.HelloWorldServer
+
+Now the server is started you can use the helloworld-ws-reference sample to 
+exercise it. 
+
+Sample Overview
+---------------
+The sample provides a single component that is wired to a service with a 
+web service binding.
+
+helloworld-ws-service/
+  src/
+    main/
+      java/
+        helloworld/
+          HelloWorldService.java          - interface description for 
+                                            HelloWorldServiceComponent
+          HelloWorldImpl.java             - component implementation
+          HelloWorldServer.java           - starts the SCA Runtime and 
+                                            deploys the helloworldws
+                                            .composite and then waits for the
+                                            service to be called via web services
+      resources/
+        wsdl/
+          helloworld.wsdl                 - the service description that describes
+                                            the exposed service
+        helloworldws.composite            - the SCA assembly for this sample
+    test/
+      java/
+        helloworld/
+          HelloWorldServerTestCase.java   - JUnit test case 
+  helloworld-ws-service.png               - a pictorial representation of the 
+                                            sample .composite file
+  build.xml                               - the Ant build file
+  pom.xml                                 - the Maven build file        
+
+Building And Running The Sample Using Ant
+-----------------------------------------
+With the binary distribution the sample can be built and run using Ant using the 
+following commands
+
+cd helloworld-ws-service
+ant compile
+ant run
+
+You should see the following output from the run target.
+
+run:
+     [java] 14-Jan-2008 14:18:47 org.apache.tuscany.sca.http.jetty.JettyServer a
+ddServletMapping
+     [java] INFO: Added Servlet mapping: http://L3AW203:8085/HelloWorldService
+     [java] HelloWorld server started (press enter to shutdown)
+     
+As this point the SCA service is exposed as a web service by a web server 
+started automatically by the SCA runtime. To stop the server just press 
+enter.
+
+To exercise the service run up the helloworld-ws-reference sample. Take a look at 
+the README in that sample and you will see you need the following commands
+
+cd helloworld-ws-reference
+ant run
+
+Building And Running The Sample Using Maven 
+-------------------------------------------
+With either the binary or source distributions the sample can be built and run 
+using Maven as follows. When using Maven you don't need to run the helloworld-
+ws-reference sample as Maven includes a simple ping test to make sure that the
+service is available
+
+cd helloworld-ws-service
+mvn
+
+You should see the following output from the test phase.
+
+-------------------------------------------------------
+ T E S T S
+-------------------------------------------------------
+Running helloworld.HelloWorldServerTestCase
+14-Jan-2008 14:19:57 org.apache.catalina.core.StandardEngine start
+INFO: Starting Servlet Engine: Apache Tomcat/6.0.10
+14-Jan-2008 14:19:57 org.apache.catalina.startup.ContextConfig defaultWebConfig
+INFO: No default web.xml
+14-Jan-2008 14:19:57 org.apache.catalina.startup.DigesterFactory register
+WARNING: Could not get url for /javax/servlet/jsp/resources/jsp_2_0.xsd
+14-Jan-2008 14:19:57 org.apache.catalina.startup.DigesterFactory register
+WARNING: Could not get url for /javax/servlet/jsp/resources/web-jsptaglibrary_1_
+1.dtd
+14-Jan-2008 14:19:57 org.apache.catalina.startup.DigesterFactory register
+WARNING: Could not get url for /javax/servlet/jsp/resources/web-jsptaglibrary_1_
+2.dtd
+14-Jan-2008 14:19:57 org.apache.catalina.startup.DigesterFactory register
+WARNING: Could not get url for /javax/servlet/jsp/resources/web-jsptaglibrary_2_
+0.xsd
+14-Jan-2008 14:19:57 org.apache.catalina.startup.DigesterFactory register
+WARNING: Could not get url for /javax/servlet/resources/j2ee_web_services_1_1.xs
+d
+14-Jan-2008 14:19:57 org.apache.coyote.http11.Http11Protocol init
+INFO: Initializing Coyote HTTP/1.1 on http-8085
+14-Jan-2008 14:19:57 org.apache.coyote.http11.Http11Protocol start
+INFO: Starting Coyote HTTP/1.1 on http-8085
+14-Jan-2008 14:19:57 org.apache.tuscany.sca.http.tomcat.TomcatServer addServletM
+apping
+INFO: Added Servlet mapping: http://L3AW203:8085/HelloWorldService
+14-Jan-2008 14:19:57 org.apache.coyote.http11.Http11Protocol destroy
+INFO: Stopping Coyote HTTP/1.1 on http-8085
+14-Jan-2008 14:19:58 org.apache.catalina.core.StandardEngine start
+INFO: Starting Servlet Engine: Apache Tomcat/6.0.10
+14-Jan-2008 14:19:58 org.apache.catalina.startup.ContextConfig defaultWebConfig
+INFO: No default web.xml
+14-Jan-2008 14:19:58 org.apache.coyote.http11.Http11Protocol init
+INFO: Initializing Coyote HTTP/1.1 on http-8085
+14-Jan-2008 14:19:58 org.apache.coyote.http11.Http11Protocol start
+INFO: Starting Coyote HTTP/1.1 on http-8085
+14-Jan-2008 14:19:58 org.apache.tuscany.sca.http.tomcat.TomcatServer addServletM
+apping
+INFO: Added Servlet mapping: http://L3AW203:8085/HelloWorldService
+14-Jan-2008 14:19:59 org.apache.coyote.http11.Http11Protocol destroy
+INFO: Stopping Coyote HTTP/1.1 on http-8085
+Tests run: 2, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 6.75 sec
+
+This shows that the Junit test cases have run successfully. 

Added: tuscany/sandbox/ramkumar/helloworld-ws-service/build.xml
URL: http://svn.apache.org/viewvc/tuscany/sandbox/ramkumar/helloworld-ws-service/build.xml?rev=711522&view=auto
==============================================================================
--- tuscany/sandbox/ramkumar/helloworld-ws-service/build.xml (added)
+++ tuscany/sandbox/ramkumar/helloworld-ws-service/build.xml Tue Nov  4 23:12:52 2008
@@ -0,0 +1,72 @@
+<!--
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you 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.    
+-->
+<project name="helloworld-ws-service" default="compile">
+    <property name="test.class" value="helloworld.HelloWorldServer" />
+	<property name="test.jar"   value="sample-helloworld-ws-service.jar" />
+	
+    <target name="init">
+        <mkdir dir="target/classes"/>
+    </target>
+	
+    <target name="compile" depends="init">
+        <javac srcdir="src/main/java"
+               destdir="target/classes"
+               debug="on"
+               source="1.5"
+               target="1.5">
+            <classpath>
+            	<pathelement location="../../lib/tuscany-sca-manifest.jar"/>
+            </classpath>
+        </javac> 
+        <copy todir="target/classes">
+            <fileset dir="src/main/resources"/>
+        </copy>
+        <jar destfile="target/${test.jar}" basedir="target/classes">
+            <manifest>
+                <attribute name="Main-Class" value="${test.class}" /> 
+            </manifest>
+        </jar>    	
+    </target>	
+	
+    <target name="run-classes">
+        <java classname="${test.class}"
+              fork="true">
+            <classpath>
+                <pathelement path="target/classes"/>
+            	<pathelement location="../../lib/tuscany-sca-manifest.jar"/>
+            </classpath>
+        </java>
+    </target>
+	
+    <target name="run">
+        <java classname="${test.class}"
+              fork="true">
+            <classpath>
+                <pathelement path="target/${test.jar}"/>
+            	<pathelement location="../../lib/tuscany-sca-manifest.jar"/>
+            </classpath>
+        </java>    	
+    </target>
+	
+    <target name="clean">
+        <delete quiet="true" includeemptydirs="true">
+            <fileset dir="target"/>
+        </delete>
+    </target>
+</project>

Added: tuscany/sandbox/ramkumar/helloworld-ws-service/pom.xml
URL: http://svn.apache.org/viewvc/tuscany/sandbox/ramkumar/helloworld-ws-service/pom.xml?rev=711522&view=auto
==============================================================================
--- tuscany/sandbox/ramkumar/helloworld-ws-service/pom.xml (added)
+++ tuscany/sandbox/ramkumar/helloworld-ws-service/pom.xml Tue Nov  4 23:12:52 2008
@@ -0,0 +1,79 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+    * Licensed to the Apache Software Foundation (ASF) under one
+    * or more contributor license agreements.  See the NOTICE file
+    * distributed with this work for additional information
+    * regarding copyright ownership.  The ASF licenses this file
+    * to you 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.    
+-->
+<project>
+    <modelVersion>4.0.0</modelVersion>
+    <parent>
+        <groupId>org.apache.tuscany.sca</groupId>
+        <artifactId>tuscany-sca</artifactId>
+        <version>1.4-SNAPSHOT</version>
+        <relativePath>../../pom.xml</relativePath>
+    </parent>
+    <artifactId>sample-helloworld-ws-service</artifactId>
+    <name>Apache Tuscany SCA HelloWorld Web Service Sample</name>
+
+    <repositories>
+       <repository>
+          <id>apache.incubator</id>
+          <url>http://people.apache.org/repo/m2-incubating-repository</url>
+       </repository>
+    </repositories>
+
+    <dependencies>
+        <dependency>
+            <groupId>org.apache.tuscany.sca</groupId>
+            <artifactId>tuscany-host-embedded</artifactId>
+            <version>1.4-SNAPSHOT</version>
+            <scope>compile</scope>            
+        </dependency>
+        
+        <dependency>
+            <groupId>org.apache.tuscany.sca</groupId>
+            <artifactId>tuscany-implementation-java-runtime</artifactId>
+            <version>1.4-SNAPSHOT</version>
+            <scope>runtime</scope>
+        </dependency>
+
+        <dependency>
+            <groupId>org.apache.tuscany.sca</groupId>
+            <artifactId>tuscany-binding-ws-axis2</artifactId>
+            <version>1.4-SNAPSHOT</version>
+            <scope>runtime</scope>
+        </dependency>
+
+        <dependency>
+            <groupId>org.apache.tuscany.sca</groupId>
+            <artifactId>tuscany-host-tomcat</artifactId>
+            <version>1.4-SNAPSHOT</version>
+            <scope>runtime</scope>
+        </dependency>    
+
+        <dependency>
+            <groupId>junit</groupId>
+            <artifactId>junit</artifactId>
+            <version>4.5</version>
+            <scope>test</scope>
+        </dependency>
+    </dependencies>
+    
+    <build>
+       <finalName>${artifactId}</finalName>
+    </build>
+
+</project>

Added: tuscany/sandbox/ramkumar/helloworld-ws-service/src/main/java/helloworld/HelloWorldImpl.java
URL: http://svn.apache.org/viewvc/tuscany/sandbox/ramkumar/helloworld-ws-service/src/main/java/helloworld/HelloWorldImpl.java?rev=711522&view=auto
==============================================================================
--- tuscany/sandbox/ramkumar/helloworld-ws-service/src/main/java/helloworld/HelloWorldImpl.java (added)
+++ tuscany/sandbox/ramkumar/helloworld-ws-service/src/main/java/helloworld/HelloWorldImpl.java Tue Nov  4 23:12:52 2008
@@ -0,0 +1,48 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you 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 helloworld;
+
+import org.osoa.sca.annotations.Service;
+import org.apache.axiom.om.OMElement;
+import org.apache.axiom.om.OMText;
+import javax.activation.DataHandler;
+import java.io.File;
+import java.io.FileOutputStream;
+
+/**
+ * This class implements the HelloWorld service.
+ */
+@Service(HelloWorldService.class)
+public class HelloWorldImpl implements HelloWorldService {
+
+    public String getGreetings(String filename, OMElement attachment) throws Exception {
+        
+        OMText binaryNode = (OMText) (attachment.getFirstElement()).getFirstOMChild();
+        DataHandler dataHandler = (DataHandler) binaryNode.getDataHandler();
+        
+        File file = new File(filename);
+        FileOutputStream fileOutputStream = new FileOutputStream(file);
+        dataHandler.writeTo(fileOutputStream);        
+        fileOutputStream.flush();
+        fileOutputStream.close();
+        
+        return "File saved succesfully: " + filename;
+    }
+
+}

Added: tuscany/sandbox/ramkumar/helloworld-ws-service/src/main/java/helloworld/HelloWorldServer.java
URL: http://svn.apache.org/viewvc/tuscany/sandbox/ramkumar/helloworld-ws-service/src/main/java/helloworld/HelloWorldServer.java?rev=711522&view=auto
==============================================================================
--- tuscany/sandbox/ramkumar/helloworld-ws-service/src/main/java/helloworld/HelloWorldServer.java (added)
+++ tuscany/sandbox/ramkumar/helloworld-ws-service/src/main/java/helloworld/HelloWorldServer.java Tue Nov  4 23:12:52 2008
@@ -0,0 +1,46 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you 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 helloworld;
+
+import java.io.IOException;
+
+import org.apache.tuscany.sca.host.embedded.SCADomain;
+
+/**
+ * This server program shows how to create an SCA runtime, and start it which
+ * activates the helloworld Web service endpoint.
+ */
+public class HelloWorldServer {
+
+    public static void main(String[] args) {
+
+        SCADomain scaDomain = SCADomain.newInstance("META-INF/sca-deployables/helloworldws.composite");
+
+        try {
+            System.out.println("HelloWorld server started (press enter to shutdown)");
+            System.in.read();
+        } catch (IOException e) {
+            e.printStackTrace();
+        }
+
+        scaDomain.close();
+        System.out.println("HelloWorld server stopped");
+    }
+
+}

Added: tuscany/sandbox/ramkumar/helloworld-ws-service/src/main/java/helloworld/HelloWorldService.java
URL: http://svn.apache.org/viewvc/tuscany/sandbox/ramkumar/helloworld-ws-service/src/main/java/helloworld/HelloWorldService.java?rev=711522&view=auto
==============================================================================
--- tuscany/sandbox/ramkumar/helloworld-ws-service/src/main/java/helloworld/HelloWorldService.java (added)
+++ tuscany/sandbox/ramkumar/helloworld-ws-service/src/main/java/helloworld/HelloWorldService.java Tue Nov  4 23:12:52 2008
@@ -0,0 +1,32 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you 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 helloworld;
+
+import org.osoa.sca.annotations.Remotable;
+import org.apache.axiom.om.OMElement;
+
+/**
+ * This is the business interface of the HelloWorld greetings service.
+ */
+@Remotable
+public interface HelloWorldService {
+
+    public String getGreetings(String filename, OMElement attachment) throws Exception;
+}
+

Added: tuscany/sandbox/ramkumar/helloworld-ws-service/src/main/resources/META-INF/sca-deployables/helloworldws.composite
URL: http://svn.apache.org/viewvc/tuscany/sandbox/ramkumar/helloworld-ws-service/src/main/resources/META-INF/sca-deployables/helloworldws.composite?rev=711522&view=auto
==============================================================================
--- tuscany/sandbox/ramkumar/helloworld-ws-service/src/main/resources/META-INF/sca-deployables/helloworldws.composite (added)
+++ tuscany/sandbox/ramkumar/helloworld-ws-service/src/main/resources/META-INF/sca-deployables/helloworldws.composite Tue Nov  4 23:12:52 2008
@@ -0,0 +1,33 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+    * Licensed to the Apache Software Foundation (ASF) under one
+    * or more contributor license agreements.  See the NOTICE file
+    * distributed with this work for additional information
+    * regarding copyright ownership.  The ASF licenses this file
+    * to you 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.    
+-->
+<composite xmlns="http://www.osoa.org/xmlns/sca/1.0"
+	targetNamespace="http://helloworld"
+	xmlns:hw="http://helloworld"
+    name="helloworldws">
+
+    <component name="HelloWorldServiceComponent">
+        <implementation.java class="helloworld.HelloWorldImpl" />
+	    <service name="HelloWorldService">
+	        <!-- interface.wsdl interface="http://helloworld#wsdl.interface(HelloWorld)" /-->
+	        <binding.ws uri="http://localhost:8085/HelloWorldService"/>
+	    </service>
+    </component>
+
+</composite>

Added: tuscany/sandbox/ramkumar/helloworld-ws-service/src/main/resources/wsdl/helloworld.wsdl
URL: http://svn.apache.org/viewvc/tuscany/sandbox/ramkumar/helloworld-ws-service/src/main/resources/wsdl/helloworld.wsdl?rev=711522&view=auto
==============================================================================
--- tuscany/sandbox/ramkumar/helloworld-ws-service/src/main/resources/wsdl/helloworld.wsdl (added)
+++ tuscany/sandbox/ramkumar/helloworld-ws-service/src/main/resources/wsdl/helloworld.wsdl Tue Nov  4 23:12:52 2008
@@ -0,0 +1,79 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you 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://helloworld" xmlns:tns="http://helloworld" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:wsdlsoap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:xsd="http://www.w3.org/2001/XMLSchema"
+	name="helloworld">
+
+    <wsdl:types>
+        <schema elementFormDefault="qualified" targetNamespace="http://helloworld" xmlns="http://www.w3.org/2001/XMLSchema">
+
+            <element name="getGreetings">
+                <complexType>
+                    <sequence>
+                        <element name="name" type="xsd:string"/>
+                    </sequence>
+                </complexType>
+            </element>
+
+            <element name="getGreetingsResponse">
+                <complexType>
+                    <sequence>
+                        <element name="getGreetingsReturn" type="xsd:hexbinary"/>
+                    </sequence>
+                </complexType>
+            </element>
+            
+        </schema>
+    </wsdl:types>
+
+    <wsdl:message name="getGreetingsRequest">
+        <wsdl:part element="tns:getGreetings" name="parameters"/>
+    </wsdl:message>
+
+    <wsdl:message name="getGreetingsResponse">
+        <wsdl:part element="tns:getGreetingsResponse" name="parameters"/>
+    </wsdl:message>
+
+    <wsdl:portType name="HelloWorld">
+        <wsdl:operation name="getGreetings">
+            <wsdl:input message="tns:getGreetingsRequest" name="getGreetingsRequest"/>
+            <wsdl:output message="tns:getGreetingsResponse" name="getGreetingsResponse"/>
+        </wsdl:operation>
+    </wsdl:portType>
+
+    <wsdl:binding name="HelloWorldSoapBinding" type="tns:HelloWorld">
+        <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="HelloWorldService">
+        <wsdl:port binding="tns:HelloWorldSoapBinding" name="HelloWorldSoapPort">
+            <wsdlsoap:address location="http://localhost:8085/HelloWorldServiceComponent"/>
+        </wsdl:port>
+    </wsdl:service>
+
+</wsdl:definitions>



Mime
View raw message