apache-tuscany/sca-java-1.x/trunk/samples/helloworld-ws-sdo
2010-10-26 12:38:55 +00:00
..
src Adding missing Apache License files 2010-01-27 22:28:18 +00:00
build.xml Merge r1003122 Remove redundant classpath dependencies 2010-10-26 12:38:55 +00:00
helloworld-ws-sdo.png Moving 1.x trunk 2009-11-13 01:42:27 +00:00
helloworld-ws-sdo.svg Moving 1.x trunk 2009-11-13 01:42:27 +00:00
pom.xml Update 1.x trunk version to 1.7-SNAPSHOT 2009-12-21 12:31:56 +00:00
README Merge r1003115 TUSCANY-3699: Fix README to describe using this sample's server 2010-10-26 11:56:08 +00:00

Hello World Web Service and Reference using SDO Sample
======================================================
This sample demonstrates an SCA service and reference that use a web service binding which works with SDO.

The README in the samples directory (the directory above this) provides 
general instructions about building and running samples. Take a look there 
first. 

To run this sample
------------------
This sample includes both a server and a client. First, open a command prompt to start the server.
If you are running ant do the following:

cd helloworld-ws-sdo
ant run-server

OR if you don't have ant, on Windows do

java -cp ..\..\lib\tuscany-sca-manifest.jar;target\sample-helloworld-ws-sdo.jar helloworld.HelloWorldServer

and on *nix do

java -cp ../../lib/tuscany-sca-manifest.jar:target/sample-helloworld-ws-sdo.jar helloworld.HelloWorldServer

You should see the following output:

Buildfile: build.xml

run-server:
     [java] 30-Sep-2010 14:45:13 org.apache.tuscany.sca.node.impl.NodeImpl <init>
     [java] INFO: Creating node: helloworldws.composite
     [java] 30-Sep-2010 14:45:13 org.apache.tuscany.sca.node.impl.NodeImpl configureNode
     [java] INFO: Loading contribution: file:/E:/td/test161b/samples/helloworld-ws-sdo/target/sample-helloworld-ws-sdo.jar
     [java] 30-Sep-2010 14:45:15 org.apache.tuscany.sca.node.impl.NodeImpl start
     [java] INFO: Starting node: helloworldws.composite
     [java] 30-Sep-2010 14:45:16 org.apache.tuscany.sca.http.jetty.JettyServer addServletMapping
     [java] INFO: Added Servlet mapping: http://GrosMorne:8085/HelloWorldService
     [java] HelloWorld server started (press enter to shutdown)


The server is now ready.

Now, open another command window to run the client.  

cd helloworld-ws-sdo
ant run

OR if you don't have ant, on Windows do

java -cp ..\..\lib\tuscany-sca-manifest.jar;target\sample-helloworld-ws-sdo.jar helloworld.HelloWorldClient

and on *nix do

java -cp ../../lib/tuscany-sca-manifest.jar:target/sample-helloworld-ws-sdo.jar helloworld.HelloWorldClient

You should be able to see the following result:

Buildfile: build.xml

run:
     [java] 30-Sep-2010 14:45:21 org.apache.tuscany.sca.node.impl.NodeImpl <init>
     [java] INFO: Creating node: helloworldwsclient.composite
     [java] 30-Sep-2010 14:45:21 org.apache.tuscany.sca.node.impl.NodeImpl configureNode
     [java] INFO: Loading contribution: file:/E:/td/test161b/samples/helloworld-ws-sdo/target/sample-helloworld-ws-sdo.jar
     [java] 30-Sep-2010 14:45:23 org.apache.tuscany.sca.node.impl.NodeImpl start
     [java] INFO: Starting node: helloworldwsclient.composite
     [java] Injected helloWorldService
     [java] Called getGreetings
     [java] Hello David Haney

BUILD SUCCESSFUL
Total time: 9 seconds


Sample Overview
---------------
The sample provides a server component that exposes a service using a web service
binding, and a client component with a reference that invokes the service using a 
web service binding. The binding refers to WSDL that describes the service.

helloworld-ws-sdo/
  src/
    main/
      java/
        helloworld/
          HelloWorldService.java          - interface description for 
                                            HelloWorldServiceComponent and
                                            HelloWorldImpl
          HelloWorldServiceComponent.java - client component implementation
          HelloWorldImpl.java             - server 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
          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 service. 
        helloworldws.composite            - the SCA assembly for the server
        helloworldwsclient.composite      - the SCA assembly for the client
      
    test/
      java/
        helloworld/
          HelloWorldClientTestCase.java   - JUnit test case
          HelloWorldTestServer.java       - server launched by the JUnit test case
        helloworld-ws-sdo.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
-----------------------------------------
You can build and run the sample with the binary distribution using Ant. Enter the 
following commands:

cd helloworld-ws-sdo                                             
ant 

To run the sample, you need to run the server and then run the client.
First, run the server.

cd helloworld-ws-sdo                                             
ant run-server

In a separate command prompt, run the client.

cd helloworld-ws-sdo                                             
ant run

You should see the following output from the run target.

run:
     [java] Injected helloWorldService
     [java] Called getGreetings
     [java] Hello David Haney

Building And Running The Sample Using Maven 
-------------------------------------------
You can build and run the sample with either the binary or source distributions using Maven.
Please note that you do not need to start the server in this case since Maven does this for you.
Enter the following commands:

cd helloworld-ws-sdo
mvn

You should see the following output from the test phase.

-------------------------------------------------------
 T E S T S
-------------------------------------------------------
Running helloworld.HelloWorldClientTestCase
log4j:WARN No appenders could be found for logger (org.apache.axiom.om.util.StAX
Utils).
log4j:WARN Please initialize the log4j system properly.
log4j:WARN No appenders could be found for logger (org.apache.axiom.om.util.StAX
Utils).
log4j:WARN Please initialize the log4j system properly.
Aug 23, 2007 2:27:32 PM org.apache.catalina.core.StandardEngine start
INFO: Starting Servlet Engine: Apache Tomcat/6.0.10
Aug 23, 2007 2:27:32 PM org.apache.catalina.startup.ContextConfig defaultWebConf
ig
INFO: No default web.xml
Aug 23, 2007 2:27:32 PM org.apache.catalina.startup.DigesterFactory register
WARNING: Could not get url for /javax/servlet/jsp/resources/jsp_2_0.xsd
Aug 23, 2007 2:27:32 PM org.apache.catalina.startup.DigesterFactory register
WARNING: Could not get url for /javax/servlet/jsp/resources/web-jsptaglibrary_1_
1.dtd
Aug 23, 2007 2:27:32 PM org.apache.catalina.startup.DigesterFactory register
WARNING: Could not get url for /javax/servlet/jsp/resources/web-jsptaglibrary_1_
2.dtd
Aug 23, 2007 2:27:32 PM org.apache.catalina.startup.DigesterFactory register
WARNING: Could not get url for /javax/servlet/jsp/resources/web-jsptaglibrary_2_
0.xsd
Aug 23, 2007 2:27:32 PM org.apache.catalina.startup.DigesterFactory register
WARNING: Could not get url for /javax/servlet/resources/j2ee_web_services_1_1.xs
d
Aug 23, 2007 2:27:32 PM org.apache.coyote.http11.Http11Protocol init
INFO: Initializing Coyote HTTP/1.1 on http-8085
Aug 23, 2007 2:27:32 PM org.apache.coyote.http11.Http11Protocol start
INFO: Starting Coyote HTTP/1.1 on http-8085
Aug 23, 2007 2:27:32 PM org.apache.tuscany.sca.http.tomcat.TomcatServer addServl
etMapping
INFO: Added Servlet mapping: http://localhost:8085/HelloWorldService
Injected helloWorldService
Called getGreetings
Aug 23, 2007 2:27:34 PM org.apache.coyote.http11.Http11Protocol destroy
INFO: Stopping Coyote HTTP/1.1 on http-8085
Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 8.502 sec

Results :

Tests run: 1, Failures: 0, Errors: 0, Skipped: 0


This shows that the Junit test cases have run successfully.