summaryrefslogtreecommitdiffstats
path: root/branches/sca-java-1.3/samples/helloworld-ws-sdo-webapp/README
blob: aa4819927afcf1864607fe0819bc0bf1aa1f5ff3 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
Hello World Web Service SDO WebApp Sample
=========================================
This sample demonstrates an SCA web service binding which works with
SDO and runs as a web application.  

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

As this sample provides a web app there is a manual step where the WAR file
that contains the sample is is built and copied to your web app container. 
See the sections below for instructions on building the war.

Once the web app is deployed use your browser to visit the following URL;

   http://localhost:8080/sample-helloworld-ws-sdo-webapp

The port and hostname will of course vary depending on your local installation.

The resulting web page displayed should show:

   Hello John Smith, Jane Doe!
   
Sample Overview
---------------
The sample builds a war with a single JSP (HelloWorld.jsp). This JSP 
calls an SCA component with an SDO parameter. This in turn calls another
SCA component with the SDO parameter. The contents of the SDO are then 
returned as a simple string. This sample shows how SDO objects can 
be passed into and between services in the context of a web application. 


helloworld-jsonrpc-webapp/
  src/
    main/
      java/
        helloworld/ 
          HelloWorld.java             - service interface
          HelloWorldComponent.java    - first service implementation
          HelloWorldmpl.java          - second service implementation
      resources/
        wsdl/
          helloworld.wsdl             - the web services description
          helloworld.xsd              - the SDO description
        helloworldws.composite        - the SCA assembly for this sample
      webapp
        META-INF/
          sca-contribution.xml        - specifies the composite to be deployed
        WEB-INF/
          web.xml                     - defines the listener that starts up the 
                                        Tuscany SCA runtime
        HelloWorld.jsp                - the web application that calls the 
                                        SCA service passing in an SDO   
           
  helloworld-ws-sdo-webapp.png        - a pictorial representation of the 
                                        sample .composite file
  build.xml                           - the Ant build file 
  pom.xml                             - the Maven build file     

Building The Sample Using Ant
-----------------------------------------
With the binary distribution the sample can be built using Ant as 
follows

cd helloworld-ws-sdo-webapp
ant package

This should result in a war file (sample-helloworld-ws-sdo-webapp.war) in the target 
directory. Copy this war file to your web app deployment directory in your
web app container. 

The process for getting the web app running will depend on which web app container
you are using. For example, if you are using Tomcat then it is simply a matter
of copying the WAR file to the webapps directory. 

Once the web app is deployed use your browser to visit the following URL;

http://localhost:8080/sample-helloworld-ws-sdo-webapp

The port and hostname will of course vary depending on your local installation. 

Building The Sample Using Maven
-------------------------------
With either the binary or source distributions the sample can be built and run
using Maven as follows. When using Maven you don't need to run the helloworld-
ws-service sample first as Maven does this for you.

cd helloworld-ws-sdo-webapp
mvn

That should end with "BUILD SUCCESSFUL" and create the target/sample-helloworld-ws-sdo-webapp.war
which you can copy to your server.