blob: 9c1729123f314b6f734933c220c22dd7291b0b84 [file] [log] [blame]
Customer Dojo RPC Sample
===========================
Note. This sample is currently not working correctly on WebSphere - see TUSCANY-1990
This sample demostrates the SCA JSONRPC binding using a simple web app that
uses the RPC support of the Dojo Toolkit to an SCA service.
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 copied to your web app container. If you just want
to give this sample a go deploy the WAR file (target/sample-helloworld-dojo-webapp.war)
to you web application server.
Once the web app is deployed use your browser to visit the following URL;
http://localhost:8080/sample-helloworld-dojo-webapp
The port and hostname will of course vary depending on your local installation.
See also the similar helloworld-jsonrpc-webapp sample which also uses the SCA JSONRPC binding
but uses SCA scaDomain.js script on the client instead of the Dojo Toolkit.
Sample Overview
---------------
The sample provides a single service with an operation that reflects
a greeting back to the caller. The service is exposed using the JSONRPC
binding. The web app provided shows how the Dojo Toolkit JSON-RPC support can be
used to invoke the SCA service.
The web app provided shows how the service can be called by using the DOJO toolkit.
helloworld-dojo-webapp/
build-dojo.xml - This file is an Ant script used by the
sample build process to download the Dojo Toolkit
and get it included in the WAR file
for use by the sample.
src/
main/
java/
helloworldjsonrpc/
HelloWorldService.java - service interface
HelloWorldServiceImpl.java - service implementation
resources/
jsonrpc.composite - the SCA assembly for this sample
webapp
dojo/ - the Dojo toolkit (this directory is created only
when you build the samples from the source distribution)
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
HelloWorldJSONRPC.html - the web application that calls the
SCA service via JSONRPC
style.css - style sheet
helloworld-jsonrpc-webapp.png - a pictorial representation of the
sample .composite file
build.xml - the Ant build file that unpacks the
dojo installation
pom.xml - the Maven build file
Building And Running The Sample Using Ant
-----------------------------------------
With the binary distribution the sample can be built using Ant as
follows
cd helloworld-dojo-webapp
ant package
This should result in a war file (sample-helloworld-dojo-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-dojo-webapp
The port and hostname will of course vary depending on your local installation.
You should see a web page that allows you to send messages, via JSONRPC, to the
application running in the Tuscany SCA Runtime
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.
cd helloworld-dojo-webapp
mvn
Again this should result in a war file (sample-helloworld-dojo-webapp.war) in the target
directory. Follow the steps described in the previous section for running the web
app and for the expected results.