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.