You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tuscany.apache.org by sl...@apache.org on 2008/01/22 17:49:18 UTC

svn commit: r614253 - in /incubator/tuscany/java/sca/samples: ./ helloworld-reference-jms/ helloworld-reference-jms/src/ helloworld-reference-jms/src/main/ helloworld-reference-jms/src/main/java/ helloworld-reference-jms/src/main/java/helloworld/ hello...

Author: slaws
Date: Tue Jan 22 08:49:15 2008
New Revision: 614253

URL: http://svn.apache.org/viewvc?rev=614253&view=rev
Log:
A helloworld JMS sample (the same scenario used in binding.jms unit tests)

Added:
    incubator/tuscany/java/sca/samples/helloworld-reference-jms/   (with props)
    incubator/tuscany/java/sca/samples/helloworld-reference-jms/README
    incubator/tuscany/java/sca/samples/helloworld-reference-jms/build.xml
    incubator/tuscany/java/sca/samples/helloworld-reference-jms/helloworld-ws-reference.png   (with props)
    incubator/tuscany/java/sca/samples/helloworld-reference-jms/helloworld-ws-reference.svg
    incubator/tuscany/java/sca/samples/helloworld-reference-jms/pom.xml
    incubator/tuscany/java/sca/samples/helloworld-reference-jms/src/
    incubator/tuscany/java/sca/samples/helloworld-reference-jms/src/main/
    incubator/tuscany/java/sca/samples/helloworld-reference-jms/src/main/java/
    incubator/tuscany/java/sca/samples/helloworld-reference-jms/src/main/java/helloworld/
    incubator/tuscany/java/sca/samples/helloworld-reference-jms/src/main/java/helloworld/HelloWorldImpl.java
    incubator/tuscany/java/sca/samples/helloworld-reference-jms/src/main/java/helloworld/HelloWorldJmsClient.java
    incubator/tuscany/java/sca/samples/helloworld-reference-jms/src/main/java/helloworld/HelloWorldService.java
    incubator/tuscany/java/sca/samples/helloworld-reference-jms/src/main/java/helloworld/HelloWorldServiceComponent.java
    incubator/tuscany/java/sca/samples/helloworld-reference-jms/src/main/resources/
    incubator/tuscany/java/sca/samples/helloworld-reference-jms/src/main/resources/helloworldjmsreference.composite
    incubator/tuscany/java/sca/samples/helloworld-reference-jms/src/main/resources/helloworldjmsservice.composite
    incubator/tuscany/java/sca/samples/helloworld-reference-jms/src/main/resources/logging.properties
    incubator/tuscany/java/sca/samples/helloworld-reference-jms/src/main/resources/wsdl/
    incubator/tuscany/java/sca/samples/helloworld-reference-jms/src/main/resources/wsdl/helloworld.wsdl
    incubator/tuscany/java/sca/samples/helloworld-reference-jms/src/test/
    incubator/tuscany/java/sca/samples/helloworld-reference-jms/src/test/java/
    incubator/tuscany/java/sca/samples/helloworld-reference-jms/src/test/java/helloworld/
    incubator/tuscany/java/sca/samples/helloworld-reference-jms/src/test/java/helloworld/HelloWorldJmsClientTestCase.java
    incubator/tuscany/java/sca/samples/helloworld-service-jms/   (with props)
    incubator/tuscany/java/sca/samples/helloworld-service-jms/README
    incubator/tuscany/java/sca/samples/helloworld-service-jms/build.xml
    incubator/tuscany/java/sca/samples/helloworld-service-jms/helloworld-ws-service.png   (with props)
    incubator/tuscany/java/sca/samples/helloworld-service-jms/helloworld-ws-service.svg
    incubator/tuscany/java/sca/samples/helloworld-service-jms/pom.xml
    incubator/tuscany/java/sca/samples/helloworld-service-jms/src/
    incubator/tuscany/java/sca/samples/helloworld-service-jms/src/main/
    incubator/tuscany/java/sca/samples/helloworld-service-jms/src/main/java/
    incubator/tuscany/java/sca/samples/helloworld-service-jms/src/main/java/helloworld/
    incubator/tuscany/java/sca/samples/helloworld-service-jms/src/main/java/helloworld/HelloWorldImpl.java
    incubator/tuscany/java/sca/samples/helloworld-service-jms/src/main/java/helloworld/HelloWorldServer.java
    incubator/tuscany/java/sca/samples/helloworld-service-jms/src/main/java/helloworld/HelloWorldService.java
    incubator/tuscany/java/sca/samples/helloworld-service-jms/src/main/resources/
    incubator/tuscany/java/sca/samples/helloworld-service-jms/src/main/resources/definitions.xml
    incubator/tuscany/java/sca/samples/helloworld-service-jms/src/main/resources/helloworldjmsservice.composite
    incubator/tuscany/java/sca/samples/helloworld-service-jms/src/main/resources/wsdl/
    incubator/tuscany/java/sca/samples/helloworld-service-jms/src/main/resources/wsdl/helloworld.wsdl
    incubator/tuscany/java/sca/samples/helloworld-service-jms/src/test/
    incubator/tuscany/java/sca/samples/helloworld-service-jms/src/test/java/
    incubator/tuscany/java/sca/samples/helloworld-service-jms/src/test/java/helloworld/
    incubator/tuscany/java/sca/samples/helloworld-service-jms/src/test/java/helloworld/HelloWorldJmsServerTestCaseOff.java
Modified:
    incubator/tuscany/java/sca/samples/pom.xml

Propchange: incubator/tuscany/java/sca/samples/helloworld-reference-jms/
------------------------------------------------------------------------------
--- svn:ignore (added)
+++ svn:ignore Tue Jan 22 08:49:15 2008
@@ -0,0 +1,3 @@
+.classpath
+.project
+.settings

Added: incubator/tuscany/java/sca/samples/helloworld-reference-jms/README
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/samples/helloworld-reference-jms/README?rev=614253&view=auto
==============================================================================
--- incubator/tuscany/java/sca/samples/helloworld-reference-jms/README (added)
+++ incubator/tuscany/java/sca/samples/helloworld-reference-jms/README Tue Jan 22 08:49:15 2008
@@ -0,0 +1,127 @@
+Hello World Web Service References Sample
+=========================================
+This sample demonstrates an SCA reference that uses a web service binding running
+over a JMS protocl. 
+
+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-jms 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-jms.jar helloworld.HelloWorldServer
+
+and on *nix do
+
+java -cp ../../lib/tuscany-sca-manifest.jar:target/sample-helloworld-ws-service-jms.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-jms.jar helloworld.HelloWorldJmsClient
+
+and on *nix do
+
+java -cp ../../lib/tuscany-sca-manifest.jar:target/sample-helloworld-ws-reference-jms.jar helloworld.HelloWorldJmsClient
+
+
+Sample Overview
+---------------
+The sample provides two components that are have a reference with a 
+web service binding. The binding refers to WSDL that identifies the service
+exposed by the helloworld-ws-service-jms sample. 
+
+helloworld-ws-reference-jms/
+  src/
+    main/
+      java/
+        helloworld/
+          HelloWorldService.java          - interface description for 
+                                            HelloWorldServiceComponent
+          HelloWorldServiceComponent.java - component implementation
+          HelloWorldJmsClient.java         - starts the SCA Runtime and 
+                                            deploys the helloworldwsjmsclient
+                                            .composite. It then calls the 
+                                            HelloWorldServiceComponent
+      resources/
+        wsdl
+          helloworld.wsdl                 - the service description that the 
+                                            SCA reference uses to bind to 
+        helloworldwsjmsclient.composite   - the SCA assembly for this sample
+        helloworldwsjms.composite         - the SCA assembly for the server
+                                            that is used by the JUnit tests
+        logging.properties                - log4j configuration file
+    test/
+      java/
+        helloworld/
+          HelloWorldJMSClientTestCase.java - JUnit test case
+  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-jms test. Take a look at the README in that sample
+and you will see you need the following commands
+
+cd helloworld-ws-service-jms
+ant run
+
+Once done you can now compile and run this sample using the following commands;
+
+cd helloworld-ws-reference-jms
+ant compile
+ant run
+
+You should see the following output from the run target.
+
+run:
+     [java] log4j:WARN No appenders could be found for logger (org.apache.axiom.
+om.util.StAXUtils).
+     [java] log4j:WARN Please initialize the log4j system properly.
+     [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-jms sample first as the JUnit test does this for you. 
+
+cd helloworld-ws-reference-jms
+mvn
+
+You should see the following output from the test phase.
+
+-------------------------------------------------------
+ T E S T S
+-------------------------------------------------------
+Running helloworld.HelloWorldJmsClientTestCase
+08-Jan-2008 10:40:15 org.apache.tuscany.sca.binding.ws.axis2.Axis2ServiceProvide
+r start
+INFO: Axis2 JMS URL=jms:/queue.sample?transport.jms.ConnectionFactoryJNDIName=Qu
+eueConnectionFactory&java.naming.factory.initial=org.apache.activemq.jndi.Active
+MQInitialContextFactory&java.naming.provider.url=tcp://localhost:61619
+Injected helloWorldService
+Called getGreetings
+Injected helloWorldService
+Called getGreetings
+Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 11.89 sec
+
+
+This shows that the Junit test cases have run successfully. 

Added: incubator/tuscany/java/sca/samples/helloworld-reference-jms/build.xml
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/samples/helloworld-reference-jms/build.xml?rev=614253&view=auto
==============================================================================
--- incubator/tuscany/java/sca/samples/helloworld-reference-jms/build.xml (added)
+++ incubator/tuscany/java/sca/samples/helloworld-reference-jms/build.xml Tue Jan 22 08:49:15 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-jms" default="compile">
+    <property name="test.class" value="helloworld.HelloWorldJmsClient" />
+	<property name="test.jar"   value="sample-helloworld-reference-jms.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: incubator/tuscany/java/sca/samples/helloworld-reference-jms/helloworld-ws-reference.png
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/samples/helloworld-reference-jms/helloworld-ws-reference.png?rev=614253&view=auto
==============================================================================
Binary file - no diff available.

Propchange: incubator/tuscany/java/sca/samples/helloworld-reference-jms/helloworld-ws-reference.png
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: incubator/tuscany/java/sca/samples/helloworld-reference-jms/helloworld-ws-reference.svg
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/samples/helloworld-reference-jms/helloworld-ws-reference.svg?rev=614253&view=auto
==============================================================================
--- incubator/tuscany/java/sca/samples/helloworld-reference-jms/helloworld-ws-reference.svg (added)
+++ incubator/tuscany/java/sca/samples/helloworld-reference-jms/helloworld-ws-reference.svg Tue Jan 22 08:49:15 2008
@@ -0,0 +1,150 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!--
+ * 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.
+-->
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+<svg
+   xmlns:dc="http://purl.org/dc/elements/1.1/"
+   xmlns:cc="http://web.resource.org/cc/"
+   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+   xmlns:svg="http://www.w3.org/2000/svg"
+   xmlns="http://www.w3.org/2000/svg"
+   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+   width="1052.3622"
+   height="744.09448"
+   id="svg2"
+   sodipodi:version="0.32"
+   inkscape:version="0.44"
+   sodipodi:docbase="C:\simon\Projects\Tuscany\java\java-head\sca\samples\helloworld-ws-reference"
+   sodipodi:docname="helloworld-ws-reference.svg"
+   version="1.0"
+   inkscape:export-filename="C:\simon\Projects\Tuscany\java\java-head\sca\samples\helloworld-ws-reference\helloworld-ws-reference.png"
+   inkscape:export-xdpi="52.84"
+   inkscape:export-ydpi="52.84">
+  <defs
+     id="defs4" />
+  <sodipodi:namedview
+     id="base"
+     pagecolor="#ffffff"
+     bordercolor="#666666"
+     borderopacity="1.0"
+     gridtolerance="10000"
+     guidetolerance="10"
+     objecttolerance="10"
+     inkscape:pageopacity="0.0"
+     inkscape:pageshadow="2"
+     inkscape:zoom="1.4"
+     inkscape:cx="519.38407"
+     inkscape:cy="414.63224"
+     inkscape:document-units="px"
+     inkscape:current-layer="layer1"
+     inkscape:window-width="1054"
+     inkscape:window-height="721"
+     inkscape:window-x="85"
+     inkscape:window-y="295" />
+  <metadata
+     id="metadata7">
+    <rdf:RDF>
+      <cc:Work
+         rdf:about="">
+        <dc:format>image/svg+xml</dc:format>
+        <dc:type
+           rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+      </cc:Work>
+    </rdf:RDF>
+  </metadata>
+  <g
+     inkscape:label="Layer 1"
+     inkscape:groupmode="layer"
+     id="layer1">
+    <g
+       id="g2997"
+       transform="matrix(0.991389,0,0,1,2.215655,0)">
+      <rect
+         rx="13.79423"
+         ry="12.692303"
+         y="192.00233"
+         x="258.3114"
+         height="299.99988"
+         width="446.72086"
+         id="rect2067"
+         style="opacity:1;fill:#90baf4;fill-opacity:1;stroke:#060000;stroke-width:2.00866628;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" />
+      <flowRoot
+         id="flowRoot2954"
+         xml:space="preserve"><flowRegion
+           id="flowRegion2956"><rect
+             y="212.66591"
+             x="281.42856"
+             height="61.42857"
+             width="170"
+             id="rect2958" /></flowRegion><flowPara
+           id="flowPara2960">helloworldwsclient</flowPara></flowRoot>    </g>
+    <rect
+       style="fill:#317fed;fill-opacity:1;stroke:#060000;stroke-width:2;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+       id="rect2988"
+       width="115.66247"
+       height="85.862968"
+       x="432.05917"
+       y="307.1676"
+       rx="6.9961648"
+       ry="7.1230249" />
+    <flowRoot
+       xml:space="preserve"
+       id="flowRoot2966"
+       transform="translate(172.4684,115.2291)"><flowRegion
+         id="flowRegion2968"><rect
+           id="rect2970"
+           width="170"
+           height="61.42857"
+           x="281.42856"
+           y="212.66591" /></flowRegion><flowPara
+         id="flowPara2972">HelloWorld</flowPara><flowPara
+         id="flowPara1883">Service</flowPara><flowPara
+         id="flowPara1885">Component</flowPara></flowRoot>    <path
+       style="fill:#5b9d05;fill-opacity:1;fill-rule:evenodd;stroke:black;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+       d="M 414.90867,339.0146 L 448.24371,339.0146 L 454.30462,352.14658 L 447.23356,364.26842 L 414.90867,364.26842 L 422.48482,352.14658 L 414.90867,339.0146 z "
+       id="path3017" />
+    <path
+       style="fill:#ae62bf;fill-opacity:1;fill-rule:evenodd;stroke:black;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+       d="M 528.16111,337.17632 L 561.49615,337.17632 L 567.55706,350.3083 L 560.486,362.43014 L 528.16111,362.43014 L 535.73726,350.3083 L 528.16111,337.17632 z "
+       id="path3019" />
+    <path
+       style="fill:#ae62bf;fill-opacity:1;fill-rule:evenodd;stroke:black;stroke-width:1.00000012px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+       d="M 651.01647,320.75333 L 718.80207,320.75333 L 731.12672,349.11387 L 716.74797,375.29287 L 651.01647,375.29287 L 666.4223,349.11387 L 651.01647,320.75333 z "
+       id="path1887" />
+    <flowRoot
+       xml:space="preserve"
+       id="flowRoot1889"
+       transform="translate(388.9491,122.6895)"
+       style="font-size:10px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;font-family:Bitstream Vera Sans"><flowRegion
+         id="flowRegion1891"><rect
+           id="rect1893"
+           width="170"
+           height="61.42857"
+           x="281.42856"
+           y="212.66591"
+           style="font-size:10px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;font-family:Bitstream Vera Sans" /></flowRegion><flowPara
+         id="flowPara1895">HelloWorld</flowPara><flowPara
+         id="flowPara1897">Service</flowPara><flowPara
+         id="flowPara1899" /></flowRoot>    <path
+       style="fill:none;fill-rule:evenodd;stroke:black;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+       d="M 567.85714,349.09448 C 666.42857,348.3802 666.42857,348.3802 666.42857,348.3802"
+       id="path1901" />
+  </g>
+</svg>

Added: incubator/tuscany/java/sca/samples/helloworld-reference-jms/pom.xml
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/samples/helloworld-reference-jms/pom.xml?rev=614253&view=auto
==============================================================================
--- incubator/tuscany/java/sca/samples/helloworld-reference-jms/pom.xml (added)
+++ incubator/tuscany/java/sca/samples/helloworld-reference-jms/pom.xml Tue Jan 22 08:49:15 2008
@@ -0,0 +1,99 @@
+<?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.2-incubating-SNAPSHOT</version>
+        <relativePath>../../pom.xml</relativePath>
+    </parent>
+    <artifactId>sample-helloworld-reference-jms</artifactId>
+    <name>Apache Tuscany SCA HelloWorld Reference JMS 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.2-incubating-SNAPSHOT</version>
+        </dependency>
+        
+        <dependency>
+            <groupId>org.apache.tuscany.sca</groupId>
+            <artifactId>tuscany-node-impl</artifactId>
+            <version>1.2-incubating-SNAPSHOT</version>
+        </dependency>        
+
+        <dependency>
+            <groupId>org.apache.tuscany.sca</groupId>
+            <artifactId>tuscany-implementation-java-runtime</artifactId>
+            <version>1.2-incubating-SNAPSHOT</version>
+            <scope>runtime</scope>
+        </dependency>
+
+        <dependency>
+            <groupId>org.apache.tuscany.sca</groupId>
+            <artifactId>tuscany-binding-ws-axis2</artifactId>
+            <version>1.2-incubating-SNAPSHOT</version>
+            <scope>runtime</scope>
+        </dependency>
+
+        <dependency>
+            <groupId>org.apache.tuscany.sca</groupId>
+            <artifactId>sample-helloworld-ws-service-jms</artifactId>
+            <version>1.2-incubating-SNAPSHOT</version>
+            <scope>test</scope>
+        </dependency>
+        
+        <dependency>
+            <groupId>junit</groupId>
+            <artifactId>junit</artifactId>
+            <version>4.2</version>
+            <scope>test</scope>
+        </dependency>
+        
+        <dependency>
+            <groupId>org.apache.activemq</groupId>
+            <artifactId>apache-activemq</artifactId>
+            <version>4.1.1</version>
+            <scope>test</scope>
+        </dependency>     
+        
+        <dependency>
+            <groupId>org.apache.tuscany.sca</groupId>
+            <artifactId>tuscany-host-jms-activemq</artifactId>
+            <version>1.2-incubating-SNAPSHOT</version>
+            <scope>test</scope>            
+        </dependency>
+
+    </dependencies>
+    
+    <build>
+       <finalName>${artifactId}</finalName>
+    </build>
+
+</project>

Added: incubator/tuscany/java/sca/samples/helloworld-reference-jms/src/main/java/helloworld/HelloWorldImpl.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/samples/helloworld-reference-jms/src/main/java/helloworld/HelloWorldImpl.java?rev=614253&view=auto
==============================================================================
--- incubator/tuscany/java/sca/samples/helloworld-reference-jms/src/main/java/helloworld/HelloWorldImpl.java (added)
+++ incubator/tuscany/java/sca/samples/helloworld-reference-jms/src/main/java/helloworld/HelloWorldImpl.java Tue Jan 22 08:49:15 2008
@@ -0,0 +1,33 @@
+/*
+ * 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;
+
+/**
+ * This class implements the HelloWorld service.
+ */
+@Service(HelloWorldService.class)
+public class HelloWorldImpl implements HelloWorldService {
+
+    public String getGreetings(String name) {
+        return "Hello " + name;
+    }
+
+}

Added: incubator/tuscany/java/sca/samples/helloworld-reference-jms/src/main/java/helloworld/HelloWorldJmsClient.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/samples/helloworld-reference-jms/src/main/java/helloworld/HelloWorldJmsClient.java?rev=614253&view=auto
==============================================================================
--- incubator/tuscany/java/sca/samples/helloworld-reference-jms/src/main/java/helloworld/HelloWorldJmsClient.java (added)
+++ incubator/tuscany/java/sca/samples/helloworld-reference-jms/src/main/java/helloworld/HelloWorldJmsClient.java Tue Jan 22 08:49:15 2008
@@ -0,0 +1,43 @@
+/*
+ * 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.tuscany.sca.host.embedded.SCADomain;
+import org.apache.tuscany.sca.node.SCANode;
+import org.apache.tuscany.sca.node.SCANodeFactory;
+
+/**
+ * This client program shows how to create an SCA runtime, start it,
+ * locate the HelloWorld service and invoke it.
+ */
+public class HelloWorldJmsClient {
+
+    public  final static void main(String[] args) throws Exception {
+		SCANode node = SCANodeFactory.createNodeWithComposite("helloworldjmsreference.composite");
+		HelloWorldService helloWorldService = node.getDomain().getService(HelloWorldService.class, "HelloWorldServiceComponent");
+    	
+        //SCADomain scaDomain = SCADomain.newInstance("helloworldjmsreference.composite");
+        //HelloWorldService helloWorldService = scaDomain.getService(HelloWorldService.class, "HelloWorldServiceComponent");
+
+        String value = helloWorldService.getGreetings("World");
+        System.out.println(value);
+
+        node.destroy();
+    }
+}

Added: incubator/tuscany/java/sca/samples/helloworld-reference-jms/src/main/java/helloworld/HelloWorldService.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/samples/helloworld-reference-jms/src/main/java/helloworld/HelloWorldService.java?rev=614253&view=auto
==============================================================================
--- incubator/tuscany/java/sca/samples/helloworld-reference-jms/src/main/java/helloworld/HelloWorldService.java (added)
+++ incubator/tuscany/java/sca/samples/helloworld-reference-jms/src/main/java/helloworld/HelloWorldService.java Tue Jan 22 08:49:15 2008
@@ -0,0 +1,29 @@
+/*
+ * 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;
+
+/**
+ * The interface for the helloworld service
+ */
+@Remotable
+public interface HelloWorldService {
+    public String getGreetings(String name);
+}

Added: incubator/tuscany/java/sca/samples/helloworld-reference-jms/src/main/java/helloworld/HelloWorldServiceComponent.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/samples/helloworld-reference-jms/src/main/java/helloworld/HelloWorldServiceComponent.java?rev=614253&view=auto
==============================================================================
--- incubator/tuscany/java/sca/samples/helloworld-reference-jms/src/main/java/helloworld/HelloWorldServiceComponent.java (added)
+++ incubator/tuscany/java/sca/samples/helloworld-reference-jms/src/main/java/helloworld/HelloWorldServiceComponent.java Tue Jan 22 08:49:15 2008
@@ -0,0 +1,42 @@
+/*
+ * 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;
+
+/**
+ * The HelloWorld service implementation
+ */
+public class HelloWorldServiceComponent implements HelloWorldService {
+   
+    HelloWorldService helloWorldService;
+
+    public String getGreetings(String name) {
+        System.out.println("Called getGreetings");
+        return helloWorldService.getGreetings(name);
+    }
+
+    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: incubator/tuscany/java/sca/samples/helloworld-reference-jms/src/main/resources/helloworldjmsreference.composite
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/samples/helloworld-reference-jms/src/main/resources/helloworldjmsreference.composite?rev=614253&view=auto
==============================================================================
--- incubator/tuscany/java/sca/samples/helloworld-reference-jms/src/main/resources/helloworldjmsreference.composite (added)
+++ incubator/tuscany/java/sca/samples/helloworld-reference-jms/src/main/resources/helloworldjmsreference.composite Tue Jan 22 08:49:15 2008
@@ -0,0 +1,40 @@
+<?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="helloworldjmsreference">
+    
+    <!-- A component with a reference promoted as a composite reference -->
+    <component name="HelloWorldServiceComponent">
+      <implementation.java class="helloworld.HelloWorldServiceComponent"/>
+      <reference name="helloWorldService">
+          <interface.java interface="helloworld.HelloWorldService"/>
+          <binding.jms initialContextFactory="org.apache.activemq.jndi.ActiveMQInitialContextFactory"
+                       jndiURL="tcp://localhost:61619">
+              <destination name="RequestQueue" create="always"/>
+              <response>
+                  <destination name="ResponseQueue" create="always"/>
+              </response> 
+          </binding.jms>
+      </reference>
+    </component>
+    
+</composite>

Added: incubator/tuscany/java/sca/samples/helloworld-reference-jms/src/main/resources/helloworldjmsservice.composite
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/samples/helloworld-reference-jms/src/main/resources/helloworldjmsservice.composite?rev=614253&view=auto
==============================================================================
--- incubator/tuscany/java/sca/samples/helloworld-reference-jms/src/main/resources/helloworldjmsservice.composite (added)
+++ incubator/tuscany/java/sca/samples/helloworld-reference-jms/src/main/resources/helloworldjmsservice.composite Tue Jan 22 08:49:15 2008
@@ -0,0 +1,39 @@
+<?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.java interface="helloworld.HelloWorldService"/>
+                <binding.jms initialContextFactory="org.apache.activemq.jndi.ActiveMQInitialContextFactory"
+                             jndiURL="tcp://localhost:61619">
+                    <destination name="RequestQueue" create="always"/>
+                    <response>
+                        <destination name="ResponseQueue" create="always"/>
+                    </response> 
+                </binding.jms>
+        </service>
+    </component>
+
+</composite>

Added: incubator/tuscany/java/sca/samples/helloworld-reference-jms/src/main/resources/logging.properties
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/samples/helloworld-reference-jms/src/main/resources/logging.properties?rev=614253&view=auto
==============================================================================
--- incubator/tuscany/java/sca/samples/helloworld-reference-jms/src/main/resources/logging.properties (added)
+++ incubator/tuscany/java/sca/samples/helloworld-reference-jms/src/main/resources/logging.properties Tue Jan 22 08:49:15 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: 582827 $ $Date: 2007-10-08 15:01:31 +0100 (Mon, 08 Oct 2007) $
+#
+
+# 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: incubator/tuscany/java/sca/samples/helloworld-reference-jms/src/main/resources/wsdl/helloworld.wsdl
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/samples/helloworld-reference-jms/src/main/resources/wsdl/helloworld.wsdl?rev=614253&view=auto
==============================================================================
--- incubator/tuscany/java/sca/samples/helloworld-reference-jms/src/main/resources/wsdl/helloworld.wsdl (added)
+++ incubator/tuscany/java/sca/samples/helloworld-reference-jms/src/main/resources/wsdl/helloworld.wsdl Tue Jan 22 08:49:15 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:HelloWorldSoapJmsBinding" name="HelloWorldSoapJmsPort">
+            <wsdlsoap:address location="jms:/queue.sample?transport.jms.ConnectionFactoryJNDIName=QueueConnectionFactory&amp;java.naming.factory.initial=org.apache.activemq.jndi.ActiveMQInitialContextFactory&amp;java.naming.provider.url=tcp://localhost:61619"/>
+        </wsdl:port>
+    </wsdl:service>
+
+</wsdl:definitions>

Added: incubator/tuscany/java/sca/samples/helloworld-reference-jms/src/test/java/helloworld/HelloWorldJmsClientTestCase.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/samples/helloworld-reference-jms/src/test/java/helloworld/HelloWorldJmsClientTestCase.java?rev=614253&view=auto
==============================================================================
--- incubator/tuscany/java/sca/samples/helloworld-reference-jms/src/test/java/helloworld/HelloWorldJmsClientTestCase.java (added)
+++ incubator/tuscany/java/sca/samples/helloworld-reference-jms/src/test/java/helloworld/HelloWorldJmsClientTestCase.java Tue Jan 22 08:49:15 2008
@@ -0,0 +1,71 @@
+/*
+ * 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 junit.framework.Assert;
+
+import org.apache.tuscany.sca.host.embedded.SCADomain;
+import org.apache.tuscany.sca.host.embedded.SCATestCaseRunner;
+import org.apache.tuscany.sca.host.jms.activemq.ActiveMQModuleActivator;
+import org.junit.After;
+import org.junit.Before;
+import org.junit.Test;
+
+
+/**
+ * Test case for helloworld web service client 
+ */
+public class HelloWorldJmsClientTestCase {
+
+    private HelloWorldService helloWorldService;
+    private HelloWorldService helloTuscanyService;
+    private SCADomain scaClientDomain;
+    private SCADomain scaServiceDomain;
+   
+
+    @Before
+    public void startClient() throws Exception {
+        try {
+            ActiveMQModuleActivator.startBroker();
+            scaServiceDomain = SCADomain.newInstance("helloworldjmsservice.composite");
+            scaClientDomain = SCADomain.newInstance("helloworldjmsreference.composite");
+            helloWorldService = scaClientDomain.getService(HelloWorldService.class, "HelloWorldServiceComponent");
+                
+        } catch (Throwable e) {
+            e.printStackTrace();
+        }
+    }
+    
+    @Test
+    public void testWSClient() throws Exception {
+        String msg = helloWorldService.getGreetings("Smith");
+        Assert.assertEquals("Hello Smith", msg);
+        Thread.sleep(2000);
+   }
+    
+    
+    @After
+    public void stopClient() throws Exception {
+        scaServiceDomain.close();
+        // TODO - causes problems on shudown
+        //scaClientDomain.close();
+    }
+
+}

Propchange: incubator/tuscany/java/sca/samples/helloworld-service-jms/
------------------------------------------------------------------------------
--- svn:ignore (added)
+++ svn:ignore Tue Jan 22 08:49:15 2008
@@ -0,0 +1,3 @@
+.classpath
+.project
+.settings

Added: incubator/tuscany/java/sca/samples/helloworld-service-jms/README
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/samples/helloworld-service-jms/README?rev=614253&view=auto
==============================================================================
--- incubator/tuscany/java/sca/samples/helloworld-service-jms/README (added)
+++ incubator/tuscany/java/sca/samples/helloworld-service-jms/README Tue Jan 22 08:49:15 2008
@@ -0,0 +1,119 @@
+Hello World SOAP/JMS Service Sample
+===================================
+This sample demonstrates an SCA service that uses a web service binding using 
+a SOAP/JMS protocol 
+
+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-jms.jar helloworld.HelloWorldServer
+
+and on *nix do
+
+java -cp ../../lib/tuscany-sca-manifest.jar:target/sample-helloworld-ws-service-jms.jar helloworld.HelloWorldServer
+
+Now the server is started you can use the helloworld-ws-reference-jms 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-jms/
+  src/
+    main/
+      java/
+        helloworld/
+          HelloWorldService.java          - interface description for 
+                                            HelloWorldServiceComponent
+          HelloWorldImpl.java             - component implementation
+          HelloWorldServer.java           - starts the SCA Runtime and 
+                                            deploys the helloworldwsjms
+                                            .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
+        helloworldwsjms.composite         - the SCA assembly for this sample
+        helloworldwsjmspolicy.composite   - shows how the protocol can be 
+                                            selected using policy. Not run
+                                            by the sample
+    test/
+      java/
+        helloworld/
+          HelloWorldJMSServerTestCase.java- JUnit test case 
+          HelloWorldJMSPolicyServerTestCase.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-jms
+ant compile
+ant run
+
+You should see the following output from the run target.
+
+run:
+     [java] log4j:WARN No appenders could be found for logger (org.apache.axiom.
+om.util.StAXUtils).
+     [java] log4j:WARN Please initialize the log4j system properly.
+     [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-jms sample. Take a look at 
+the README in that sample and you will see you need the following commands
+
+cd helloworld-ws-reference-jms
+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-jms sample as Maven includes a simple ping test to make sure that the
+service is available
+
+cd helloworld-ws-service-jms
+mvn
+
+You should see the following output from the test phase.
+
+-------------------------------------------------------
+ T E S T S
+-------------------------------------------------------
+Running helloworld.HelloWorldJmsPolicyServerTestCase
+08-Jan-2008 10:41:17 org.apache.tuscany.sca.binding.ws.axis2.Axis2ServiceProvide
+r start
+INFO: Axis2 JMS URL=jms:/HelloWorldServiceComponent?java.naming.factory.initial=
+org.apache.activemq.jndi.ActiveMQInitialContextFactory&java.naming.provider.url=
+tcp://localhost:61619&transport.jms.ConnectionFactoryJNDIName=QueueConnectionFac
+tory
+Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 6.984 sec
+Running helloworld.HelloWorldJmsServerTestCase
+08-Jan-2008 10:41:22 org.apache.tuscany.sca.binding.ws.axis2.Axis2ServiceProvide
+r start
+INFO: Axis2 JMS URL=jms:/queue.sample?transport.jms.ConnectionFactoryJNDIName=Qu
+eueConnectionFactory&java.naming.factory.initial=org.apache.activemq.jndi.Active
+MQInitialContextFactory&java.naming.provider.url=tcp://localhost:61619
+Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 5.266 sec
+
+This shows that the Junit test cases have run successfully. 

Added: incubator/tuscany/java/sca/samples/helloworld-service-jms/build.xml
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/samples/helloworld-service-jms/build.xml?rev=614253&view=auto
==============================================================================
--- incubator/tuscany/java/sca/samples/helloworld-service-jms/build.xml (added)
+++ incubator/tuscany/java/sca/samples/helloworld-service-jms/build.xml Tue Jan 22 08:49:15 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-jms" default="compile">
+    <property name="test.class" value="helloworld.HelloWorldServer" />
+	<property name="test.jar"   value="sample-helloworld-ws-service-jms.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: incubator/tuscany/java/sca/samples/helloworld-service-jms/helloworld-ws-service.png
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/samples/helloworld-service-jms/helloworld-ws-service.png?rev=614253&view=auto
==============================================================================
Binary file - no diff available.

Propchange: incubator/tuscany/java/sca/samples/helloworld-service-jms/helloworld-ws-service.png
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: incubator/tuscany/java/sca/samples/helloworld-service-jms/helloworld-ws-service.svg
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/samples/helloworld-service-jms/helloworld-ws-service.svg?rev=614253&view=auto
==============================================================================
--- incubator/tuscany/java/sca/samples/helloworld-service-jms/helloworld-ws-service.svg (added)
+++ incubator/tuscany/java/sca/samples/helloworld-service-jms/helloworld-ws-service.svg Tue Jan 22 08:49:15 2008
@@ -0,0 +1,150 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!--
+ * 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.
+-->
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+<svg
+   xmlns:dc="http://purl.org/dc/elements/1.1/"
+   xmlns:cc="http://web.resource.org/cc/"
+   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+   xmlns:svg="http://www.w3.org/2000/svg"
+   xmlns="http://www.w3.org/2000/svg"
+   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+   width="1052.3622"
+   height="744.09448"
+   id="svg2"
+   sodipodi:version="0.32"
+   inkscape:version="0.45.1"
+   sodipodi:docbase="C:\simon\tuscany\java-head\sca\samples\helloworld-ws-service"
+   sodipodi:docname="helloworld-ws-service.svg"
+   version="1.0"
+   inkscape:export-filename="C:\simon\tuscany\java-head\sca\samples\helloworld-ws-service\helloworld-ws-service.png"
+   inkscape:export-xdpi="52.84"
+   inkscape:export-ydpi="52.84"
+   inkscape:output_extension="org.inkscape.output.svg.inkscape">
+  <defs
+     id="defs4" />
+  <sodipodi:namedview
+     id="base"
+     pagecolor="#ffffff"
+     bordercolor="#666666"
+     borderopacity="1.0"
+     gridtolerance="10000"
+     guidetolerance="10"
+     objecttolerance="10"
+     inkscape:pageopacity="0.0"
+     inkscape:pageshadow="2"
+     inkscape:zoom="1.4"
+     inkscape:cx="519.38407"
+     inkscape:cy="414.63224"
+     inkscape:document-units="px"
+     inkscape:current-layer="layer1"
+     inkscape:window-width="1054"
+     inkscape:window-height="573"
+     inkscape:window-x="117"
+     inkscape:window-y="316" />
+  <metadata
+     id="metadata7">
+    <rdf:RDF>
+      <cc:Work
+         rdf:about="">
+        <dc:format>image/svg+xml</dc:format>
+        <dc:type
+           rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+      </cc:Work>
+    </rdf:RDF>
+  </metadata>
+  <g
+     inkscape:label="Layer 1"
+     inkscape:groupmode="layer"
+     id="layer1">
+    <g
+       id="g2997"
+       transform="matrix(0.991389,0,0,1,2.215655,0)">
+      <rect
+         rx="13.79423"
+         ry="12.692303"
+         y="192.00233"
+         x="258.3114"
+         height="299.99988"
+         width="446.72086"
+         id="rect2067"
+         style="opacity:1;fill:#90baf4;fill-opacity:1;stroke:#060000;stroke-width:2.00866628;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" />
+      <flowRoot
+         id="flowRoot2954"
+         xml:space="preserve"><flowRegion
+           id="flowRegion2956"><rect
+             y="212.66591"
+             x="281.42856"
+             height="61.42857"
+             width="170"
+             id="rect2958" /></flowRegion><flowPara
+           id="flowPara2960">helloworldws</flowPara></flowRoot>    </g>
+    <rect
+       style="fill:#317fed;fill-opacity:1;stroke:#060000;stroke-width:2;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+       id="rect2988"
+       width="115.66247"
+       height="85.862968"
+       x="432.05917"
+       y="307.1676"
+       rx="6.9961648"
+       ry="7.1230249" />
+    <flowRoot
+       xml:space="preserve"
+       id="flowRoot2966"
+       transform="translate(172.4684,115.2291)"><flowRegion
+         id="flowRegion2968"><rect
+           id="rect2970"
+           width="170"
+           height="61.42857"
+           x="281.42856"
+           y="212.66591" /></flowRegion><flowPara
+         id="flowPara2972">HelloWorld</flowPara><flowPara
+         id="flowPara1883">Service</flowPara><flowPara
+         id="flowPara1885">Component</flowPara></flowRoot>    <path
+       style="fill:#5b9d05;fill-opacity:1;fill-rule:evenodd;stroke:black;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+       d="M 414.90867,339.0146 L 448.24371,339.0146 L 454.30462,352.14658 L 447.23356,364.26842 L 414.90867,364.26842 L 422.48482,352.14658 L 414.90867,339.0146 z "
+       id="path3017" />
+    <path
+       style="fill:#5b9d05;fill-opacity:1;fill-rule:evenodd;stroke:black;stroke-width:0.99999994px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+       d="M 226.73064,320.75315 L 293.91185,320.75315 L 306.1266,352.82797 L 291.87606,382.43553 L 226.73064,382.43553 L 241.99911,352.82797 L 226.73064,320.75315 z "
+       id="path1892" />
+    <flowRoot
+       xml:space="preserve"
+       id="flowRoot1894"
+       transform="translate(-37.47944,122.8324)"
+       style="font-size:10px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;font-family:Bitstream Vera Sans"><flowRegion
+         id="flowRegion1896"><rect
+           id="rect1898"
+           width="170"
+           height="61.42857"
+           x="281.42856"
+           y="212.66591"
+           style="font-size:10px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;font-family:Bitstream Vera Sans" /></flowRegion><flowPara
+         id="flowPara1900">HelloWorld</flowPara><flowPara
+         id="flowPara1906">Web</flowPara><flowPara
+         id="flowPara1904">Service</flowPara></flowRoot>    <path
+       style="fill:none;fill-rule:evenodd;stroke:black;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+       d="M 305.71429,353.3802 L 422.85714,351.95163"
+       id="path1910"
+       inkscape:export-filename="C:\simon\Projects\Tuscany\java\java-head\sca\samples\helloworld-ws-service\helloworld-ws-service.png"
+       inkscape:export-xdpi="52.84"
+       inkscape:export-ydpi="52.84" />
+  </g>
+</svg>

Added: incubator/tuscany/java/sca/samples/helloworld-service-jms/pom.xml
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/samples/helloworld-service-jms/pom.xml?rev=614253&view=auto
==============================================================================
--- incubator/tuscany/java/sca/samples/helloworld-service-jms/pom.xml (added)
+++ incubator/tuscany/java/sca/samples/helloworld-service-jms/pom.xml Tue Jan 22 08:49:15 2008
@@ -0,0 +1,87 @@
+<?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.2-incubating-SNAPSHOT</version>
+        <relativePath>../../pom.xml</relativePath>
+    </parent>
+    <artifactId>sample-helloworld-service-jms</artifactId>
+    <name>Apache Tuscany SCA HelloWorld Service JMS 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-jetty</artifactId>
+            <version>1.2-incubating-SNAPSHOT</version>
+            <scope>compile</scope>            
+        </dependency>
+            
+        <dependency>
+            <groupId>org.apache.tuscany.sca</groupId>
+            <artifactId>tuscany-host-jms-activemq</artifactId>
+            <version>1.2-incubating-SNAPSHOT</version>
+            <scope>compile</scope>            
+        </dependency>
+
+        <dependency>
+            <groupId>org.apache.tuscany.sca</groupId>
+            <artifactId>tuscany-host-embedded</artifactId>
+            <version>1.2-incubating-SNAPSHOT</version>
+            <scope>compile</scope>            
+        </dependency>
+        
+        <dependency>
+            <groupId>org.apache.tuscany.sca</groupId>
+            <artifactId>tuscany-implementation-java-runtime</artifactId>
+            <version>1.2-incubating-SNAPSHOT</version>
+            <scope>runtime</scope>
+        </dependency>
+
+        <dependency>
+            <groupId>org.apache.tuscany.sca</groupId>
+            <artifactId>tuscany-binding-ws-axis2</artifactId>
+            <version>1.2-incubating-SNAPSHOT</version>
+            <scope>runtime</scope>
+        </dependency>   
+
+        <dependency>
+            <groupId>junit</groupId>
+            <artifactId>junit</artifactId>
+            <version>4.2</version>
+            <scope>test</scope>
+        </dependency>
+       
+    </dependencies>
+    
+    <build>
+       <finalName>${artifactId}</finalName>
+    </build>
+
+</project>

Added: incubator/tuscany/java/sca/samples/helloworld-service-jms/src/main/java/helloworld/HelloWorldImpl.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/samples/helloworld-service-jms/src/main/java/helloworld/HelloWorldImpl.java?rev=614253&view=auto
==============================================================================
--- incubator/tuscany/java/sca/samples/helloworld-service-jms/src/main/java/helloworld/HelloWorldImpl.java (added)
+++ incubator/tuscany/java/sca/samples/helloworld-service-jms/src/main/java/helloworld/HelloWorldImpl.java Tue Jan 22 08:49:15 2008
@@ -0,0 +1,33 @@
+/*
+ * 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;
+
+/**
+ * This class implements the HelloWorld service.
+ */
+@Service(HelloWorldService.class)
+public class HelloWorldImpl implements HelloWorldService {
+
+    public String getGreetings(String name) {
+        return "Hello " + name;
+    }
+
+}

Added: incubator/tuscany/java/sca/samples/helloworld-service-jms/src/main/java/helloworld/HelloWorldServer.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/samples/helloworld-service-jms/src/main/java/helloworld/HelloWorldServer.java?rev=614253&view=auto
==============================================================================
--- incubator/tuscany/java/sca/samples/helloworld-service-jms/src/main/java/helloworld/HelloWorldServer.java (added)
+++ incubator/tuscany/java/sca/samples/helloworld-service-jms/src/main/java/helloworld/HelloWorldServer.java Tue Jan 22 08:49:15 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 java.io.IOException;
+
+import org.apache.tuscany.sca.host.embedded.SCADomain;
+import org.apache.tuscany.sca.host.jms.activemq.ActiveMQModuleActivator;
+
+/**
+ * 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) {
+
+    	ActiveMQModuleActivator.startBroker();
+        SCADomain scaDomain = SCADomain.newInstance("helloworldjmsservice.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: incubator/tuscany/java/sca/samples/helloworld-service-jms/src/main/java/helloworld/HelloWorldService.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/samples/helloworld-service-jms/src/main/java/helloworld/HelloWorldService.java?rev=614253&view=auto
==============================================================================
--- incubator/tuscany/java/sca/samples/helloworld-service-jms/src/main/java/helloworld/HelloWorldService.java (added)
+++ incubator/tuscany/java/sca/samples/helloworld-service-jms/src/main/java/helloworld/HelloWorldService.java Tue Jan 22 08:49:15 2008
@@ -0,0 +1,31 @@
+/*
+ * 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;
+
+/**
+ * This is the business interface of the HelloWorld greetings service.
+ */
+@Remotable
+public interface HelloWorldService {
+
+    public String getGreetings(String name);
+}
+

Added: incubator/tuscany/java/sca/samples/helloworld-service-jms/src/main/resources/definitions.xml
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/samples/helloworld-service-jms/src/main/resources/definitions.xml?rev=614253&view=auto
==============================================================================
--- incubator/tuscany/java/sca/samples/helloworld-service-jms/src/main/resources/definitions.xml (added)
+++ incubator/tuscany/java/sca/samples/helloworld-service-jms/src/main/resources/definitions.xml Tue Jan 22 08:49:15 2008
@@ -0,0 +1,66 @@
+<?xml version="1.0" encoding="ASCII"?>
+<!--
+ * 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.    
+-->
+<sca:definitions xmlns="http://www.osoa.org/xmlns/sca/1.0"
+ 			targetNamespace="http://www.osoa.org/xmlns/sca/1.0"
+ 			xmlns:sca="http://www.osoa.org/xmlns/sca/1.0"
+ 			xmlns:tuscany="http://tuscany.apache.org/xmlns/sca/1.0">
+
+ <sca:intent name="transport"  
+ 			 constrains="sca:binding.ws">
+ 			 <sca:description>
+ 			 The general intent that a transport is available over which SOAP messages flow 
+ 			 </sca:description>
+ </sca:intent>
+
+ <sca:intent name="transport.jms">
+ 			 <sca:description>
+ 			 A JMS transport is required
+ 			 </sca:description>
+ </sca:intent>
+ 
+ <sca:intent name="transport.http">
+             <sca:description>
+             An HTTP transport is required
+             </sca:description>
+ </sca:intent>
+ 
+ <!-- 
+   how does the following relate to confidentiality intents 
+   does confidentiality become a profile intent?
+ -->
+ <sca:intent name="transport.https">
+             <sca:description>
+             An HTTPS transport is required
+             </sca:description>
+ </sca:intent>
+
+ <sca:policySet name="wsJMSTransportPolicy"
+ 	provides="transport.jms"
+ 	appliesTo="sca:binding.ws">
+ 	<tuscany:wsConfigParam>
+        <parameter name="TuscanyQueueConnectionFactory">
+            <parameter name="java.naming.factory.initial">org.apache.activemq.jndi.ActiveMQInitialContextFactory</parameter>
+            <parameter name="java.naming.provider.url">tcp://localhost:61619</parameter>
+            <parameter name="transport.jms.ConnectionFactoryJNDIName">QueueConnectionFactory</parameter>
+        </parameter>
+ 	</tuscany:wsConfigParam>
+ </sca:policySet>
+ 
+ </sca:definitions>
\ No newline at end of file

Added: incubator/tuscany/java/sca/samples/helloworld-service-jms/src/main/resources/helloworldjmsservice.composite
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/samples/helloworld-service-jms/src/main/resources/helloworldjmsservice.composite?rev=614253&view=auto
==============================================================================
--- incubator/tuscany/java/sca/samples/helloworld-service-jms/src/main/resources/helloworldjmsservice.composite (added)
+++ incubator/tuscany/java/sca/samples/helloworld-service-jms/src/main/resources/helloworldjmsservice.composite Tue Jan 22 08:49:15 2008
@@ -0,0 +1,39 @@
+<?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.java interface="helloworld.HelloWorldService"/>
+                <binding.jms initialContextFactory="org.apache.activemq.jndi.ActiveMQInitialContextFactory"
+                             jndiURL="tcp://localhost:61619">
+                    <destination name="RequestQueue" create="ifnotexist"/>
+                    <response>
+                        <destination name="ResponseQueue" create="ifnotexist"/>
+                    </response> 
+                </binding.jms>
+        </service>
+    </component>
+
+</composite>

Added: incubator/tuscany/java/sca/samples/helloworld-service-jms/src/main/resources/wsdl/helloworld.wsdl
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/samples/helloworld-service-jms/src/main/resources/wsdl/helloworld.wsdl?rev=614253&view=auto
==============================================================================
--- incubator/tuscany/java/sca/samples/helloworld-service-jms/src/main/resources/wsdl/helloworld.wsdl (added)
+++ incubator/tuscany/java/sca/samples/helloworld-service-jms/src/main/resources/wsdl/helloworld.wsdl Tue Jan 22 08:49:15 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/HelloWorldServiceComponent"/>
+        </wsdl:port>
+    </wsdl:service>
+
+</wsdl:definitions>

Added: incubator/tuscany/java/sca/samples/helloworld-service-jms/src/test/java/helloworld/HelloWorldJmsServerTestCaseOff.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/samples/helloworld-service-jms/src/test/java/helloworld/HelloWorldJmsServerTestCaseOff.java?rev=614253&view=auto
==============================================================================
--- incubator/tuscany/java/sca/samples/helloworld-service-jms/src/test/java/helloworld/HelloWorldJmsServerTestCaseOff.java (added)
+++ incubator/tuscany/java/sca/samples/helloworld-service-jms/src/test/java/helloworld/HelloWorldJmsServerTestCaseOff.java Tue Jan 22 08:49:15 2008
@@ -0,0 +1,60 @@
+/*
+ * 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 static junit.framework.Assert.assertEquals;
+import static junit.framework.Assert.assertNotNull;
+
+import java.io.IOException;
+
+import org.apache.tuscany.sca.host.embedded.SCADomain;
+import org.apache.tuscany.sca.host.jms.activemq.ActiveMQModuleActivator;
+import org.junit.After;
+import org.junit.Before;
+import org.junit.Test;
+
+/**
+ * Tests that the helloworld server is available
+ */
+public class HelloWorldJmsServerTestCaseOff{
+
+    private SCADomain scaDomain;
+
+    @Before
+    public void startServer() throws Exception {
+    ActiveMQModuleActivator.startBroker();
+            scaDomain = SCADomain.newInstance("helloworldjmsservice.composite");
+    }
+
+    @Test
+    public void testServiceCall() throws IOException {
+        HelloWorldService helloWorldService = scaDomain.getService(HelloWorldService.class, "HelloWorldServiceComponent/HelloWorldService");
+        assertNotNull(helloWorldService);
+        
+        assertEquals("Hello Smith", helloWorldService.getGreetings("Smith"));
+    }
+
+    @After
+    public void stopServer() throws Exception {
+        if (scaDomain != null) {
+            scaDomain.close();
+        }
+    }
+
+}

Modified: incubator/tuscany/java/sca/samples/pom.xml
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/samples/pom.xml?rev=614253&r1=614252&r2=614253&view=diff
==============================================================================
--- incubator/tuscany/java/sca/samples/pom.xml (original)
+++ incubator/tuscany/java/sca/samples/pom.xml Tue Jan 22 08:49:15 2008
@@ -65,6 +65,8 @@
                 <module>helloworld-bpel</module>
                 <module>helloworld-dojo-webapp</module>
                 <module>helloworld-jsonrpc-webapp</module>
+                <module>helloworld-reference-jms</module>
+                <module>helloworld-service-jms</module>
                 <module>helloworld-ws-service</module>
                 <module>helloworld-ws-service-jms</module>
                 <module>helloworld-ws-service-secure</module>



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