| Hello World JSONRPC Sample |
| ========================== |
| This sample demostrates the JSONRPC binding using a simple web app that |
| talks JSONRPC 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-jsonrpc-webapp.war) |
| to your web application server. |
| |
| To save space, the WAR file isn't included in the binary distribution. You can |
| build it by following the instructions below in "Building And Running The Sample |
| Using Ant" or "Building And Running The Sample Using Maven". |
| |
| Once the web app is deployed use your browser to visit the following URL; |
| |
| http://localhost:8080/sample-helloworld-jsonrpc-webapp |
| |
| The port and hostname will of course vary depending on your local installation. |
| |
| 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 SCA-provided JSON client can be |
| used to invoke the SCA service. |
| |
| helloworld-jsonrpc-webapp/ |
| src/ |
| main/ |
| java/ |
| helloworldjsonrpc/ |
| HelloWorldService.java - service interface |
| HelloWorldServiceImpl.java - service implementation |
| resources/ |
| jsonrpc.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 |
| 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-jsonrpc-webapp |
| ant package |
| |
| This should result in a war file (sample-helloworld-jsonrpc-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-jsonrpc-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-jsonrpc-webapp |
| mvn |
| |
| Again this should result in a war file (sample-helloworld-jsonrpc-webapp.war) in the target |
| directory. Follow the steps described in the previous section for running the web |
| app and for the expected results. |
| |
| |