diff options
Diffstat (limited to 'java/sca-contrib/samples/helloworld-ws-reference-secure/README')
-rw-r--r-- | java/sca-contrib/samples/helloworld-ws-reference-secure/README | 176 |
1 files changed, 176 insertions, 0 deletions
diff --git a/java/sca-contrib/samples/helloworld-ws-reference-secure/README b/java/sca-contrib/samples/helloworld-ws-reference-secure/README new file mode 100644 index 0000000000..167991c8f7 --- /dev/null +++ b/java/sca-contrib/samples/helloworld-ws-reference-secure/README @@ -0,0 +1,176 @@ +Hello World Secure Web Service References Sample
+================================================
+This sample demonstrates an SCA reference that uses a web service binding.
+
+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 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-secure.jar helloworld.HelloWorldServer
+
+and on *nix do
+
+java -cp ../../lib/tuscany-sca-manifest.jar:target/sample-helloworld-ws-service-secure.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-secure.jar helloworld.HelloWorldClient
+
+and on *nix do
+
+java -cp ../../lib/tuscany-sca-manifest.jar:target/sample-helloworld-ws-reference-secure.jar helloworld.HelloWorldClient
+
+
+Sample Overview
+---------------
+The sample provides a single component that is wired to a reference with a
+web service binding. The binding refers to WSDL that identifies the service
+exposed by the helloworld-ws-service-secure sample. This sample invokes a
+secure web-serivce and hence specifies a policy intent named 'authentication'
+which is fulfilled by a suitable policyset that is defined for the SCA Domain.
+Over the helloworld-ws-reference sample, this sample demonstrate generally
+the use of policy intents and policy sets in Tuscany taking the specific instance
+of a security policy.
+
+Note :
+------
+The policies mentioned and supported are instances of Tuscany specified policies and
+not instnaces of WS-Policy.
+
+helloworld-ws-reference-secure/
+ src/
+ main/
+ java/
+ helloworld/
+ HelloWorldService.java - interface description for
+ HelloWorldServiceComponent
+ HelloWorldServiceComponent.java - component implementation
+ HelloWorldClient.java - starts the SCA Runtime and
+ deploys the helloworldwsclient
+ .composite. It then calls the
+ HelloWorldServiceComponent
+ ClientPWCBHandler.java - Callback handler class to provide client password. The
+ handle(Callback[] callbacks) method of this class is where
+ code for accessing user registries and retrieving passwords
+ for given user identifiers can be encapsulated. For example
+ here is where one could access LDAP registries to obtain or
+ compare user identities and passwords.
+
+ resources/
+ wsdl
+ helloworld.wsdl - the service description that the
+ SCA reference uses to bind to
+ helloworldwsclient.composite - the SCA assembly for this sample
+ logging.properties - log4j configuration file
+ definitions.xml - the SCA Definitions file that contains intents and policysets
+ defined for the SCA Domain
+ test/
+ java/
+ helloworld/
+ HelloWorldClientTestCase.java - JUnit test case
+ HelloWorldServerTest.java - starts the Web service
+ helloworld-ws-reference-secure.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-secure test. Take a look at the README in that sample
+and you will see you need the following commands
+
+cd helloworld-ws-service-secure
+ant run
+
+Once done you can now compile and run this sample using the following commands;
+
+cd helloworld-ws-reference-secure
+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] *** Calling Client UserId/Password Handler ....
+ [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-secure sample first as Maven does this for you.
+
+cd helloworld-ws-reference-secure
+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.
+10-May-2007 13:40:34 org.apache.catalina.core.StandardEngine start
+INFO: Starting Servlet Engine: Apache Tomcat/6.0.10
+10-May-2007 13:40:35 org.apache.catalina.startup.ContextConfig defaultWebConfig
+INFO: No default web.xml
+10-May-2007 13:40:35 org.apache.catalina.startup.DigesterFactory register
+WARNING: Could not get url for /javax/servlet/resources/j2ee_1_4.xsd
+10-May-2007 13:40:35 org.apache.catalina.startup.DigesterFactory register
+WARNING: Could not get url for /javax/servlet/resources/xml.xsd
+10-May-2007 13:40:35 org.apache.catalina.startup.DigesterFactory register
+WARNING: Could not get url for /javax/servlet/jsp/resources/jsp_2_0.xsd
+10-May-2007 13:40:35 org.apache.catalina.startup.DigesterFactory register
+WARNING: Could not get url for /javax/servlet/jsp/resources/web-jsptaglibrary_2_
+0.xsd
+10-May-2007 13:40:35 org.apache.catalina.startup.DigesterFactory register
+WARNING: Could not get url for /javax/servlet/resources/web-app_2_4.xsd
+10-May-2007 13:40:35 org.apache.catalina.startup.DigesterFactory register
+WARNING: Could not get url for /javax/servlet/resources/j2ee_web_services_1_1.xs
+d
+10-May-2007 13:40:35 org.apache.catalina.startup.DigesterFactory register
+WARNING: Could not get url for /javax/servlet/resources/j2ee_web_services_client
+_1_1.xsd
+10-May-2007 13:40:35 org.apache.coyote.http11.Http11Protocol init
+INFO: Initializing Coyote HTTP/1.1 on http-8085
+10-May-2007 13:40:35 org.apache.coyote.http11.Http11Protocol start
+INFO: Starting Coyote HTTP/1.1 on http-8085
+Injected helloWorldService
+Called getGreetings
+*** Calling Client UserId/Password Handler ....
+*** Calling Server User/Passwd Handler....
+10-May-2007 13:40:36 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: 6.349 sec
+
+Results :
+
+
+This shows that the Junit test cases have run successfully. Also note that the client side and server side
+callback handlers for authentication have been called.
|