summaryrefslogtreecommitdiffstats
path: root/tags/java-M1-20060518/java/samples/sca/customerinfo/readme.htm
blob: 56197330933f503094b6ecc8526d88373fcbdbf1 (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
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><!-- Copyright (c) 2005 The Apache Software Foundation or its licensors, as applicable. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. -->
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> <meta http-equiv="Content-Style-Type" content="text/css"><title>Tuscany
CustomerInfo </title><!-- LINK rel="stylesheet" href="ait.css" type="text/css" -->
<style type="text/css" media="all">
@import url("../../../../css/maven-base.css");
@import url("../../../../css/maven-theme.css");
@import url("../../../../css/site.css");
</style><link rel="stylesheet" href="./css/print.css" type="text/css" media="print"></head>

<body>
<h2>Tuscany CustomerInfo Sample</h2>

<h3>Overview</h3>

<p>The CustomerInfo sample shows a component exposing a WSDL portType interface
 and a J2SE client using the dynamic SDO API to use the component.</p>

<h3>Location</h3>This
sample is located &nbsp;in the samples\sca\customerinfo directory.<br><br>

<h3>Setup</h3>This sample depends on the Tuscany runtime and the sample jar, 

    <span style="font-weight: bold;">
    sample-customerinfo-incubating-M1.jar
    </span>

, both of these must be available on the classpath to run the sample.
<ol>
</ol>
<h3>Running</h3>

    In the directory samples/sca/customerinfo use the JDK 1.5 java command to run the class customerinfo.CustomerInfoClient

    <pre>Linux: java -cp ../../../lib/tuscany-runtime-incubating-M1.jar:target/sample-customerinfo-incubating-M1.jar customerinfo.CustomerInfoClient</pre>
    <pre>Windows: java -cp ../../../lib/tuscany-runtime-incubating-M1.jar;target/sample-customerinfo-incubating-M1.jar customerinfo.CustomerInfoClient</pre>

<h3>Results</h3>
<p>The sample when run should simply display to the standard
output:<br> 
<code>
customerID = 12345<br>
firstName = Jane<br>
lastName = Doe<br>
</code></p>
<h3>Code Overview</h3>
The source files are physically organized as shown below:
<table style="text-align: left; width: 100%;" border="1" cellpadding="2" cellspacing="2"> <tbody> <tr><td>src<br>+---main<br>&nbsp;&nbsp;&nbsp; +---java<br>&nbsp;&nbsp;&nbsp; &brvbar;&nbsp;&nbsp; +---customerinfo<br>&nbsp;&nbsp;&nbsp; &brvbar;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; CustomerInfoClient.java<br>&nbsp;&nbsp;&nbsp; &brvbar;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; CustomerInfoServiceImpl.java<br>&nbsp;&nbsp;&nbsp; &brvbar;<br>&nbsp;&nbsp;&nbsp; +---resources<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; sca.module<br>&nbsp;&nbsp;&nbsp; +---wsdl<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; customer.xsd<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; customerinfo.wsdl</td></tr></tbody></table>
<br>
<table style="text-align: left; width: 879px; height: 154px;" border="0" cellpadding="2" cellspacing="2"> <tbody><tr><td style="vertical-align: top;">sca.module</td>
<td>Defines the SCA module and component. Defines for the
CustomerInfoServiceComponent component with the Java class that
implements that component</td> </tr> 
<tr> <td style="vertical-align: top;">CustomerInfoServiceImpl.java</td>
<td>Implements the SCA component. Uses an  @SDOHelper anotation to have the SDO DataFactory automatically injected into the dataFacory field, and uses the DataFactory to create a cutomer DataObject which it initialises and returns to the caller.</td>
</tr> <tr> <td style="vertical-align: top;">CustomerInfoClient .java</td>
<td>Creates a Tuscany runtime and starts it. &nbsp;Obtains
the module context which was defined by the sca.module file. From the
module context locates the CustomerInfoServiceComponent, and then
calls&nbsp; the getCustomerInfo method to invoke the component. It uses the SDO dynamic APIs to extract the information from the returned DataObject.</td>
</tr> </tbody></table><br></body></html>