You are viewing a plain text version of this content. The canonical link for it is here.
Posted to fx-dev@ws.apache.org by da...@apache.org on 2005/04/28 07:17:19 UTC
cvs commit: ws-fx/kandula/src/html user-guide.htm
dasarath 2005/04/27 22:17:19
Modified: kandula/src/html user-guide.htm
Log:
Patch from Thilina applied with modifications.
Revision Changes Path
1.2 +681 -1197 ws-fx/kandula/src/html/user-guide.htm
Index: user-guide.htm
===================================================================
RCS file: /home/cvs/ws-fx/kandula/src/html/user-guide.htm,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- user-guide.htm 18 Apr 2005 07:27:50 -0000 1.1
+++ user-guide.htm 28 Apr 2005 05:17:18 -0000 1.2
@@ -1,555 +1,144 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
-<html xmlns:v="urn:schemas-microsoft-com:vml"
-xmlns:o="urn:schemas-microsoft-com:office:office"
-xmlns:w="urn:schemas-microsoft-com:office:word"
-xmlns="http://www.w3.org/TR/REC-html40">
-
-<head>
-<meta http-equiv=Content-Type content="text/html; charset=windows-1252">
-<meta name=ProgId content=Word.Document>
-<meta name=Generator content="Microsoft Word 10">
-<meta name=Originator content="Microsoft Word 10">
-<link rel=File-List href="user-guide_files/filelist.xml">
-<link rel=Edit-Time-Data href="user-guide_files/editdata.mso">
-<!--[if !mso]>
-<style>
-v\:* {behavior:url(#default#VML);}
-o\:* {behavior:url(#default#VML);}
-w\:* {behavior:url(#default#VML);}
-.shape {behavior:url(#default#VML);}
-</style>
-<![endif]-->
-<title>WS-TX User Guide</title>
-<!--[if gte mso 9]><xml>
+<HTML xmlns="http://www.w3.org/TR/REC-html40" xmlns:v =
+"urn:schemas-microsoft-com:vml" xmlns:o =
+"urn:schemas-microsoft-com:office:office" xmlns:w =
+"urn:schemas-microsoft-com:office:word"><HEAD><TITLE>WS-TX User Guide e</TITLE>
+<META http-equiv=Content-Type content="text/html; charset=windows-1252">
+<META content=Word.Document name=ProgId>
+<META content="MSHTML 6.00.2900.2627" name=GENERATOR>
+<META content="Microsoft Word 11" name=Originator><LINK
+href="user-guide1_files/filelist.xml" rel=File-List><LINK
+href="user-guide1_files/editdata.mso" rel=Edit-Time-Data><!--[if !mso]>
+<STYLE>v\:* {
+ BEHAVIOR: url(#default#VML)
+}
+o\:* {
+ BEHAVIOR: url(#default#VML)
+}
+w\:* {
+ BEHAVIOR: url(#default#VML)
+}
+.shape {
+ BEHAVIOR: url(#default#VML)
+}
+</STYLE>
+<![endif]--><!--[if gte mso 9]><xml>
<o:DocumentProperties>
- <o:Author>PUBLISHING</o:Author>
- <o:LastAuthor>PUBLISHING</o:LastAuthor>
- <o:Revision>13</o:Revision>
- <o:TotalTime>99</o:TotalTime>
- <o:Created>2004-09-20T17:37:00Z</o:Created>
- <o:LastSaved>2004-09-21T14:29:00Z</o:LastSaved>
+ <o:Author>Dasarath Weeratunge</o:Author>
+ <o:LastAuthor>Dasarath Weeratunge</o:LastAuthor>
+ <o:Revision>12</o:Revision>
+ <o:TotalTime>35</o:TotalTime>
+ <o:Created>2005-04-28T04:36:00Z</o:Created>
+ <o:LastSaved>2005-04-28T05:11:00Z</o:LastSaved>
<o:Pages>1</o:Pages>
- <o:Words>1813</o:Words>
- <o:Characters>10335</o:Characters>
- <o:Company>SARASAVI</o:Company>
- <o:Lines>86</o:Lines>
- <o:Paragraphs>24</o:Paragraphs>
- <o:CharactersWithSpaces>12124</o:CharactersWithSpaces>
- <o:Version>10.3501</o:Version>
+ <o:Words>1438</o:Words>
+ <o:Characters>8199</o:Characters>
+ <o:Company>Lanka Software Foundation (LSF)</o:Company>
+ <o:Lines>68</o:Lines>
+ <o:Paragraphs>19</o:Paragraphs>
+ <o:CharactersWithSpaces>9618</o:CharactersWithSpaces>
+ <o:Version>11.5606</o:Version>
</o:DocumentProperties>
</xml><![endif]--><!--[if gte mso 9]><xml>
<w:WordDocument>
- <w:View>Print</w:View>
<w:SpellingState>Clean</w:SpellingState>
<w:GrammarState>Clean</w:GrammarState>
- <w:DrawingGridHorizontalSpacing>9.05 pt</w:DrawingGridHorizontalSpacing>
- <w:DrawingGridVerticalSpacing>9.05 pt</w:DrawingGridVerticalSpacing>
- <w:DisplayHorizontalDrawingGridEvery>0</w:DisplayHorizontalDrawingGridEvery>
- <w:UseMarginsForDrawingGridOrigin/>
- <w:DrawingGridHorizontalOrigin>89.85 pt</w:DrawingGridHorizontalOrigin>
- <w:DrawingGridVerticalOrigin>72 pt</w:DrawingGridVerticalOrigin>
- <w:Compatibility>
- <w:BreakWrappedTables/>
- <w:SnapToGridInCell/>
- <w:WrapTextWithPunct/>
- <w:UseAsianBreakRules/>
- </w:Compatibility>
+ <w:ValidateAgainstSchemas/>
+ <w:SaveIfXMLInvalid>false</w:SaveIfXMLInvalid>
+ <w:IgnoreMixedContent>false</w:IgnoreMixedContent>
+ <w:AlwaysShowPlaceholderText>false</w:AlwaysShowPlaceholderText>
<w:BrowserLevel>MicrosoftInternetExplorer4</w:BrowserLevel>
</w:WordDocument>
+</xml><![endif]--><!--[if gte mso 9]><xml>
+ <w:LatentStyles DefLockedState="false" LatentStyleCount="156">
+ </w:LatentStyles>
</xml><![endif]-->
-<style>
-<!--
- /* Style Definitions */
- p.MsoNormal, li.MsoNormal, div.MsoNormal
- {mso-style-parent:"";
- margin-top:0cm;
- margin-right:0cm;
- margin-bottom:6.0pt;
- margin-left:0cm;
- mso-pagination:widow-orphan;
- font-size:12.0pt;
- font-family:"Times New Roman";
- mso-fareast-font-family:"Times New Roman";}
-h1
- {mso-style-next:Normal;
- margin-top:12.0pt;
- margin-right:0cm;
- margin-bottom:3.0pt;
- margin-left:0cm;
- text-align:center;
- mso-pagination:widow-orphan;
- mso-outline-level:1;
- font-size:16.0pt;
- font-family:Arial;
- mso-font-kerning:16.0pt;}
-h2
- {mso-style-next:Normal;
- margin-top:12.0pt;
- margin-right:0cm;
- margin-bottom:3.0pt;
- margin-left:0cm;
- mso-pagination:widow-orphan;
- mso-outline-level:2;
- font-size:13.0pt;
- mso-bidi-font-size:14.0pt;
- font-family:Arial;
- mso-bidi-font-style:italic;}
-h3
- {mso-style-next:Normal;
- margin-top:6.0pt;
- margin-right:0cm;
- margin-bottom:6.0pt;
- margin-left:0cm;
- mso-pagination:widow-orphan;
- mso-outline-level:3;
- font-size:11.0pt;
- mso-bidi-font-size:13.0pt;
- font-family:Arial;
- font-style:italic;
- mso-bidi-font-style:normal;}
-h4
- {mso-style-next:Normal;
- margin-top:12.0pt;
- margin-right:0cm;
- margin-bottom:3.0pt;
- margin-left:0cm;
- mso-pagination:widow-orphan;
- mso-outline-level:4;
- font-size:11.0pt;
- mso-bidi-font-size:14.0pt;
- font-family:"Times New Roman";
- font-weight:normal;
- mso-bidi-font-weight:bold;
- text-decoration:underline;
- text-underline:single;}
-a:link, span.MsoHyperlink
- {color:blue;
- text-decoration:underline;
- text-underline:single;}
-a:visited, span.MsoHyperlinkFollowed
- {color:purple;
- text-decoration:underline;
- text-underline:single;}
-p.MsoPlainText, li.MsoPlainText, div.MsoPlainText
- {mso-style-link:"Plain Text Char";
- margin:0cm;
- margin-bottom:.0001pt;
- line-height:150%;
- mso-pagination:widow-orphan;
- font-size:9.0pt;
- mso-bidi-font-size:10.0pt;
- font-family:"Courier New";
- mso-fareast-font-family:"Times New Roman";}
-span.PlainTextChar
- {mso-style-name:"Plain Text Char";
- mso-style-link:"Plain Text";
- mso-ansi-font-size:9.0pt;
- font-family:"Courier New";
- mso-ascii-font-family:"Courier New";
- mso-hansi-font-family:"Courier New";
- mso-bidi-font-family:"Courier New";
- mso-ansi-language:EN-US;
- mso-fareast-language:EN-US;
- mso-bidi-language:AR-SA;}
-p.StyleCentered, li.StyleCentered, div.StyleCentered
- {mso-style-name:"Style Centered";
- margin-top:6.0pt;
- margin-right:0cm;
- margin-bottom:12.0pt;
- margin-left:0cm;
- text-align:center;
- mso-pagination:widow-orphan;
- font-size:12.0pt;
- mso-bidi-font-size:10.0pt;
- font-family:"Times New Roman";
- mso-fareast-font-family:"Times New Roman";}
-span.SpellE
- {mso-style-name:"";
- mso-spl-e:yes;}
-span.GramE
- {mso-style-name:"";
- mso-gram-e:yes;}
-@page Section1
- {size:612.0pt 792.0pt;
- margin:72.0pt 65.95pt 72.0pt 65.95pt;
- mso-header-margin:35.4pt;
- mso-footer-margin:35.4pt;
- mso-paper-source:0;}
-div.Section1
- {page:Section1;}
- /* List Definitions */
- @list l0
- {mso-list-id:444732040;
- mso-list-template-ids:692356190;}
-@list l0:level1
- {mso-level-tab-stop:36.0pt;
- mso-level-number-position:left;
- text-indent:-18.0pt;}
-@list l0:level2
- {mso-level-number-format:alpha-lower;
- mso-level-tab-stop:72.0pt;
- mso-level-number-position:left;
- text-indent:-18.0pt;}
-@list l0:level3
- {mso-level-tab-stop:108.0pt;
- mso-level-number-position:left;
- text-indent:-18.0pt;}
-@list l0:level4
- {mso-level-tab-stop:144.0pt;
- mso-level-number-position:left;
- text-indent:-18.0pt;}
-@list l0:level5
- {mso-level-tab-stop:180.0pt;
- mso-level-number-position:left;
- text-indent:-18.0pt;}
-@list l0:level6
- {mso-level-tab-stop:216.0pt;
- mso-level-number-position:left;
- text-indent:-18.0pt;}
-@list l0:level7
- {mso-level-tab-stop:252.0pt;
- mso-level-number-position:left;
- text-indent:-18.0pt;}
-@list l0:level8
- {mso-level-tab-stop:288.0pt;
- mso-level-number-position:left;
- text-indent:-18.0pt;}
-@list l0:level9
- {mso-level-tab-stop:324.0pt;
- mso-level-number-position:left;
- text-indent:-18.0pt;}
-@list l1
- {mso-list-id:665672464;
- mso-list-template-ids:-70637234;}
-@list l1:level2
- {mso-level-number-format:alpha-lower;
- mso-level-tab-stop:72.0pt;
- mso-level-number-position:left;
- text-indent:-18.0pt;}
-@list l2
- {mso-list-id:987174023;
- mso-list-template-ids:2088035540;}
-@list l2:level1
- {mso-level-tab-stop:36.0pt;
- mso-level-number-position:left;
- text-indent:-18.0pt;}
-@list l2:level2
- {mso-level-tab-stop:72.0pt;
- mso-level-number-position:left;
- text-indent:-18.0pt;}
-@list l2:level3
- {mso-level-tab-stop:108.0pt;
- mso-level-number-position:left;
- text-indent:-18.0pt;}
-@list l2:level4
- {mso-level-tab-stop:144.0pt;
- mso-level-number-position:left;
- text-indent:-18.0pt;}
-@list l2:level5
- {mso-level-tab-stop:180.0pt;
- mso-level-number-position:left;
- text-indent:-18.0pt;}
-@list l2:level6
- {mso-level-tab-stop:216.0pt;
- mso-level-number-position:left;
- text-indent:-18.0pt;}
-@list l2:level7
- {mso-level-tab-stop:252.0pt;
- mso-level-number-position:left;
- text-indent:-18.0pt;}
-@list l2:level8
- {mso-level-tab-stop:288.0pt;
- mso-level-number-position:left;
- text-indent:-18.0pt;}
-@list l2:level9
- {mso-level-tab-stop:324.0pt;
- mso-level-number-position:left;
- text-indent:-18.0pt;}
-@list l3
- {mso-list-id:1047023883;
- mso-list-template-ids:-70637234;}
-@list l4
- {mso-list-id:1072047277;
- mso-list-template-ids:-1912050520;}
-@list l4:level1
- {mso-level-tab-stop:36.0pt;
- mso-level-number-position:left;
- text-indent:-18.0pt;}
-@list l4:level2
- {mso-level-tab-stop:72.0pt;
- mso-level-number-position:left;
- text-indent:-18.0pt;}
-@list l4:level3
- {mso-level-tab-stop:108.0pt;
- mso-level-number-position:left;
- text-indent:-18.0pt;}
-@list l4:level4
- {mso-level-tab-stop:144.0pt;
- mso-level-number-position:left;
- text-indent:-18.0pt;}
-@list l4:level5
- {mso-level-tab-stop:180.0pt;
- mso-level-number-position:left;
- text-indent:-18.0pt;}
-@list l4:level6
- {mso-level-tab-stop:216.0pt;
- mso-level-number-position:left;
- text-indent:-18.0pt;}
-@list l4:level7
- {mso-level-tab-stop:252.0pt;
- mso-level-number-position:left;
- text-indent:-18.0pt;}
-@list l4:level8
- {mso-level-tab-stop:288.0pt;
- mso-level-number-position:left;
- text-indent:-18.0pt;}
-@list l4:level9
- {mso-level-tab-stop:324.0pt;
- mso-level-number-position:left;
- text-indent:-18.0pt;}
-@list l5
- {mso-list-id:1181628252;
- mso-list-template-ids:-70637234;}
-@list l6
- {mso-list-id:1219364268;
- mso-list-template-ids:-70637234;}
-@list l7
- {mso-list-id:1241867744;
- mso-list-template-ids:-70637234;}
-@list l7:level1
- {mso-level-tab-stop:36.0pt;
- mso-level-number-position:left;
- text-indent:-18.0pt;}
-@list l7:level2
- {mso-level-tab-stop:72.0pt;
- mso-level-number-position:left;
- text-indent:-18.0pt;}
-@list l7:level3
- {mso-level-tab-stop:108.0pt;
- mso-level-number-position:left;
- text-indent:-18.0pt;}
-@list l7:level4
- {mso-level-tab-stop:144.0pt;
- mso-level-number-position:left;
- text-indent:-18.0pt;}
-@list l7:level5
- {mso-level-tab-stop:180.0pt;
- mso-level-number-position:left;
- text-indent:-18.0pt;}
-@list l7:level6
- {mso-level-tab-stop:216.0pt;
- mso-level-number-position:left;
- text-indent:-18.0pt;}
-@list l7:level7
- {mso-level-tab-stop:252.0pt;
- mso-level-number-position:left;
- text-indent:-18.0pt;}
-@list l7:level8
- {mso-level-tab-stop:288.0pt;
- mso-level-number-position:left;
- text-indent:-18.0pt;}
-@list l7:level9
- {mso-level-tab-stop:324.0pt;
- mso-level-number-position:left;
- text-indent:-18.0pt;}
-@list l8
- {mso-list-id:1370107223;
- mso-list-template-ids:1113110564;}
-@list l8:level1
- {mso-level-number-format:bullet;
- mso-level-text:\F0B7;
- mso-level-tab-stop:36.0pt;
- mso-level-number-position:left;
- text-indent:-18.0pt;
- mso-ansi-font-size:10.0pt;
- font-family:Symbol;}
-@list l8:level2
- {mso-level-tab-stop:72.0pt;
- mso-level-number-position:left;
- text-indent:-18.0pt;}
-@list l8:level3
- {mso-level-tab-stop:108.0pt;
- mso-level-number-position:left;
- text-indent:-18.0pt;}
-@list l8:level4
- {mso-level-tab-stop:144.0pt;
- mso-level-number-position:left;
- text-indent:-18.0pt;}
-@list l8:level5
- {mso-level-tab-stop:180.0pt;
- mso-level-number-position:left;
- text-indent:-18.0pt;}
-@list l8:level6
- {mso-level-tab-stop:216.0pt;
- mso-level-number-position:left;
- text-indent:-18.0pt;}
-@list l8:level7
- {mso-level-tab-stop:252.0pt;
- mso-level-number-position:left;
- text-indent:-18.0pt;}
-@list l8:level8
- {mso-level-tab-stop:288.0pt;
- mso-level-number-position:left;
- text-indent:-18.0pt;}
-@list l8:level9
- {mso-level-tab-stop:324.0pt;
- mso-level-number-position:left;
- text-indent:-18.0pt;}
-@list l9
- {mso-list-id:1391340461;
- mso-list-template-ids:-70637234;}
-@list l10
- {mso-list-id:1530339280;
- mso-list-template-ids:-70637234;}
-@list l11
- {mso-list-id:1548570330;
- mso-list-template-ids:-2135781964;}
-@list l11:level1
- {mso-level-number-format:bullet;
- mso-level-text:\F0B7;
- mso-level-tab-stop:36.0pt;
- mso-level-number-position:left;
- text-indent:-18.0pt;
- mso-ansi-font-size:10.0pt;
- font-family:Symbol;}
-@list l12
- {mso-list-id:1591424208;
- mso-list-template-ids:-1173166498;}
-@list l12:level1
- {mso-level-number-format:bullet;
- mso-level-text:\F0B7;
- mso-level-tab-stop:36.0pt;
- mso-level-number-position:left;
- text-indent:-18.0pt;
- mso-ansi-font-size:10.0pt;
- font-family:Symbol;}
-@list l13
- {mso-list-id:1923834014;
- mso-list-template-ids:-70637234;}
-@list l13:level1
- {mso-level-tab-stop:36.0pt;
- mso-level-number-position:left;
- text-indent:-18.0pt;}
-@list l13:level2
- {mso-level-tab-stop:72.0pt;
- mso-level-number-position:left;
- text-indent:-18.0pt;}
-@list l13:level3
- {mso-level-tab-stop:108.0pt;
- mso-level-number-position:left;
- text-indent:-18.0pt;}
-@list l13:level4
- {mso-level-tab-stop:144.0pt;
- mso-level-number-position:left;
- text-indent:-18.0pt;}
-@list l13:level5
- {mso-level-tab-stop:180.0pt;
- mso-level-number-position:left;
- text-indent:-18.0pt;}
-@list l13:level6
- {mso-level-tab-stop:216.0pt;
- mso-level-number-position:left;
- text-indent:-18.0pt;}
-@list l13:level7
- {mso-level-tab-stop:252.0pt;
- mso-level-number-position:left;
- text-indent:-18.0pt;}
-@list l13:level8
- {mso-level-tab-stop:288.0pt;
- mso-level-number-position:left;
- text-indent:-18.0pt;}
-@list l13:level9
- {mso-level-tab-stop:324.0pt;
- mso-level-number-position:left;
- text-indent:-18.0pt;}
-@list l14
- {mso-list-id:2016565393;
- mso-list-template-ids:-637475066;}
-@list l14:level1
- {mso-level-number-format:bullet;
- mso-level-text:\F0B7;
- mso-level-tab-stop:36.0pt;
- mso-level-number-position:left;
- text-indent:-18.0pt;
- mso-ansi-font-size:10.0pt;
- font-family:Symbol;}
-@list l14:level2
- {mso-level-tab-stop:72.0pt;
- mso-level-number-position:left;
- text-indent:-18.0pt;}
-@list l14:level3
- {mso-level-tab-stop:108.0pt;
- mso-level-number-position:left;
- text-indent:-18.0pt;}
-@list l14:level4
- {mso-level-tab-stop:144.0pt;
- mso-level-number-position:left;
- text-indent:-18.0pt;}
-@list l14:level5
- {mso-level-tab-stop:180.0pt;
- mso-level-number-position:left;
- text-indent:-18.0pt;}
-@list l14:level6
- {mso-level-tab-stop:216.0pt;
- mso-level-number-position:left;
- text-indent:-18.0pt;}
-@list l14:level7
- {mso-level-tab-stop:252.0pt;
- mso-level-number-position:left;
- text-indent:-18.0pt;}
-@list l14:level8
- {mso-level-tab-stop:288.0pt;
- mso-level-number-position:left;
- text-indent:-18.0pt;}
-@list l14:level9
- {mso-level-tab-stop:324.0pt;
- mso-level-number-position:left;
- text-indent:-18.0pt;}
-@list l15
- {mso-list-id:2129548266;
- mso-list-template-ids:-173107448;}
-@list l15:level1
- {mso-level-tab-stop:36.0pt;
- mso-level-number-position:left;
- text-indent:-18.0pt;}
-@list l15:level2
- {mso-level-tab-stop:72.0pt;
- mso-level-number-position:left;
- text-indent:-18.0pt;}
-@list l15:level3
- {mso-level-tab-stop:108.0pt;
- mso-level-number-position:left;
- text-indent:-18.0pt;}
-@list l15:level4
- {mso-level-tab-stop:144.0pt;
- mso-level-number-position:left;
- text-indent:-18.0pt;}
-@list l15:level5
- {mso-level-tab-stop:180.0pt;
- mso-level-number-position:left;
- text-indent:-18.0pt;}
-@list l15:level6
- {mso-level-tab-stop:216.0pt;
- mso-level-number-position:left;
- text-indent:-18.0pt;}
-@list l15:level7
- {mso-level-tab-stop:252.0pt;
- mso-level-number-position:left;
- text-indent:-18.0pt;}
-@list l15:level8
- {mso-level-tab-stop:288.0pt;
- mso-level-number-position:left;
- text-indent:-18.0pt;}
-@list l15:level9
- {mso-level-tab-stop:324.0pt;
- mso-level-number-position:left;
- text-indent:-18.0pt;}
-ol
- {margin-bottom:0cm;}
-ul
- {margin-bottom:0cm;}
--->
-</style>
+<STYLE>@page Section1 {size: 8.5in 11.0in; margin: 1.0in 65.95pt 1.0in 65.95pt; mso-header-margin: 35.4pt; mso-footer-margin: 35.4pt; mso-paper-source: 0; }
+P.MsoNormal {
+ FONT-SIZE: 12pt; MARGIN: 0in 0in 6pt; FONT-FAMILY: "Times New Roman"; mso-style-parent: ""; mso-pagination: widow-orphan; mso-fareast-font-family: "Times New Roman"
+}
+LI.MsoNormal {
+ FONT-SIZE: 12pt; MARGIN: 0in 0in 6pt; FONT-FAMILY: "Times New Roman"; mso-style-parent: ""; mso-pagination: widow-orphan; mso-fareast-font-family: "Times New Roman"
+}
+DIV.MsoNormal {
+ FONT-SIZE: 12pt; MARGIN: 0in 0in 6pt; FONT-FAMILY: "Times New Roman"; mso-style-parent: ""; mso-pagination: widow-orphan; mso-fareast-font-family: "Times New Roman"
+}
+H1 {
+ FONT-WEIGHT: bold; FONT-SIZE: 16pt; MARGIN: 12pt 0in 3pt; FONT-FAMILY: Arial; TEXT-ALIGN: center; mso-pagination: widow-orphan; mso-style-next: Normal; mso-outline-level: 1; mso-font-kerning: 16.0pt
+}
+H2 {
+ FONT-WEIGHT: bold; FONT-SIZE: 13pt; MARGIN: 12pt 0in 3pt; FONT-FAMILY: Arial; mso-bidi-font-size: 14.0pt; mso-pagination: widow-orphan; mso-style-next: Normal; mso-outline-level: 2; mso-bidi-font-style: italic
+}
+H3 {
+ FONT-WEIGHT: bold; FONT-SIZE: 11pt; MARGIN: 6pt 0in; FONT-STYLE: italic; FONT-FAMILY: Arial; mso-bidi-font-size: 13.0pt; mso-pagination: widow-orphan; mso-style-next: Normal; mso-outline-level: 3; mso-bidi-font-style: normal
+}
+H4 {
+ FONT-WEIGHT: normal; FONT-SIZE: 11pt; MARGIN: 12pt 0in 3pt; FONT-FAMILY: "Times New Roman"; TEXT-DECORATION: underline; mso-bidi-font-size: 14.0pt; mso-pagination: widow-orphan; mso-style-next: Normal; mso-outline-level: 4; mso-bidi-font-weight: bold; text-underline: single
+}
+A:link {
+ COLOR: blue; TEXT-DECORATION: underline; text-underline: single
+}
+SPAN.MsoHyperlink {
+ COLOR: blue; TEXT-DECORATION: underline; text-underline: single
+}
+A:visited {
+ COLOR: purple; TEXT-DECORATION: underline; text-underline: single
+}
+SPAN.MsoHyperlinkFollowed {
+ COLOR: purple; TEXT-DECORATION: underline; text-underline: single
+}
+P.MsoPlainText {
+ FONT-SIZE: 9pt; MARGIN: 0in 0in 0pt; LINE-HEIGHT: 150%; FONT-FAMILY: "Courier New"; mso-bidi-font-size: 10.0pt; mso-pagination: widow-orphan; mso-fareast-font-family: "Times New Roman"; mso-style-link: "Plain Text Char"
+}
+LI.MsoPlainText {
+ FONT-SIZE: 9pt; MARGIN: 0in 0in 0pt; LINE-HEIGHT: 150%; FONT-FAMILY: "Courier New"; mso-bidi-font-size: 10.0pt; mso-pagination: widow-orphan; mso-fareast-font-family: "Times New Roman"; mso-style-link: "Plain Text Char"
+}
+DIV.MsoPlainText {
+ FONT-SIZE: 9pt; MARGIN: 0in 0in 0pt; LINE-HEIGHT: 150%; FONT-FAMILY: "Courier New"; mso-bidi-font-size: 10.0pt; mso-pagination: widow-orphan; mso-fareast-font-family: "Times New Roman"; mso-style-link: "Plain Text Char"
+}
+P {
+ FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-pagination: widow-orphan; mso-fareast-font-family: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto
+}
+SPAN.PlainTextChar {
+ FONT-FAMILY: "Courier New"; mso-style-link: "Plain Text"; mso-style-name: "Plain Text Char"; mso-style-locked: yes; mso-ansi-font-size: 9.0pt; mso-ascii-font-family: "Courier New"; mso-hansi-font-family: "Courier New"; mso-bidi-font-family: "Courier New"; mso-ansi-language: EN-US; mso-fareast-language: EN-US; mso-bidi-language: AR-SA
+}
+P.StyleCentered {
+ FONT-SIZE: 12pt; MARGIN: 6pt 0in 12pt; FONT-FAMILY: "Times New Roman"; TEXT-ALIGN: center; mso-bidi-font-size: 10.0pt; mso-pagination: widow-orphan; mso-fareast-font-family: "Times New Roman"; mso-style-name: "Style Centered"
+}
+LI.StyleCentered {
+ FONT-SIZE: 12pt; MARGIN: 6pt 0in 12pt; FONT-FAMILY: "Times New Roman"; TEXT-ALIGN: center; mso-bidi-font-size: 10.0pt; mso-pagination: widow-orphan; mso-fareast-font-family: "Times New Roman"; mso-style-name: "Style Centered"
+}
+DIV.StyleCentered {
+ FONT-SIZE: 12pt; MARGIN: 6pt 0in 12pt; FONT-FAMILY: "Times New Roman"; TEXT-ALIGN: center; mso-bidi-font-size: 10.0pt; mso-pagination: widow-orphan; mso-fareast-font-family: "Times New Roman"; mso-style-name: "Style Centered"
+}
+P.style3 {
+ FONT-SIZE: 9pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-pagination: widow-orphan; mso-fareast-font-family: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto; mso-style-name: style3
+}
+LI.style3 {
+ FONT-SIZE: 9pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-pagination: widow-orphan; mso-fareast-font-family: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto; mso-style-name: style3
+}
+DIV.style3 {
+ FONT-SIZE: 9pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-pagination: widow-orphan; mso-fareast-font-family: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto; mso-style-name: style3
+}
+SPAN.plaintextcharstyle3 {
+ mso-style-name: "plaintextchar style3"
+}
+SPAN.SpellE {
+ mso-style-name: ""; mso-spl-e: yes
+}
+SPAN.GramE {
+ mso-style-name: ""; mso-gram-e: yes
+}
+DIV.Section1 {
+ page: Section1
+}
+OL {
+ MARGIN-BOTTOM: 0in
+}
+UL {
+ MARGIN-BOTTOM: 0in
+}
+</STYLE>
<!--[if gte mso 10]>
<style>
/* Style Definitions */
@@ -559,682 +148,577 @@
mso-tstyle-colband-size:0;
mso-style-noshow:yes;
mso-style-parent:"";
- mso-padding-alt:0cm 5.4pt 0cm 5.4pt;
- mso-para-margin:0cm;
+ mso-padding-alt:0in 5.4pt 0in 5.4pt;
+ mso-para-margin:0in;
mso-para-margin-bottom:.0001pt;
mso-pagination:widow-orphan;
font-size:10.0pt;
- font-family:"Times New Roman";}
+ font-family:"Times New Roman";
+ mso-ansi-language:#0400;
+ mso-fareast-language:#0400;
+ mso-bidi-language:#0400;}
</style>
<![endif]--><!--[if gte mso 9]><xml>
- <o:shapedefaults v:ext="edit" spidmax="8194"/>
+ <o:shapedefaults v:ext="edit" spidmax="9218"/>
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1"/>
- </o:shapelayout></xml><![endif]-->
-</head>
-
-<body lang=EN-US link=blue vlink=purple style='tab-interval:36.0pt'>
-
-<div class=Section1>
-
-<h1>WS-TX User Guide</h1>
-
-<h2>Purpose</h2>
-
-<p class=MsoNormal>This tutorial provides a brief overview of the WS-TX project
-and how to try out the provided examples. For a detail illustration on the
-design, please refer to the provided architecture documentation.</p>
-
-<h2>Objectives</h2>
-
-<p class=MsoNormal>The WS-TX project has two main objectives:</p>
-
-<ol style='margin-top:0cm' start=1 type=1>
- <li class=MsoNormal style='mso-list:l7 level1 lfo3;tab-stops:list 36.0pt'>Provide
- an open source implementation for the web services coordination and
- transaction management frameworks defined by WS-Coordination, WS-<span
- class=SpellE>AtomicTransaction</span> and WS-BusinessActivity. </li>
- <li class=MsoNormal style='mso-list:l7 level1 lfo3;tab-stops:list 36.0pt'>Integrate
- existing open source JTA implementations (e.g. JOTM, <span class=SpellE>JBoss</span>,
- Geronimo, etc.) with the web services transaction management framework so
- that J2EE web services and clients may take part in atomic transactions
- while using JTA for transaction management. </li>
-</ol>
-
-<h2>Overview</h2>
-
-<p class=MsoNormal>Think of a hypothetical web service that provides banking
-services. The service provides 2 operations: a <span class=PlainTextChar><span
-style='font-size:9.0pt;mso-bidi-font-size:12.0pt'>credit</span></span>
-operation and a <span class=PlainTextChar><span style='font-size:9.0pt;
-mso-bidi-font-size:12.0pt'>debit</span></span> operation. Now if the two
-operations are to be used to perform a monetary transfer between two accounts,
-it must be ensured that either both operations succeed or neither does. Under
-these circumstances, the web services coordination framework can be used to
-ensure the atomicity of operations. The sample code below shows how a
-standalone client may use the WS-TX implementation in this scenario-</p>
-
-<p class=StyleCentered><o:p> </o:p></p>
-
-<p class=StyleCentered><!--[if mso & !supportInlineShapes & supportFields]><span
+ </o:shapelayout></xml><![endif]--></HEAD>
+<BODY lang=EN-US style="tab-interval: .5in" vLink=purple link=blue>
+<DIV class=Section1>
+<H1>WS-TX User Guide</H1>
+<H2>Purpose</H2>
+<P class=MsoNormal>This tutorial provides a brief overview of the WS-TX project
+and how to try out the provided examples. For a detail illustration on the
+design, please refer to the provided architecture documentation.</P>
+<H2>Objectives</H2>
+<P class=MsoNormal>The WS-TX project has two main objectives:</P>
+<OL style="MARGIN-TOP: 0in" type=1>
+ <LI class=MsoNormal
+ style="mso-list: l4 level1 lfo1; tab-stops: list .5in">Provide an open source
+ implementation for the web services coordination and transaction management
+ frameworks defined by WS-Coordination, WS-<SPAN
+ class=SpellE>AtomicTransaction</SPAN> and WS-<SPAN
+ class=SpellE>BusinessActivity</SPAN>.
+ <LI class=MsoNormal
+ style="mso-list: l4 level1 lfo1; tab-stops: list .5in">Integrate existing open
+ source JTA implementations (e.g. JOTM, <SPAN class=SpellE>JBoss</SPAN>,
+ Geronimo, etc.) with the web services transaction management framework so that
+ J2EE web services and clients may take part in atomic transactions while using
+ JTA for transaction management. </LI></OL>
+<H2>Overview</H2>
+<P class=MsoNormal>Think of a hypothetical web service that provides banking
+services. The service provides 2 operations: a <SPAN class=PlainTextChar><SPAN
+style="FONT-SIZE: 9pt; mso-bidi-font-size: 12.0pt">credit</SPAN></SPAN>
+operation and a <SPAN class=PlainTextChar><SPAN
+style="FONT-SIZE: 9pt; mso-bidi-font-size: 12.0pt">debit</SPAN></SPAN>
+operation. Now if the two operations are to be used to perform a monetary
+transfer between two accounts, it must be ensured that either both operations
+succeed or neither does. Under these circumstances, the web services
+coordination framework can be used to ensure the atomicity of operations. The
+sample code below shows how a standalone client may use the WS-TX implementation
+in this scenario-</P>
+<P class=StyleCentered><o:p> </o:p></P>
+<P class=StyleCentered><!--[if mso & !supportInlineShapes & supportFields]><span
style='mso-element:field-begin;mso-field-lock:yes'></span><span
style='mso-spacerun:yes'>�</span>SHAPE <span
-style='mso-spacerun:yes'>�</span>\* MERGEFORMAT <span style='mso-element:field-separator'></span><![endif]--><!--[if gte vml 1]><v:shapetype
- id="_x0000_t202" coordsize="21600,21600" o:spt="202" path="m,l,21600r21600,l21600,xe">
- <v:stroke joinstyle="miter"/>
- <v:path gradientshapeok="t" o:connecttype="rect"/>
-</v:shapetype><v:shape id="_x0000_s1030" type="#_x0000_t202" style='width:440.3pt;
- height:271.5pt;mso-position-horizontal-relative:char;
- mso-position-vertical-relative:line' filled="f">
- <v:textbox style='mso-next-textbox:#_x0000_s1030'>
- <![if !mso]>
- <table cellpadding=0 cellspacing=0 width="100%">
- <tr>
- <td><![endif]>
- <div>
- <p class=MsoPlainText><span lang=FR style='mso-ansi-language:FR'>import
- org.apache.ws.transaction.participant.standalone.TransactionManager;<o:p></o:p></span></p>
- <p class=MsoPlainText><span lang=FR style='mso-ansi-language:FR'><o:p> </o:p></span></p>
- <p class=MsoPlainText><span class=GramE>public</span> class .... {</p>
- <p class=MsoPlainText><span style='mso-tab-count:1'>������ </span><span
- class=GramE>public</span> static void main(String[] <span class=SpellE>args</span>)
- throws Exception {</p>
- <p class=MsoPlainText><span style='mso-tab-count:2'>������������� </span>Bank
- <span class=SpellE>bank</span>= new <span class=SpellE><span class=GramE>BankServiceLocator</span></span><span
- class=GramE>(</span>).<span class=SpellE>getBank</span>();</p>
- <p class=MsoPlainText><span style='mso-tab-count:2'>������������� </span><span
- class=SpellE>TransactionManager</span> tm= <span class=SpellE><span
- class=GramE>TransactionManager.getInstance</span></span><span class=GramE>(</span>);</p>
- <p class=MsoPlainText><span style='mso-tab-count:2'>������������� </span><span
- class=SpellE><span class=GramE>tm.begin</span></span><span class=GramE>(</span>);</p>
- <p class=MsoPlainText><span style='mso-tab-count:2'>������������� </span><span
- class=GramE>try</span> {</p>
- <p class=MsoPlainText><span style='mso-tab-count:3'>�������������������� </span><span
- class=SpellE><span class=GramE>bank.credit</span></span><span class=GramE>(</span>1001,
- 10);</p>
- <p class=MsoPlainText><span style='mso-tab-count:3'>�������������������� </span><span
- class=SpellE><span class=GramE>bank.debit</span></span><span class=GramE>(</span>1002,
- 10);</p>
- <p class=MsoPlainText><span style='mso-tab-count:2'>������������� </span>}</p>
- <p class=MsoPlainText><span style='mso-tab-count:2'>������������� </span><span
- class=GramE>catch</span> (Exception e) {</p>
- <p class=MsoPlainText><span style='mso-tab-count:3'>�������������������� </span><span
- class=SpellE><span class=GramE>tm.rollback</span></span><span class=GramE>(</span>);</p>
- <p class=MsoPlainText><span style='mso-tab-count:2'>������������� </span>}</p>
- <p class=MsoPlainText><span style='mso-tab-count:2'>������������� </span><span
- class=SpellE><span class=GramE>tm.commit</span></span><span class=GramE>(</span>);</p>
- <p class=MsoPlainText><span style='mso-tab-count:1'>������ </span>}</p>
- <p class=MsoPlainText>}</p>
- </div>
- <![if !mso]></td>
- </tr>
- </table>
- <![endif]></v:textbox>
- <w:wrap type="none"/>
- <w:anchorlock/>
-</v:shape><![endif]--><![if !vml]><img width=593 height=368
-src="user-guide_files/image001.gif"
+style='mso-spacerun:yes'>�</span>\* MERGEFORMAT <span style='mso-element:field-separator'></span><![endif]--><!--[if gte vml 1]><v:shapetype
+id=_x0000_t202 coordsize = "21600,21600" o:spt = "202" path =
+" m0,0 l0,21600,21600,21600,21600,0 xe"><v:stroke joinstyle =
+"miter"></v:stroke><v:path gradientshapeok = "t" o:connecttype =
+"rect"></v:path></v:shapetype><v:shape id=_x0000_s1028
+style="WIDTH: 440.3pt; HEIGHT: 271.5pt; mso-position-horizontal-relative: char; mso-position-vertical-relative: line"
+type = "#_x0000_t202" coordsize = "21600,21600" filled = "f"><v:textbox
+style="MARGIN-TOP: 4.718pt; LEFT: auto; MARGIN-LEFT: 8.312pt; WIDTH: 425.156pt; TOP: auto; HEIGHT: 263.562pt; mso-next-textbox: #_x0000_s1028"><![if !mso]>
+<TABLE cellSpacing=0 cellPadding=0 width="100%">
+ <TBODY>
+ <TR>
+ <TD><![endif]>
+ <DIV>
+ <P class=MsoPlainText><SPAN lang=FR style="mso-ansi-language: FR">import
+ org.apache.ws.transaction.participant.standalone.TransactionManager;<o:p></o:p></SPAN></P>
+ <P class=MsoPlainText><SPAN lang=FR
+ style="mso-ansi-language: FR"><o:p> </o:p></SPAN></P>
+ <P class=MsoPlainText><SPAN class=GramE>public</SPAN> class .... {</P>
+ <P class=MsoPlainText><SPAN
+ style="mso-tab-count: 1"> </SPAN><SPAN
+ class=GramE>public</SPAN> static void main(String[] <SPAN
+ class=SpellE>args</SPAN>) throws Exception {</P>
+ <P class=MsoPlainText><SPAN
+ style="mso-tab-count: 2">
+ </SPAN>Bank <SPAN class=SpellE>bank</SPAN>= new <SPAN class=SpellE><SPAN
+ class=GramE>BankServiceLocator</SPAN></SPAN><SPAN
+ class=GramE>(</SPAN>).<SPAN class=SpellE>getBank</SPAN>();</P>
+ <P class=MsoPlainText><SPAN
+ style="mso-tab-count: 2">
+ </SPAN><SPAN class=SpellE>TransactionManager</SPAN> tm= <SPAN
+ class=SpellE><SPAN
+ class=GramE>TransactionManager.getInstance</SPAN></SPAN><SPAN
+ class=GramE>(</SPAN>);</P>
+ <P class=MsoPlainText><SPAN
+ style="mso-tab-count: 2">
+ </SPAN><SPAN class=SpellE><SPAN class=GramE>tm.begin</SPAN></SPAN><SPAN
+ class=GramE>(</SPAN>);</P>
+ <P class=MsoPlainText><SPAN
+ style="mso-tab-count: 2">
+ </SPAN><SPAN class=GramE>try</SPAN> {</P>
+ <P class=MsoPlainText><SPAN
+ style="mso-tab-count: 3">
+ </SPAN><SPAN class=SpellE><SPAN class=GramE>bank.credit</SPAN></SPAN><SPAN
+ class=GramE>(</SPAN>1001, 10);</P>
+ <P class=MsoPlainText><SPAN
+ style="mso-tab-count: 3">
+ </SPAN><SPAN class=SpellE><SPAN class=GramE>bank.debit</SPAN></SPAN><SPAN
+ class=GramE>(</SPAN>1002, 10);</P>
+ <P class=MsoPlainText><SPAN
+ style="mso-tab-count: 2">
+ </SPAN>}</P>
+ <P class=MsoPlainText><SPAN
+ style="mso-tab-count: 2">
+ </SPAN><SPAN class=GramE>catch</SPAN> (Exception e) {</P>
+ <P class=MsoPlainText><SPAN
+ style="mso-tab-count: 3">
+ </SPAN><SPAN class=SpellE><SPAN class=GramE>tm.rollback</SPAN></SPAN><SPAN
+ class=GramE>(</SPAN>);</P>
+ <P class=MsoPlainText><SPAN
+ style="mso-tab-count: 2">
+ </SPAN>}</P>
+ <P class=MsoPlainText><SPAN
+ style="mso-tab-count: 2">
+ </SPAN><SPAN class=SpellE><SPAN class=GramE>tm.commit</SPAN></SPAN><SPAN
+ class=GramE>(</SPAN>);</P>
+ <P class=MsoPlainText><SPAN
+ style="mso-tab-count: 1"> </SPAN>}</P>
+ <P class=MsoPlainText>}</P></DIV><![if !mso]></TD></TR></TBODY></TABLE><![endif]></v:textbox><w:wrap
+type = "none"></w:wrap><w:anchorlock></w:anchorlock></v:shape><![endif]--><![if !vml]><img width=593 height=368
+src="user-guide1_files/image004.gif"
alt="Text Box: import org.apache.ws.transaction.participant.standalone.TransactionManager; public class .... { public static void main(String[] args) throws Exception { Bank bank= new BankServiceLocator().getBank(); TransactionManager tm= TransactionManager.getInstance(); tm.begin(); try { bank.credit(1001, 10); bank.debit(1002, 10); } catch (Exception e) { tm.rollback(); } tm.commit(); } } "
-v:shapes="_x0000_s1030"><![endif]><!--[if gte vml 1]><v:shapetype id="_x0000_t75"
- coordsize="21600,21600" o:spt="75" o:preferrelative="t" path="m@4@5l@4@11@9@11@9@5xe"
- filled="f" stroked="f">
- <v:stroke joinstyle="miter"/>
- <v:formulas>
- <v:f eqn="if lineDrawn pixelLineWidth 0"/>
- <v:f eqn="sum @0 1 0"/>
- <v:f eqn="sum 0 0 @1"/>
- <v:f eqn="prod @2 1 2"/>
- <v:f eqn="prod @3 21600 pixelWidth"/>
- <v:f eqn="prod @3 21600 pixelHeight"/>
- <v:f eqn="sum @0 0 1"/>
- <v:f eqn="prod @6 1 2"/>
- <v:f eqn="prod @7 21600 pixelWidth"/>
- <v:f eqn="sum @8 21600 0"/>
- <v:f eqn="prod @7 21600 pixelHeight"/>
- <v:f eqn="sum @10 21600 0"/>
- </v:formulas>
- <v:path o:extrusionok="f" gradientshapeok="t" o:connecttype="rect"/>
- <o:lock v:ext="edit" aspectratio="t"/>
-</v:shapetype><![endif]--><!--[if mso & !supportInlineShapes & supportFields]><v:shape
+v:shapes="_x0000_s1028"><![endif]><!--[if gte vml 1]><v:shapetype id=_x0000_t75
+coordsize = "21600,21600" o:preferrelative = "t" o:spt = "75" filled = "f"
+stroked = "f" path = " m@4@5 l@4@11@9@11@9@5 xe"><v:stroke joinstyle =
+"miter"></v:stroke><v:formulas><v:f eqn =
+"if lineDrawn pixelLineWidth 0 "></v:f><v:f eqn = "sum @0 1 0 "></v:f><v:f eqn =
+"sum 0 0 @1 "></v:f><v:f eqn = "prod @2 1 2 "></v:f><v:f eqn =
+"prod @3 21600 pixelWidth "></v:f><v:f eqn =
+"prod @3 21600 pixelHeight "></v:f><v:f eqn = "sum @0 0 1 "></v:f><v:f eqn =
+"prod @6 1 2 "></v:f><v:f eqn = "prod @7 21600 pixelWidth "></v:f><v:f eqn =
+"sum @8 21600 0 "></v:f><v:f eqn = "prod @7 21600 pixelHeight "></v:f><v:f eqn =
+"sum @10 21600 0 "></v:f></v:formulas><v:path o:extrusionok = "f"
+gradientshapeok = "t" o:connecttype = "rect"></v:path><o:lock aspectratio="t"
+v:ext="edit"></o:lock></v:shapetype><![endif]--><!--[if mso & !supportInlineShapes & supportFields]><v:shape
id="_x0000_i1025" type="#_x0000_t75" style='width:440.3pt;height:271.5pt'>
<v:imagedata croptop="-65520f" cropbottom="65520f"/>
-</v:shape><span style='mso-element:field-end'></span><![endif]--></p>
-
-<p class=MsoNormal>The web services coordination framework describes how web
-services may join in and participate in coordinated activities. It also
-stipulates how participants may reach collective agreement on the ultimate
-outcome of such activities.</p>
-
-<p class=MsoNormal>Though the framework is platform independent, participant
-services unavoidably need to use numerous incompatible, platform-specific
-technologies to perform transactional work. For instance, if the banking
-service mentioned above is implemented in J2EE, its implementation would use
-JTA distributed transactions necessarily. Hence in the context of coordinated
-activities, the underlying JTA runtime is required to coordinate with an
-external coordinator to decide if and when to make any work performed as part
-of such activities, persistent. The WS-TX provides this capability by
-integrating with existing transaction managers so that JTA distributed
-transactions started locally may be coordinated by an external coordinator
-through the web services coordination framework.</p>
-
-<p class=MsoNormal>Furthermore, the WS-TX runtime is also capable of implicitly
-propagating the local transaction context of a calling thread on web service
-invocations. This allows distributed transactions to be propagated across
-heterogeneous application domains. To illustrate this point consider how the
-same use case illustrated above would be implemented by a J2EE client.</p>
-
-<p class=StyleCentered><!--[if mso & !supportInlineShapes & supportFields]><span
+</v:shape><span style='mso-element:field-end'></span><![endif]--></P>
+<P class=MsoNormal>The web services coordination framework describes how web
+services may join in and participate in coordinated activities. It also
+stipulates how participants may reach collective agreement on the ultimate
+outcome of such activities.</P>
+<P class=MsoNormal>Though the framework is platform independent, participant
+services unavoidably need to use numerous incompatible, platform-specific
+technologies to perform transactional work. For instance, if the banking service
+mentioned above is implemented in J2EE, its implementation would use JTA
+distributed transactions necessarily. Hence in the context of coordinated
+activities, the underlying JTA runtime is required to coordinate with an
+external coordinator to decide if and when to make any work performed as part of
+such activities, persistent. The WS-TX provides this capability by integrating
+with existing transaction managers so that JTA distributed transactions started
+locally may be coordinated by an external coordinator through the web services
+coordination framework.</P>
+<P class=MsoNormal>Furthermore, the WS-TX runtime is also capable of implicitly
+propagating the local transaction context of a calling thread on web service
+invocations. This allows distributed transactions to be propagated across
+heterogeneous application domains. To illustrate this point consider how the
+same use case illustrated above would be implemented by a J2EE client.</P>
+<P class=StyleCentered><!--[if mso & !supportInlineShapes & supportFields]><span
style='mso-element:field-begin;mso-field-lock:yes'></span><span
style='mso-spacerun:yes'>�</span>SHAPE <span style='mso-spacerun:yes'>�</span>\*
-MERGEFORMAT <span style='mso-element:field-separator'></span><![endif]--><!--[if gte vml 1]><v:shape
- id="_x0000_s1033" type="#_x0000_t202" style='width:363.1pt;height:325.5pt;
- mso-position-horizontal-relative:char;mso-position-vertical-relative:line'
- filled="f">
- <v:textbox>
- <![if !mso]>
- <table cellpadding=0 cellspacing=0 width="100%">
- <tr>
- <td><![endif]>
- <div>
- <p class=MsoPlainText><span lang=FR style='mso-ansi-language:FR'>public
- class ... implements SessionBean {<o:p></o:p></span></p>
- <p class=MsoPlainText><span lang=FR style='mso-ansi-language:FR'><span
- style='mso-tab-count:1'>������ </span>private SessionContext ctx;<o:p></o:p></span></p>
- <p class=MsoPlainText><span lang=FR style='mso-ansi-language:FR'><o:p> </o:p></span></p>
- <p class=MsoPlainText><span lang=FR style='mso-ansi-language:FR'><span
- style='mso-tab-count:1'>������ </span>public void
- setSessionContext(SessionContext ctx) {<o:p></o:p></span></p>
- <p class=MsoPlainText><span lang=FR style='mso-ansi-language:FR'><span
- style='mso-tab-count:2'>������������� </span></span><span class=SpellE>this.ctx</span>=
- <span class=SpellE>ctx</span>;</p>
- <p class=MsoPlainText><span style='mso-tab-count:1'>������ </span>}</p>
- <p class=MsoPlainText><o:p> </o:p></p>
- <p class=MsoPlainText><span style='mso-tab-count:1'>������ </span><span
- class=GramE>public</span> ... <span class=SpellE>foo</span>(....) {</p>
- <p class=MsoPlainText><span style='mso-tab-count:2'>������������� </span>Bank
- <span class=SpellE>bank</span>= new <span class=SpellE><span class=GramE>BankServiceLocator</span></span><span
- class=GramE>(</span>).<span class=SpellE>getBank</span>();</p>
- <p class=MsoPlainText><span style='mso-tab-count:2'>������������� </span><span
- class=SpellE>UserTransaction</span> <span class=SpellE>ut</span>= <span
- class=SpellE><span class=GramE>ctx.getUserTransaction</span></span><span
- class=GramE>(</span>);</p>
- <p class=MsoPlainText><span style='mso-tab-count:2'>������������� </span><span
- class=SpellE><span class=GramE>ut.begin</span></span><span class=GramE>(</span>);</p>
- <p class=MsoPlainText><span style='mso-tab-count:2'>������������� </span><span
- class=GramE>try</span> {</p>
- <p class=MsoPlainText><span style='mso-tab-count:3'>�������������������� </span><span
- class=SpellE><span class=GramE>bank.credit</span></span><span class=GramE>(</span>1001,
- 10);</p>
- <p class=MsoPlainText><span style='mso-tab-count:3'>�������������������� </span><span
- class=SpellE><span class=GramE>bank.debit</span></span><span class=GramE>(</span>1002,
- 10);</p>
- <p class=MsoPlainText><span style='mso-tab-count:2'>������������� </span>}</p>
- <p class=MsoPlainText><span style='mso-tab-count:2'>������������� </span><span
- class=GramE>catch</span> (Exception e) {</p>
- <p class=MsoPlainText><span style='mso-tab-count:3'>�������������������� </span><span
- class=SpellE><span class=GramE>ut.rollback</span></span><span class=GramE>(</span>);</p>
- <p class=MsoPlainText><span style='mso-tab-count:2'>������������� </span>}</p>
- <p class=MsoPlainText><span style='mso-tab-count:2'>������������� </span><span
- class=SpellE><span class=GramE>ut.commit</span></span><span class=GramE>(</span>);</p>
- <p class=MsoPlainText><span style='mso-tab-count:1'>������ </span>}</p>
- <p class=MsoPlainText>}</p>
- <p class=MsoNormal><o:p> </o:p></p>
- </div>
- <![if !mso]></td>
- </tr>
- </table>
- <![endif]></v:textbox>
- <w:wrap type="none" side="left"/>
- <w:anchorlock/>
-</v:shape><![endif]--><![if !vml]><img width=490 height=440
-src="user-guide_files/image004.gif"
+MERGEFORMAT <span style='mso-element:field-separator'></span><![endif]--><!--[if gte vml 1]><v:shape
+id=_x0000_s1027
+style="WIDTH: 363.1pt; HEIGHT: 325.5pt; mso-position-horizontal-relative: char; mso-position-vertical-relative: line"
+type = "#_x0000_t202" coordsize = "21600,21600" filled = "f"><v:textbox
+style="MARGIN-TOP: 4.718pt; LEFT: auto; MARGIN-LEFT: 8.312pt; WIDTH: 347.968pt; TOP: auto; HEIGHT: 317.562pt"><![if !mso]>
+<TABLE cellSpacing=0 cellPadding=0 width="100%">
+ <TBODY>
+ <TR>
+ <TD><![endif]>
+ <DIV>
+ <P class=MsoPlainText><SPAN lang=FR style="mso-ansi-language: FR">public
+ class ... implements SessionBean {<o:p></o:p></SPAN></P>
+ <P class=MsoPlainText><SPAN lang=FR style="mso-ansi-language: FR"><SPAN
+ style="mso-tab-count: 1">
+ </SPAN>private SessionContext ctx;<o:p></o:p></SPAN></P>
+ <P class=MsoPlainText><SPAN lang=FR
+ style="mso-ansi-language: FR"><o:p> </o:p></SPAN></P>
+ <P class=MsoPlainText><SPAN lang=FR style="mso-ansi-language: FR"><SPAN
+ style="mso-tab-count: 1">
+ </SPAN>public void setSessionContext(SessionContext ctx)
+ {<o:p></o:p></SPAN></P>
+ <P class=MsoPlainText><SPAN lang=FR style="mso-ansi-language: FR"><SPAN
+ style="mso-tab-count: 2">
+ </SPAN></SPAN><SPAN class=SpellE>this.ctx</SPAN>= <SPAN
+ class=SpellE>ctx</SPAN>;</P>
+ <P class=MsoPlainText><SPAN
+ style="mso-tab-count: 1"> </SPAN>}</P>
+ <P class=MsoPlainText><o:p> </o:p></P>
+ <P class=MsoPlainText><SPAN
+ style="mso-tab-count: 1"> </SPAN><SPAN
+ class=GramE>public</SPAN> ... <SPAN class=SpellE>foo</SPAN>(....) {</P>
+ <P class=MsoPlainText><SPAN
+ style="mso-tab-count: 2">
+ </SPAN>Bank <SPAN class=SpellE>bank</SPAN>= new <SPAN class=SpellE><SPAN
+ class=GramE>BankServiceLocator</SPAN></SPAN><SPAN
+ class=GramE>(</SPAN>).<SPAN class=SpellE>getBank</SPAN>();</P>
+ <P class=MsoPlainText><SPAN
+ style="mso-tab-count: 2">
+ </SPAN><SPAN class=SpellE>UserTransaction</SPAN> <SPAN
+ class=SpellE>ut</SPAN>= <SPAN class=SpellE><SPAN
+ class=GramE>ctx.getUserTransaction</SPAN></SPAN><SPAN
+ class=GramE>(</SPAN>);</P>
+ <P class=MsoPlainText><SPAN
+ style="mso-tab-count: 2">
+ </SPAN><SPAN class=SpellE><SPAN class=GramE>ut.begin</SPAN></SPAN><SPAN
+ class=GramE>(</SPAN>);</P>
+ <P class=MsoPlainText><SPAN
+ style="mso-tab-count: 2">
+ </SPAN><SPAN class=GramE>try</SPAN> {</P>
+ <P class=MsoPlainText><SPAN
+ style="mso-tab-count: 3">
+ </SPAN><SPAN class=SpellE><SPAN class=GramE>bank.credit</SPAN></SPAN><SPAN
+ class=GramE>(</SPAN>1001, 10);</P>
+ <P class=MsoPlainText><SPAN
+ style="mso-tab-count: 3">
+ </SPAN><SPAN class=SpellE><SPAN class=GramE>bank.debit</SPAN></SPAN><SPAN
+ class=GramE>(</SPAN>1002, 10);</P>
+ <P class=MsoPlainText><SPAN
+ style="mso-tab-count: 2">
+ </SPAN>}</P>
+ <P class=MsoPlainText><SPAN
+ style="mso-tab-count: 2">
+ </SPAN><SPAN class=GramE>catch</SPAN> (Exception e) {</P>
+ <P class=MsoPlainText><SPAN
+ style="mso-tab-count: 3">
+ </SPAN><SPAN class=SpellE><SPAN class=GramE>ut.rollback</SPAN></SPAN><SPAN
+ class=GramE>(</SPAN>);</P>
+ <P class=MsoPlainText><SPAN
+ style="mso-tab-count: 2">
+ </SPAN>}</P>
+ <P class=MsoPlainText><SPAN
+ style="mso-tab-count: 2">
+ </SPAN><SPAN class=SpellE><SPAN class=GramE>ut.commit</SPAN></SPAN><SPAN
+ class=GramE>(</SPAN>);</P>
+ <P class=MsoPlainText><SPAN
+ style="mso-tab-count: 1"> </SPAN>}</P>
+ <P class=MsoPlainText>}</P>
+ <P
+class=MsoNormal><o:p> </o:p></P></DIV><![if !mso]></TD></TR></TBODY></TABLE><![endif]></v:textbox><w:wrap
+side = "left" type = "none"></w:wrap><w:anchorlock></w:anchorlock></v:shape><![endif]--><![if !vml]><img width=490 height=440
+src="user-guide1_files/image002.gif"
alt="Text Box: public class ... implements SessionBean { private SessionContext ctx; public void setSessionContext(SessionContext ctx) { this.ctx= ctx; } public ... foo(....) { Bank bank= new BankServiceLocator().getBank(); UserTransaction ut= ctx.getUserTransaction(); ut.begin(); try { bank.credit(1001, 10); bank.debit(1002, 10); } catch (Exception e) { ut.rollback(); } ut.commit(); } } "
-v:shapes="_x0000_s1033"><![endif]><!--[if mso & !supportInlineShapes & supportFields]><v:shape
+v:shapes="_x0000_s1027"><![endif]><!--[if mso & !supportInlineShapes & supportFields]><v:shape
id="_x0000_i1026" type="#_x0000_t75" style='width:363.1pt;height:325.5pt'>
<v:imagedata croptop="-65520f" cropbottom="65520f"/>
-</v:shape><span style='mso-element:field-end'></span><![endif]--></p>
-
-<p class=MsoNormal>Notice that the component uses JTA to ensure atomicity of
-operations. At runtime however, the transaction context of the calling thread
-is propagated to the remote service using the web services coordination
-framework.</p>
-
-<h2>Deliverables</h2>
-
-<p class=MsoNormal>Mainly, the WS-TX project delivers a coordination service
-and a server runtime for using the web services coordination framework for
-distributed transaction management.</p>
-
-<p class=MsoNormal>The coordination service comprise of following web services:</p>
-
-<ul style='margin-top:0cm' type=disc>
- <li class=MsoNormal style='mso-list:l8 level1 lfo6;tab-stops:list 36.0pt'>Activation
- service (WS-Coordination) </li>
- <li class=MsoNormal style='mso-list:l8 level1 lfo6;tab-stops:list 36.0pt'>Registration
- service (WS-Coordination) </li>
- <li class=MsoNormal style='mso-list:l8 level1 lfo6;tab-stops:list 36.0pt'>Completion
- service (WS-<span class=SpellE>AtomicTransaction</span>) </li>
- <li class=MsoNormal style='mso-list:l8 level1 lfo6;tab-stops:list 36.0pt'>Coordinator
- service (WS-<span class=SpellE>AtomicTransaction</span>) </li>
- <li class=MsoNormal style='mso-list:l8 level1 lfo6;tab-stops:list 36.0pt'>Completion
- service (WS-<span class=SpellE>AtomicTransaction</span>) </li>
-</ul>
-
-<p class=MsoNormal>The server runtime is capable of importing and exporting
-transactions to and from J2EE, in accordance with the coordination framework
-described by WS-Coordination and WS-<span class=SpellE>AtomicTransaction</span>.
-It also provides a participant service in accordance with WS-<span
-class=SpellE>AtomicTransaction</span>. As stated before, this allows J2EE web
-services and clients to take part in atomic transactions while using JTA for
-transaction management.</p>
-
-<p class=MsoNormal>Additionally, WS-TX also includes a Transaction Manager
-modeled on <span class=SpellE><span class=PlainTextChar><span style='font-size:
-9.0pt;mso-bidi-font-size:12.0pt'>javax.transaction.TransactionManager</span></span></span>,
-for use by standalone clients that need to coordinate activities using a
-coordination service. Note that this transaction manager cannot be used to
-perform any transactional work at the client end like JTA implementations sited
-elsewhere in this document. It merely provides a convenient API for standalone
-clients to use the coordination framework.</p>
-
-<h2>Status</h2>
-
-<p class=MsoNormal>Presently, the implementation only supports atomic
-transaction coordination type. Business activities will be supported in future.</p>
-
-<p class=MsoNormal>The framework supports importing atomic transactions for
-J2EE web services, i.e. JSR109 (see <span class=PlainTextChar><span
-style='font-size:9.0pt;mso-bidi-font-size:12.0pt'>test/<span class=SpellE>interop</span></span></span>).
-It also supports exporting transactions along web service calls made from J2EE
-by J2EE components like <span class=SpellE>servlets</span> and EJB s (see <span
-class=PlainTextChar><span style='font-size:9.0pt;mso-bidi-font-size:12.0pt'>test/<span
-class=SpellE>servlet</span></span></span>).</p>
-
-<p class=MsoNormal>So far the WS-TX runtime has been integrated with 2 JTA
-implementations, Java Open Transaction Manager (JOTM) from <span class=SpellE>ObjectWeb</span>
-and <span class=SpellE>JBoss</span> transaction manager from <span
-class=SpellE>JBoss</span>. An interoperability test against IBM WS-<span
-class=SpellE>AtomicTransaction/WS-BusinessActivity</span> endpoint is also in
-progress.</p>
-
-<h2>Dependencies</h2>
-
-<p class=MsoNormal>Even though in practice the WS-TX server runtime would be
-most likely used in conjunction with a J2EE server, in order to make the test
-cases as simple as possible, they have been designed to use Apache Tomcat <span
-class=SpellE>servlet</span> container instead.</p>
-
-<p class=MsoNormal>To try out the test cases it is required to integrate at
-least one of the above mentioned JTA implementations with Tomcat. To be
-specific you may use either one of the following transaction managers:</p>
-
-<ul style='margin-top:0cm' type=disc>
- <li class=MsoNormal style='mso-list:l14 level1 lfo9;tab-stops:list 36.0pt'>JOTM
- version 1.4.3 or later </li>
- <li class=MsoNormal style='mso-list:l14 level1 lfo9;tab-stops:list 36.0pt'><span
- class=SpellE>JBoss</span> transaction manager from JBoss-4.0.0RC1 or later
- application server distribution. </li>
-</ul>
-
-<p class=MsoNormal>You also need the Apache WS-<span class=SpellE>Fx</span>/WS-Addressing
-implementation and hence the <span class=SpellE>Xerces</span> XML parser.</p>
-
-<p class=MsoNormal>A list of required jars is provided in <span
-class=PlainTextChar><span style='font-size:9.0pt;mso-bidi-font-size:12.0pt'>%WS-TX_HOME%/lib</span></span>
-and in <span class=PlainTextChar><span style='font-size:9.0pt;mso-bidi-font-size:
-12.0pt'>%WS-TX_HOME%/<span class=SpellE>thirdparty</span>/lib</span></span></p>
-
-<h2>Using WS-TX with different JTA implementations</h2>
-
-<p class=MsoNormal>WS-TX architecture has been designed so that it may be used
-with any JTA implementation provided that it implements the <span
-class=PlainTextChar><span style='font-size:9.0pt;mso-bidi-font-size:12.0pt'>org.apache.ws.transaction.participant.j2ee.TransactionManagerGlue</span></span>
-interface. Two sample implementations of this interface for <span class=SpellE>JBoss</span>
-transaction manager (JBoss-4.0.0RC1 or later) and JOTM (version 1.4.3 or later;
-version 1.5.3 is preferred but this implementation does not take advantage of <span
-class=SpellE><span class=PlainTextChar><span style='font-size:9.0pt;mso-bidi-font-size:
-12.0pt'>XATerminator</span></span></span> provided in this later version of
-JOTM) have been provided under <span class=PlainTextChar><span
-style='font-size:9.0pt;mso-bidi-font-size:12.0pt'>%WS-TX_HOME%/<span
-class=SpellE>thirdparty/src</span></span></span>.</p>
-
-<p class=MsoNormal>In general given a transaction manager, the user should
-first determine whether it supports JCA 1.5 transaction inflow mechanism. If
-so, it is generally possible to come up with an implementation for the above
-interface. It may not be possible to do so otherwise.</p>
-
-<p class=MsoNormal>Lastly, before the Ant build is done (see below), the <span
-class=SpellE><span class=PlainTextChar><span style='font-size:9.0pt;mso-bidi-font-size:
-12.0pt'>TransactionManagerGlueImpl</span></span></span> property in <span
-class=PlainTextChar><span style='font-size:9.0pt;mso-bidi-font-size:12.0pt'>%WS-TX_HOME%/conf/<span
-class=SpellE>jta.conf</span> </span></span>must be set to the fully qualified
-class name of the class implementing <span class=PlainTextChar><span
-style='font-size:9.0pt;mso-bidi-font-size:12.0pt'>org.apache.ws.transaction.participant.j2ee.TransactionManagerGlue</span></span>
-interface for the transaction manager used by the application server runtime.</p>
-
-<h2>Running the provided samples</h2>
-
-<h3>Setup the TCP Monitor</h3>
-
-<p class=MsoNormal>All examples and WS-TX default endpoint configuration
-parameters given in <span class=PlainTextChar><span style='font-size:9.0pt;
-mso-bidi-font-size:12.0pt'>%WS-TX_HOME%/conf/<span class=SpellE>endpoints.conf</span></span></span>
-assume that you are using the TCP monitor to monitor and redirect soap messages
-sent to port 8081 on <span class=SpellE>localhost</span>, to port 8080.</p>
-
-<h3>Configure Jakarta-Tomcat and deploy Axis</h3>
-
-<ol style='margin-top:0cm' start=1 type=1>
- <li class=MsoNormal style='mso-list:l2 level1 lfo12;tab-stops:list 36.0pt'>Install
- Jakarta-Tomcat. The samples have been tested on Jakarta-Tomcat-5.0.25. </li>
- <li class=MsoNormal style='mso-list:l2 level1 lfo12;tab-stops:list 36.0pt'>Deploy
- Apache Axis. Axis-1.2beta3 or later is required. </li>
- <li class=MsoNormal style='mso-list:l2 level1 lfo12;tab-stops:list 36.0pt'>Copy
- the <span class=PlainTextChar><span style='font-size:9.0pt;mso-bidi-font-size:
- 12.0pt'>j2ee.jar</span></span> to <span class=PlainTextChar><span
- style='font-size:9.0pt;mso-bidi-font-size:12.0pt'>%CATALINA_HOME%/shared/lib</span></span>
- </li>
- <li class=MsoNormal style='mso-list:l2 level1 lfo12;tab-stops:list 36.0pt'>*Move*
- all Axis jars in <span class=PlainTextChar><span style='font-size:9.0pt;
- mso-bidi-font-size:12.0pt'>%CATALINA_HOME%/<span class=SpellE>webapps</span>/axis/WEB-INF/lib</span></span>
- to <span class=PlainTextChar><span style='font-size:9.0pt;mso-bidi-font-size:
- 12.0pt'>%CATALINA_HOME%/shared/lib</span></span> </li>
- <li class=MsoNormal style='mso-list:l2 level1 lfo12;tab-stops:list 36.0pt'>If
- you are using <span class=SpellE>JBoss</span> transaction manager, copy <span
- class=SpellE><span class=PlainTextChar><span style='font-size:9.0pt;
- mso-bidi-font-size:12.0pt'>jbossall-client.jar</span></span></span> in <span
- class=PlainTextChar><span style='font-size:9.0pt;mso-bidi-font-size:12.0pt'>%JBOSS_HOME%/client</span></span>
- to <span class=PlainTextChar><span style='font-size:9.0pt;mso-bidi-font-size:
- 12.0pt'>%CATALINA_HOME%/shared/lib</span></span> </li>
- <li class=MsoNormal style='mso-list:l2 level1 lfo12;tab-stops:list 36.0pt'>If
- you are using JOTM copy<span style='mso-spacerun:yes'>� </span><span
- class=SpellE><span class=PlainTextChar><span style='font-size:9.0pt;
- mso-bidi-font-size:12.0pt'>jotm.jar</span></span></span>, <span
- class=SpellE><span class=PlainTextChar><span style='font-size:9.0pt;
- mso-bidi-font-size:12.0pt'>jonas_timer.jar</span></span></span> and <span
- class=SpellE><span class=PlainTextChar><span style='font-size:9.0pt;
- mso-bidi-font-size:12.0pt'>jotm_iiop_stubs.jar</span></span></span> in <span
- class=PlainTextChar><span style='font-size:9.0pt;mso-bidi-font-size:12.0pt'>%JOTM_HOME%/lib</span></span>
- to <span class=PlainTextChar><span style='font-size:9.0pt;mso-bidi-font-size:
- 12.0pt'>%CATALINA_HOME%/shared/lib</span></span> </li>
- <li class=MsoNormal style='mso-list:l2 level1 lfo12;tab-stops:list 36.0pt'>Copy
- the <span class=SpellE><span class=PlainTextChar><span style='font-size:
- 9.0pt;mso-bidi-font-size:12.0pt'>addressing.jar</span></span></span> from
- WS-<span class=SpellE>Fx</span>/WS-Addressing to <span
- class=PlainTextChar><span style='font-size:9.0pt;mso-bidi-font-size:12.0pt'>%CATALINA_HOME%/shared/lib</span></span>
- </li>
-</ol>
-
-<h3>Build and deploy WS-TX</h3>
-
-<ol style='margin-top:0cm' start=1 type=1>
- <li class=MsoNormal style='mso-list:l0 level1 lfo15;tab-stops:list 36.0pt'>Modify
- <span class=PlainTextChar><span style='font-size:9.0pt;mso-bidi-font-size:
- 12.0pt'>%WS-TX_HOME%/conf/<span class=SpellE>jta.conf</span></span></span>.
- The <span class=SpellE><span class=PlainTextChar><span style='font-size:
- 9.0pt;mso-bidi-font-size:12.0pt'>TransactionManagerGlueImpl</span></span></span>
- property must be set to the fully qualified class name of the class
- implementing <span class=PlainTextChar><span style='font-size:9.0pt;
- mso-bidi-font-size:12.0pt'>org.apache.ws.transaction.participant.j2ee.TransactionManagerGlue</span></span>
- interface for the transaction manager that you plan to use. Two sample
- implementations are provided for <span class=SpellE>JBoss</span>
- transaction manager and JOTM. These are available in <span
- class=PlainTextChar><span style='font-size:9.0pt;mso-bidi-font-size:12.0pt'>%WS-TX_HOME%/<span
- class=SpellE>thirdparty/src</span></span></span>. </li>
- <li class=MsoNormal style='mso-list:l0 level1 lfo15;tab-stops:list 36.0pt'>Modify
- <span class=PlainTextChar><span style='font-size:9.0pt;mso-bidi-font-size:
- 12.0pt'>%WS-TX_HOME%/build.properties</span></span>. The <span
- class=SpellE><span class=PlainTextChar><span style='font-size:9.0pt;
- mso-bidi-font-size:12.0pt'>thirdparty-src.dir</span></span></span>
- property must be set to any third party sources that must be compiled and
- packaged into the <span class=SpellE><span class=PlainTextChar><span
- style='font-size:9.0pt;mso-bidi-font-size:12.0pt'>ws-tx.jar</span></span></span>.
- The <span class=SpellE><span class=PlainTextChar><span style='font-size:
- 9.0pt;mso-bidi-font-size:12.0pt'>thirdparty-lib.dir</span></span></span>
- property points to third party libraries that are required to compile code
- provided under <span class=SpellE><span class=PlainTextChar><span
- style='font-size:9.0pt;mso-bidi-font-size:12.0pt'>thirdparty-src.dir</span></span></span>.
- These properties are provided for you to write your own <span
- class=PlainTextChar><span style='font-size:9.0pt;mso-bidi-font-size:12.0pt'>org.apache.ws.transaction.participant.j2ee.TransactionManagerGlue</span></span>
- implementations and have them compiled and bundled along with the main <span
- class=SpellE><span class=PlainTextChar><span style='font-size:9.0pt;
- mso-bidi-font-size:12.0pt'>ws-tx.jar</span></span></span>. By default the
- properties are set to <span class=PlainTextChar><span style='font-size:
- 9.0pt;mso-bidi-font-size:12.0pt'>%WS-TX_HOME%/<span class=SpellE>thirdparty/src</span></span></span>
- and <span class=PlainTextChar><span style='font-size:9.0pt;mso-bidi-font-size:
- 12.0pt'>%WS-TX_HOME%/<span class=SpellE>thirdparty</span>/lib</span></span>
- respectively. </li>
- <li class=MsoNormal style='mso-list:l0 level1 lfo15;tab-stops:list 36.0pt'>Copy
- the source file(s) for the class referred to in step 1 and any required
- libraries to locations specified in step 2. The sample implementations
- provided under <span class=PlainTextChar><span style='font-size:9.0pt;
- mso-bidi-font-size:12.0pt'>%WS-TX_HOME%/<span class=SpellE>thirdparty/src</span></span></span>
- require the following libraries- </li>
- <ol style='margin-top:0cm' start=1 type=a>
- <li class=MsoNormal style='mso-list:l0 level2 lfo15;tab-stops:list 72.0pt'><span
- class=SpellE><span class=PlainTextChar><span style='font-size:9.0pt;
- mso-bidi-font-size:12.0pt'>JBossTransactionManagerGlueImpl.java</span></span></span>
- and <span class=SpellE><span class=PlainTextChar><span style='font-size:
- 9.0pt;mso-bidi-font-size:12.0pt'>JBossUserTransactionFactory.java</span></span></span>:
- <span class=SpellE><span class=PlainTextChar><span style='font-size:9.0pt;
- mso-bidi-font-size:12.0pt'>jbossall-client.jar</span></span></span> from
- JBoss-4.0.0RC1 or later. </li>
- <li class=MsoNormal style='mso-list:l0 level2 lfo15;tab-stops:list 72.0pt'><span
- class=PlainTextChar><span style='font-size:9.0pt;mso-bidi-font-size:12.0pt'>JOTM1_4_3TransactionManagerGlueImpl.java</span></span>:
- <span class=SpellE><span class=PlainTextChar><span style='font-size:9.0pt;
- mso-bidi-font-size:12.0pt'>jotm.jar</span></span></span>, <span
- class=SpellE><span class=PlainTextChar><span style='font-size:9.0pt;
- mso-bidi-font-size:12.0pt'>jonas_timer.jar</span></span></span>, <span
- class=SpellE><span class=PlainTextChar><span style='font-size:9.0pt;
- mso-bidi-font-size:12.0pt'>jotm_iiop_stubs.jar</span></span></span> from
- JOTM 1.4.3 </li>
- </ol>
- <li class=MsoNormal style='mso-list:l0 level1 lfo15;tab-stops:list 36.0pt'>If
- necessary, modify <span class=PlainTextChar><span style='font-size:9.0pt;
- mso-bidi-font-size:12.0pt'>%WS-TX_HOME%/conf/<span class=SpellE>endpoints.conf</span></span></span>.
- The properties declared here provide endpoint information on different
- services *to* the coordination service and server runtime. The default
- values provided assume that services are available at �<span
- class=PlainTextChar><span style='font-size:9.0pt;mso-bidi-font-size:12.0pt'>http://localhost:8081/axis/services/...</span></span>�
- If you use normal settings for Catalina and Axis, you do not need to
- modify these properties. </li>
- <li class=MsoNormal style='mso-list:l0 level1 lfo15;tab-stops:list 36.0pt'>Copy
- all the jars in <span class=PlainTextChar><span style='font-size:9.0pt;
- mso-bidi-font-size:12.0pt'>%AXIS_HOME%/lib</span></span>, the <span
- class=SpellE>Xerces</span> jars, the <span class=SpellE><span
- class=PlainTextChar><span style='font-size:9.0pt;mso-bidi-font-size:12.0pt'>addressing.jar</span></span></span>
- (from Apache WS-<span class=SpellE>Fx</span>/WS-Addressing) and <span
- class=PlainTextChar><span style='font-size:9.0pt;mso-bidi-font-size:12.0pt'>j2ee.jar</span></span>
- to <span class=PlainTextChar><span style='font-size:9.0pt;mso-bidi-font-size:
- 12.0pt'>%WS-TX_HOME%/lib</span></span>. </li>
- <li class=MsoNormal style='mso-list:l0 level1 lfo15;tab-stops:list 36.0pt'>To
- build the <span class=SpellE><span class=PlainTextChar><span
- style='font-size:9.0pt;mso-bidi-font-size:12.0pt'>ws-tx.jar</span></span></span>,
- enter<br clear=all>
- <br clear=all>
- <span class=PlainTextChar><span style='font-size:9.0pt;mso-bidi-font-size:
- 12.0pt'>ant dist<br clear=all>
- <br clear=all>
- </span></span>in <span class=PlainTextChar><span style='font-size:9.0pt;
- mso-bidi-font-size:12.0pt'>%WS-TX_HOME%</span></span>. </li>
- <li class=MsoNormal style='mso-list:l0 level1 lfo15;tab-stops:list 36.0pt'>Copy
- <span class=PlainTextChar><span style='font-size:9.0pt;mso-bidi-font-size:
- 12.0pt'>%WS-TX_HOME%/build/ws-tx0.1.jar</span></span> to <span
- class=PlainTextChar><span style='font-size:9.0pt;mso-bidi-font-size:12.0pt'>%CATALINA_HOME%/shared/lib</span></span>.
- </li>
- <li class=MsoNormal style='mso-list:l0 level1 lfo15;tab-stops:list 36.0pt'>Use
- the <span class=PlainTextChar><span style='font-size:9.0pt;mso-bidi-font-size:
- 12.0pt'>server-<span class=SpellE>config.wsdd</span></span></span> file
- provided in <span class=PlainTextChar><span style='font-size:9.0pt;
- mso-bidi-font-size:12.0pt'>%WS-TX_HOME%/conf</span></span> to deploy the
- services sited above. </li>
- <li class=MsoNormal style='mso-list:l0 level1 lfo15;tab-stops:list 36.0pt'>Use
- the <span class=PlainTextChar><span style='font-size:9.0pt;mso-bidi-font-size:
- 12.0pt'>server-<span class=SpellE>config.wsdd</span></span></span> file
- provided in <span class=PlainTextChar><span style='font-size:9.0pt;
- mso-bidi-font-size:12.0pt'>%WS-TX_HOME%/conf</span></span> to deploy WS-TX
- and WS-Addressing handlers.<br clear=all>
- <br clear=all>
- Note: WS-TX implementation uses reference properties which must be
- configured with the WS-Addressing handler as illustrated in the provided <span
- class=PlainTextChar><span style='font-size:9.0pt;mso-bidi-font-size:12.0pt'>server-<span
- class=SpellE>config.wsdd</span></span></span> file.<br clear=all>
- <br clear=all>
- Note: the global type mappings provided in <span class=PlainTextChar><span
- style='font-size:9.0pt;mso-bidi-font-size:12.0pt'>%WS-TX_HOME%/conf/server-<span
- class=SpellE>config.wsdd</span></span></span> are used by the
- WS-Addressing implementation and *must* be copied to the <span
- class=PlainTextChar><span style='font-size:9.0pt;mso-bidi-font-size:12.0pt'>server-<span
- class=SpellE>config.wsdd</span></span></span>. </li>
- <li class=MsoNormal style='mso-list:l0 level1 lfo15;tab-stops:list 36.0pt'>Copy
- <span class=PlainTextChar><span style='font-size:9.0pt;mso-bidi-font-size:
- 12.0pt'>%WS-TX_HOME%/conf/client-<span class=SpellE>config.wsdd</span></span></span>
- to <span class=PlainTextChar><span style='font-size:9.0pt;mso-bidi-font-size:
- 12.0pt'>%CATALINA_HOME%/<span class=SpellE>webapps</span>/axis/WEB-INF/classes</span></span>.
- Modify the <span class=PlainTextChar><span style='font-size:9.0pt;
- mso-bidi-font-size:12.0pt'>client-<span class=SpellE>config.wsdd</span></span></span>
- copied to <span class=PlainTextChar><span style='font-size:9.0pt;
- mso-bidi-font-size:12.0pt'>%CATALINA_HOME%/<span class=SpellE>webapps</span>/axis/WEB-INF/classes</span></span>
- to deploy the <span class=PlainTextChar><span style='font-size:9.0pt;
- mso-bidi-font-size:12.0pt'>org.apache.ws.transaction.participant.j2ee.handler.TransactionHandler</span></span>
- on request flow. Also remove the <span class=PlainTextChar><span
- style='font-size:9.0pt;mso-bidi-font-size:12.0pt'>org.apache.ws.transaction.participant.standalone.handler.TransactionHandler</span></span>
- used by standalone clients. The modified <span class=PlainTextChar><span
- style='font-size:9.0pt;mso-bidi-font-size:12.0pt'>client-<span
- class=SpellE>config.wsdd</span></span></span> is shown below. </li>
-</ol>
-
-<p class=StyleCentered><!--[if mso & !supportInlineShapes & supportFields]><span
+</v:shape><span style='mso-element:field-end'></span><![endif]--></P>
+<P class=MsoNormal>Notice that the component uses JTA to ensure atomicity of
+operations. At runtime however, the transaction context of the calling thread is
+propagated to the remote service using the web services coordination
+framework.</P>
+<H2>Deliverables</H2>
+<P class=MsoNormal>Mainly, the WS-TX project delivers a coordination service and
+a server runtime for using the web services coordination framework for
+distributed transaction management.</P>
+<P class=MsoNormal>The coordination service comprise of following web
+services:</P>
+<UL style="MARGIN-TOP: 0in" type=disc>
+ <LI class=MsoNormal
+ style="mso-list: l5 level1 lfo2; tab-stops: list .5in">Activation service
+ (WS-Coordination)
+ <LI class=MsoNormal
+ style="mso-list: l5 level1 lfo2; tab-stops: list .5in">Registration service
+ (WS-Coordination)
+ <LI class=MsoNormal
+ style="mso-list: l5 level1 lfo2; tab-stops: list .5in">Completion service
+ (WS-<SPAN class=SpellE>AtomicTransaction</SPAN>)
+ <LI class=MsoNormal
+ style="mso-list: l5 level1 lfo2; tab-stops: list .5in">Coordinator service
+ (WS-<SPAN class=SpellE>AtomicTransaction</SPAN>)
+ <LI class=MsoNormal
+ style="mso-list: l5 level1 lfo2; tab-stops: list .5in">Completion service
+ (WS-<SPAN class=SpellE>AtomicTransaction</SPAN>) </LI></UL>
+<P class=MsoNormal>The server runtime is capable of importing and exporting
+transactions to and from J2EE, in accordance with the coordination framework
+described by WS-Coordination and WS-<SPAN class=SpellE>AtomicTransaction</SPAN>.
+It also provides a participant service in accordance with WS-<SPAN
+class=SpellE>AtomicTransaction</SPAN>. As stated before, this allows J2EE web
+services and clients to take part in atomic transactions while using JTA for
+transaction management.</P>
+<P class=MsoNormal>Additionally, WS-TX also includes a Transaction Manager
+modeled on <SPAN class=SpellE><SPAN class=PlainTextChar><SPAN
+style="FONT-SIZE: 9pt; mso-bidi-font-size: 12.0pt">javax.transaction.TransactionManager</SPAN></SPAN></SPAN>,
+for use by standalone clients that need to coordinate activities using a
+coordination service. Note that this transaction manager cannot be used to
+perform any transactional work at the client end like JTA implementations sited
+elsewhere in this document. It merely provides a convenient API for standalone
+clients to use the coordination framework.</P>
+<H2>Status</H2>
+<P class=MsoNormal>Presently, the implementation only supports atomic
+transaction coordination type. Business activities will be supported in
+future.</P>
+<P class=MsoNormal>The framework supports importing atomic transactions for J2EE
+web services, i.e. JSR109 (see <SPAN class=SpellE><SPAN
+class=PlainTextChar><SPAN
+style="FONT-SIZE: 9pt; mso-bidi-font-size: 12.0pt">src/samples/interop</SPAN></SPAN></SPAN>).
+It also supports exporting transactions along web service calls made from J2EE
+by J2EE components like <SPAN class=SpellE>servlets</SPAN> and EJB s (see <SPAN
+class=SpellE><SPAN class=PlainTextChar><SPAN
+style="FONT-SIZE: 9pt; mso-bidi-font-size: 12.0pt">src/samples/servlet</SPAN></SPAN></SPAN>).</P>
+<P class=MsoNormal>So far the WS-TX runtime has been integrated with 2 JTA
+implementations, Java Open Transaction Manager (JOTM) from <SPAN
+class=SpellE>ObjectWeb</SPAN> and <SPAN class=SpellE>JBoss</SPAN> transaction
+manager from <SPAN class=SpellE>JBoss</SPAN>.</P>
+<H2>Dependencies</H2>
+<P class=MsoNormal>Even though in practice the WS-TX server runtime would be
+most likely used in conjunction with a J2EE server, in order to make the test
+cases as simple as possible, they have been designed to use Apache Tomcat <SPAN
+class=SpellE>servlet</SPAN> container instead.</P>
+<P class=MsoNormal>To try out the test cases it is required to integrate at
+least one of the above mentioned JTA implementations with Tomcat. To be specific
+you may use either one of the following transaction managers:</P>
+<UL style="MARGIN-TOP: 0in" type=disc>
+ <LI class=MsoNormal
+ style="mso-list: l8 level1 lfo3; tab-stops: list .5in">JOTM version 1.4.3 or
+ later
+ <LI class=MsoNormal
+ style="mso-list: l8 level1 lfo3; tab-stops: list .5in"><SPAN
+ class=SpellE>JBoss</SPAN> transaction manager from JBoss-4.0.0RC1 or later
+ application server distribution. </LI></UL>
+<H2>Using WS-TX with different JTA implementations</H2>
+<P class=MsoNormal>WS-TX architecture has been designed so that it may be used
+with any JTA implementation provided that it implements the <SPAN
+class=PlainTextChar><SPAN
+style="FONT-SIZE: 9pt; mso-bidi-font-size: 12.0pt">org.apache.ws.transaction.participant.j2ee.TransactionManagerGlue</SPAN></SPAN>
+interface. Two sample implementations of this interface for JOTM (version 1.4.3
+or later; version 1.5.3 is preferred but this implementation does not take
+advantage of <SPAN class=SpellE><SPAN class=PlainTextChar><SPAN
+style="FONT-SIZE: 9pt; mso-bidi-font-size: 12.0pt">XATerminator</SPAN></SPAN></SPAN>
+provided in this later version of JOTM) and <SPAN class=SpellE>JBoss</SPAN>
+transaction manager (JBoss-4.0.0RC1 or later) have been provided under <SPAN
+class=PlainTextChar><SPAN
+style="FONT-SIZE: 9pt; mso-bidi-font-size: 12.0pt">%WS-TX_HOME%/</SPAN></SPAN>src/java/org/apache/ws/transaction/participant/j2ee.</P>
+<P class=MsoNormal>In general given a transaction manager, the user should first
+determine whether it supports JCA 1.5 transaction inflow mechanism. If so, it is
+generally possible to come up with an implementation for the above interface. It
+may not be possible to do so otherwise.</P>
+<P class=MsoNormal>Lastly, before the Maven build is done (see below), the <SPAN
+class=SpellE><SPAN class=PlainTextChar><SPAN
+style="FONT-SIZE: 9pt; mso-bidi-font-size: 12.0pt">TransactionManagerGlueImpl</SPAN></SPAN></SPAN>
+property in <SPAN class=PlainTextChar><SPAN
+style="FONT-SIZE: 9pt; mso-bidi-font-size: 12.0pt">%WS-TX_HOME%/conf/<SPAN
+class=SpellE>jta.conf</SPAN> </SPAN></SPAN>must be set to the fully qualified
+class name of the class implementing <SPAN class=PlainTextChar><SPAN
+style="FONT-SIZE: 9pt; mso-bidi-font-size: 12.0pt">org.apache.ws.transaction.participant.j2ee.TransactionManagerGlue</SPAN></SPAN>
+interface for the transaction manager used by the application server
+runtime.</P>
+<H2>Running the provided samples</H2>
+<H3>Setup the TCP Monitor</H3>
+<P class=MsoNormal>All examples and WS-TX default endpoint configuration
+parameters given in <SPAN class=PlainTextChar><SPAN
+style="FONT-SIZE: 9pt; mso-bidi-font-size: 12.0pt">%WS-TX_HOME%/conf/<SPAN
+class=SpellE>endpoints.conf</SPAN></SPAN></SPAN> assume that you are using the
+TCP monitor to monitor and redirect soap messages sent to port 8081 on <SPAN
+class=SpellE>localhost</SPAN>, to port 8080.</P>
+<H3>Configure Jakarta-Tomcat and deploy Axis</H3>
+<OL style="MARGIN-TOP: 0in" type=1>
+ <LI class=MsoNormal
+ style="mso-list: l2 level1 lfo4; tab-stops: list .5in">Install Jakarta-Tomcat.
+ The samples have been tested on Jakarta-Tomcat-5.0.25.
+ <LI class=MsoNormal
+ style="mso-list: l2 level1 lfo4; tab-stops: list .5in">Deploy Apache Axis.
+ Axis-1.2beta3 or later is required. </LI></OL>
+<H3>Build and deploy WS-TX</H3>
+<OL style="MARGIN-TOP: 0in" type=1>
+ <LI class=MsoNormal
+ style="mso-list: l1 level1 lfo9; tab-stops: list .5in">Modify <SPAN
+ class=PlainTextChar><SPAN
+ style="FONT-SIZE: 9pt; mso-bidi-font-size: 12.0pt">%WS-TX_HOME%/conf/<SPAN
+ class=SpellE>jta.conf</SPAN></SPAN></SPAN>. The <SPAN class=SpellE><SPAN
+ class=PlainTextChar><SPAN
+ style="FONT-SIZE: 9pt; mso-bidi-font-size: 12.0pt">TransactionManagerGlueImpl</SPAN></SPAN></SPAN>
+ property must be set to the fully qualified class name of the class
+ implementing <SPAN class=PlainTextChar><SPAN
+ style="FONT-SIZE: 9pt; mso-bidi-font-size: 12.0pt">org.apache.ws.transaction.participant.j2ee.TransactionManagerGlue</SPAN></SPAN>
+ interface for the transaction manager that you plan to use. By default the
+ property is set to use the sample implementation for JOTM.
+ <LI class=MsoNormal style="mso-list: l1 level1 lfo9; tab-stops: list .5in">If
+ necessary, modify <SPAN class=PlainTextChar><SPAN
+ style="FONT-SIZE: 9pt; mso-bidi-font-size: 12.0pt">%WS-TX_HOME%/conf/<SPAN
+ class=SpellE>endpoints.conf</SPAN></SPAN></SPAN>. The properties declared here
+ configure the numerous endpoints of the coordination service and server
+ runtime. The default values provided assume that services are available at
+ �<SPAN class=PlainTextChar><SPAN
+ style="FONT-SIZE: 9pt; mso-bidi-font-size: 12.0pt">http://localhost:8081/axis/services/...</SPAN></SPAN>�
+ If you use normal settings for Catalina and Axis, you do not need to modify
+ these properties.
+ <LI class=MsoNormal style="mso-list: l1 level1 lfo9; tab-stops: list .5in">To
+ build the <SPAN class=PlainTextChar><SPAN style2><SPAN
+ style="FONT-SIZE: 9pt; mso-bidi-font-size: 12.0pt">kandula-0.1-SNAPSHOT.jar</SPAN></SPAN></SPAN>,
+ enter<BR clear=all><BR clear=all><SPAN class=PlainTextChar><SPAN
+ style="FONT-SIZE: 9pt; mso-bidi-font-size: 12.0pt">maven<BR clear=all><BR
+ clear=all></SPAN></SPAN>in <SPAN class=PlainTextChar><SPAN
+ style="FONT-SIZE: 9pt; mso-bidi-font-size: 12.0pt">%WS-TX_HOME%</SPAN></SPAN>.
+
+ <LI class=MsoNormal
+ style="mso-list: l1 level1 lfo9; tab-stops: list .5in">Copy the <SPAN
+ class=PlainTextChar><SPAN
+ style="FONT-SIZE: 9pt; mso-bidi-font-size: 12.0pt">j2ee.jar, <SPAN
+ class=SpellE>addressing.jar</SPAN></SPAN></SPAN> &<SPAN
+ class=PlainTextChar><SPAN style="FONT-SIZE: 9pt; mso-bidi-font-size: 12.0pt">
+ <SPAN class=SpellE>jotm</SPAN>-*.jar</SPAN></SPAN> files from <SPAN
+ class=PlainTextChar><SPAN
+ style="FONT-SIZE: 9pt; mso-bidi-font-size: 12.0pt">%WS-TX_HOME%/target/lib</SPAN></SPAN><SPAN
+ class=plaintextcharstyle3> </SPAN>to <SPAN class=PlainTextChar><SPAN
+ style="FONT-SIZE: 9pt; mso-bidi-font-size: 12.0pt">%CATALINA_HOME%/shared/lib</SPAN></SPAN>.
+
+ <LI class=MsoNormal
+ style="mso-list: l1 level1 lfo9; tab-stops: list .5in">*Move* all Axis jars in
+ <SPAN class=PlainTextChar><SPAN
+ style="FONT-SIZE: 9pt; mso-bidi-font-size: 12.0pt">%CATALINA_HOME%/<SPAN
+ class=SpellE>webapps</SPAN>/axis/WEB-INF/lib</SPAN></SPAN> to <SPAN
+ class=PlainTextChar><SPAN
+ style="FONT-SIZE: 9pt; mso-bidi-font-size: 12.0pt">%CATALINA_HOME%/shared/lib</SPAN></SPAN>
+
+ <LI class=MsoNormal
+ style="mso-list: l1 level1 lfo9; tab-stops: list .5in">Copy <SPAN
+ class=PlainTextChar><SPAN
+ style="FONT-SIZE: 9pt; mso-bidi-font-size: 12.0pt">%WS-TX_HOME%/target/kandula-0.1-SNAPSHOT.jar</SPAN></SPAN>
+ to <SPAN class=PlainTextChar><SPAN
+ style="FONT-SIZE: 9pt; mso-bidi-font-size: 12.0pt">%CATALINA_HOME%/shared/lib</SPAN></SPAN>.
+
+ <LI class=MsoNormal style="mso-list: l1 level1 lfo9; tab-stops: list .5in">Use
+ the <SPAN class=PlainTextChar><SPAN
+ style="FONT-SIZE: 9pt; mso-bidi-font-size: 12.0pt">server-<SPAN
+ class=SpellE>config.wsdd</SPAN></SPAN></SPAN> file provided in <SPAN
+ class=PlainTextChar><SPAN
+ style="FONT-SIZE: 9pt; mso-bidi-font-size: 12.0pt">%WS-TX_HOME%/conf</SPAN></SPAN>
+ to deploy the services sited above.
+ <LI class=MsoNormal style="mso-list: l1 level1 lfo9; tab-stops: list .5in">Use
+ the <SPAN class=PlainTextChar><SPAN
+ style="FONT-SIZE: 9pt; mso-bidi-font-size: 12.0pt">server-<SPAN
+ class=SpellE>config.wsdd</SPAN></SPAN></SPAN> file provided in <SPAN
+ class=PlainTextChar><SPAN
+ style="FONT-SIZE: 9pt; mso-bidi-font-size: 12.0pt">%WS-TX_HOME%/conf</SPAN></SPAN>
+ to deploy WS-TX and WS-Addressing handlers. <BR clear=all>Note: WS-TX
+ implementation uses reference properties that must be configured with the
+ WS-Addressing handler as illustrated in the provided <SPAN
+ class=PlainTextChar><SPAN
+ style="FONT-SIZE: 9pt; mso-bidi-font-size: 12.0pt">server-<SPAN
+ class=SpellE>config.wsdd</SPAN></SPAN></SPAN> file. The global type mappings
+ provided in <SPAN class=PlainTextChar><SPAN
+ style="FONT-SIZE: 9pt; mso-bidi-font-size: 12.0pt">%WS-TX_HOME%/conf/server-<SPAN
+ class=SpellE>config.wsdd</SPAN></SPAN></SPAN> are used by the WS-Addressing
+ implementation and *must be* copied to the <SPAN class=PlainTextChar><SPAN
+ style="FONT-SIZE: 9pt; mso-bidi-font-size: 12.0pt">server-<SPAN
+ class=SpellE>config.wsdd</SPAN></SPAN></SPAN>.
+ <LI class=MsoNormal
+ style="mso-list: l1 level1 lfo9; tab-stops: list .5in">Copy <SPAN
+ class=PlainTextChar><SPAN
+ style="FONT-SIZE: 9pt; mso-bidi-font-size: 12.0pt">%WS-TX_HOME%/conf/client-<SPAN
+ class=SpellE>config.wsdd</SPAN></SPAN></SPAN> to <SPAN
+ class=PlainTextChar><SPAN
+ style="FONT-SIZE: 9pt; mso-bidi-font-size: 12.0pt">%CATALINA_HOME%/<SPAN
+ class=SpellE>webapps</SPAN>/axis/WEB-INF/classes</SPAN></SPAN>. Modify the
+ <SPAN class=PlainTextChar><SPAN
+ style="FONT-SIZE: 9pt; mso-bidi-font-size: 12.0pt">client-<SPAN
+ class=SpellE>config.wsdd</SPAN></SPAN></SPAN> copied to <SPAN
+ class=PlainTextChar><SPAN
+ style="FONT-SIZE: 9pt; mso-bidi-font-size: 12.0pt">%CATALINA_HOME%/<SPAN
+ class=SpellE>webapps</SPAN>/axis/WEB-INF/classes</SPAN></SPAN> to deploy the
+ <SPAN class=PlainTextChar><SPAN
+ style="FONT-SIZE: 9pt; mso-bidi-font-size: 12.0pt">org.apache.ws.transaction.participant.j2ee.handler.TransactionHandler</SPAN></SPAN>
+ on request flow. Also remove the <SPAN class=PlainTextChar><SPAN
+ style="FONT-SIZE: 9pt; mso-bidi-font-size: 12.0pt">org.apache.ws.transaction.participant.standalone.handler.TransactionHandler</SPAN></SPAN>
+ used by standalone clients. The modified <SPAN class=PlainTextChar><SPAN
+ style="FONT-SIZE: 9pt; mso-bidi-font-size: 12.0pt">client-<SPAN
+ class=SpellE>config.wsdd</SPAN></SPAN></SPAN> is shown below. </LI></OL>
+<P class=StyleCentered><!--[if mso & !supportInlineShapes & supportFields]><span
style='mso-element:field-begin;mso-field-lock:yes'></span><span
style='mso-spacerun:yes'>�</span>SHAPE <span
-style='mso-spacerun:yes'>�</span>\* MERGEFORMAT <span style='mso-element:field-separator'></span><![endif]--><!--[if gte vml 1]><v:shape
- id="_x0000_s1036" type="#_x0000_t202" style='width:465pt;height:285.4pt;
- mso-position-horizontal-relative:char;mso-position-vertical-relative:line'
- filled="f">
- <v:textbox>
- <![if !mso]>
- <table cellpadding=0 cellspacing=0 width="100%">
- <tr>
- <td><![endif]>
- <div>
- <p class=MsoPlainText><<span class=GramE>deployment</span> ...></p>
- <p class=MsoPlainText><span style='mso-spacerun:yes'>�</span><<span
- class=SpellE><span class=GramE>globalConfiguration</span></span>></p>
- <p class=MsoPlainText><span style='mso-spacerun:yes'>������� </span><<span
- class=SpellE><span class=GramE>requestFlow</span></span>></p>
- <p class=MsoPlainText><span style='mso-tab-count:2'>������������� </span><handler
- type="java<span class=GramE>:org.apache.axis.message.addressing.handler.AddressingHandler</span>"
- /></p>
- <p class=MsoPlainText><span style='mso-tab-count:2'>������������� </span><<span
- class=GramE>handler</span> type="java:org.apache.ws.transaction.participant.j2ee.handler.TransactionHandler"/></p>
- <p class=MsoPlainText><span style='mso-tab-count:2'>������������� </span>...</p>
- <p class=MsoPlainText><span style='mso-spacerun:yes'>������� </span></<span
- class=SpellE>requestFlow</span>></p>
- <p class=MsoPlainText><span style='mso-spacerun:yes'>������� </span><<span
- class=SpellE><span class=GramE>responseFlow</span></span>></p>
- <p class=MsoPlainText><span style='mso-spacerun:yes'>������� </span><span
- style='mso-tab-count:1'>����� </span><handler type="java<span
- class=GramE>:org.apache.axis.message.addressing.handler.AddressingHandler</span>"
- /></p>
- <p class=MsoPlainText><span style='mso-tab-count:2'>������������� </span>...</p>
- <p class=MsoPlainText><span style='mso-spacerun:yes'>������� </span></<span
- class=SpellE>responseFlow</span>></p>
- <p class=MsoPlainText><span style='mso-tab-count:1'>������ </span>...</p>
- <p class=MsoPlainText><span style='mso-spacerun:yes'>�
- </span></globalConfiguration></p>
- <p class=MsoPlainText>...</p>
- <p class=MsoPlainText></deployment></p>
- </div>
- <![if !mso]></td>
- </tr>
- </table>
- <![endif]></v:textbox>
- <w:wrap type="none" side="left"/>
- <w:anchorlock/>
-</v:shape><![endif]--><![if !vml]><img width=626 height=387
-src="user-guide_files/image003.gif"
+style='mso-spacerun:yes'>�</span>\* MERGEFORMAT <span style='mso-element:field-separator'></span><![endif]--><!--[if gte vml 1]><v:shape
+id=_x0000_s1026
+style="WIDTH: 465pt; HEIGHT: 285.4pt; mso-position-horizontal-relative: char; mso-position-vertical-relative: line"
+type = "#_x0000_t202" coordsize = "21600,21600" filled = "f"><v:textbox
+style="MARGIN-TOP: 4.718pt; LEFT: auto; MARGIN-LEFT: 8.312pt; WIDTH: 449.875pt; TOP: auto; HEIGHT: 277.437pt"><![if !mso]>
+<TABLE cellSpacing=0 cellPadding=0 width="100%">
+ <TBODY>
+ <TR>
+ <TD><![endif]>
+ <DIV>
+ <P class=MsoPlainText><<SPAN class=GramE>deployment</SPAN> ...></P>
+ <P class=MsoPlainText><SPAN
+ style="mso-spacerun: yes"> </SPAN><<SPAN class=SpellE><SPAN
+ class=GramE>globalConfiguration</SPAN></SPAN>></P>
+ <P class=MsoPlainText><SPAN
+ style="mso-spacerun: yes">
+ </SPAN><<SPAN class=SpellE><SPAN
+ class=GramE>requestFlow</SPAN></SPAN>></P>
+ <P class=MsoPlainText><SPAN
+ style="mso-tab-count: 2">
+ </SPAN><handler type="java<SPAN
+ class=GramE>:org.apache.axis.message.addressing.handler.AddressingHandler</SPAN>"
+ /></P>
+ <P class=MsoPlainText><SPAN
+ style="mso-tab-count: 2">
+ </SPAN><<SPAN class=GramE>handler</SPAN>
+ type="java:org.apache.ws.transaction.participant.j2ee.handler.TransactionHandler"/></P>
+ <P class=MsoPlainText><SPAN
+ style="mso-tab-count: 2">
+ </SPAN>...</P>
+ <P class=MsoPlainText><SPAN
+ style="mso-spacerun: yes">
+ </SPAN></<SPAN class=SpellE>requestFlow</SPAN>></P>
+ <P class=MsoPlainText><SPAN
+ style="mso-spacerun: yes">
+ </SPAN><<SPAN class=SpellE><SPAN
+ class=GramE>responseFlow</SPAN></SPAN>></P>
+ <P class=MsoPlainText><SPAN
+ style="mso-spacerun: yes">
+ </SPAN><SPAN style="mso-tab-count: 1">
+ </SPAN><handler type="java<SPAN
+ class=GramE>:org.apache.axis.message.addressing.handler.AddressingHandler</SPAN>"
+ /></P>
+ <P class=MsoPlainText><SPAN
+ style="mso-tab-count: 2">
+ </SPAN>...</P>
+ <P class=MsoPlainText><SPAN
+ style="mso-spacerun: yes">
+ </SPAN></<SPAN class=SpellE>responseFlow</SPAN>></P>
+ <P class=MsoPlainText><SPAN
+ style="mso-tab-count: 1">
+ </SPAN>...</P>
+ <P class=MsoPlainText><SPAN style="mso-spacerun: yes">
+ </SPAN></<SPAN class=SpellE>globalConfiguration</SPAN>></P>
+ <P class=MsoPlainText>...</P>
+ <P
+ class=MsoPlainText></deployment></P></DIV><![if !mso]></TD></TR></TBODY></TABLE><![endif]></v:textbox><w:wrap
+side = "left" type = "none"></w:wrap><w:anchorlock></w:anchorlock></v:shape><![endif]--><![if !vml]><img width=626 height=387
+src="user-guide1_files/image003.gif"
alt="Text Box: <deployment ...> <globalConfiguration> <requestFlow> <handler type="java:org.apache.axis.message.addressing.handler.AddressingHandler" /> <handler type="java:org.apache.ws.transaction.participant.j2ee.handler.TransactionHandler"/> ... </requestFlow> <responseFlow> <handler type="java:org.apache.axis.message.addressing.handler.AddressingHandler" /> ... </responseFlow> ... </globalConfiguration> ... </deployment> "
-v:shapes="_x0000_s1036"><![endif]><!--[if mso & !supportInlineShapes & supportFields]><v:shape
+v:shapes="_x0000_s1026"><![endif]><!--[if mso & !supportInlineShapes & supportFields]><v:shape
id="_x0000_i1027" type="#_x0000_t75" style='width:465pt;height:285.4pt'>
<v:imagedata croptop="-65520f" cropbottom="65520f"/>
-</v:shape><span style='mso-element:field-end'></span><![endif]--></p>
-
-<h3>Build the examples</h3>
-
-<ol style='margin-top:0cm' start=1 type=1>
- <li class=MsoNormal style='mso-list:l13 level1 lfo18;tab-stops:list 36.0pt'>To
- build all the examples enter,<br clear=all>
- <br clear=all>
- <span class=PlainTextChar><span style='font-size:9.0pt;mso-bidi-font-size:
- 12.0pt'>ant dist<br clear=all>
- <br clear=all>
- </span></span>in <span class=PlainTextChar><span style='font-size:9.0pt;
- mso-bidi-font-size:12.0pt'>%WS-TX_HOME%/test</span></span></li>
-</ol>
-
-<h3>Run the <span class=SpellE>Interop</span> example</h3>
-
-<p class=MsoNormal>This example shows how a standalone client may access a transactional
-web service. To try out this example,</p>
-
-<ol style='margin-top:0cm' start=1 type=1>
- <li class=MsoNormal style='mso-list:l4 level1 lfo21;tab-stops:list 36.0pt'>Copy
- the <span class=PlainTextChar><span style='font-size:9.0pt;mso-bidi-font-size:
- 12.0pt'>%WS-TX_HOME%/test/<span class=SpellE>interop/build/interop.jar</span></span></span>
- to <span class=PlainTextChar><span style='font-size:9.0pt;mso-bidi-font-size:
- 12.0pt'>%CATALINA_HOME%/<span class=SpellE>webapps</span>/axis/WEB-INF/lib</span></span>
- </li>
- <li class=MsoNormal style='mso-list:l4 level1 lfo21;tab-stops:list 36.0pt'>Use
- the <span class=SpellE><span class=PlainTextChar><span style='font-size:
- 9.0pt;mso-bidi-font-size:12.0pt'>deploy.wsdd</span></span></span> in <span
- class=PlainTextChar><span style='font-size:9.0pt;mso-bidi-font-size:12.0pt'>%WS-TX_HOME%/test/<span
- class=SpellE>interop</span></span></span> to deploy the service in Axis. </li>
- <li class=MsoNormal style='mso-list:l4 level1 lfo21;tab-stops:list 36.0pt'>Run
- the provided <span class=SpellE>JUnit</span> test cases by entering,<br
- clear=all>
- <br clear=all>
- <span class=PlainTextChar><span style='font-size:9.0pt;mso-bidi-font-size:
- 12.0pt'>ant test<br clear=all>
- <br clear=all>
- </span></span>in <span class=PlainTextChar><span style='font-size:9.0pt;
- mso-bidi-font-size:12.0pt'>%WS-TX_HOME%/test/<span class=SpellE>interop</span></span></span>
- </li>
-</ol>
-
-<h3>Run the <span class=SpellE>Servlet</span> example</h3>
-
-<p class=MsoNormal>This example shows how a J2EE component may access a
-transactional web service. To try out this example,</p>
-
-<ol style='margin-top:0cm' start=1 type=1>
- <li class=MsoNormal style='mso-list:l15 level1 lfo24;tab-stops:list 36.0pt'>Copy
- <span class=PlainTextChar><span style='font-size:9.0pt;mso-bidi-font-size:
- 12.0pt'>%WS-TX_HOME%/test/<span class=SpellE>servlet/build/servlet.war</span></span></span>
- to <span class=PlainTextChar><span style='font-size:9.0pt;mso-bidi-font-size:
- 12.0pt'>%CATALINA_HOME%/<span class=SpellE>webapps</span></span></span> </li>
- <li class=MsoNormal style='mso-list:l15 level1 lfo24;tab-stops:list 36.0pt'>Modify
- <span class=PlainTextChar><span style='font-size:9.0pt;mso-bidi-font-size:
- 12.0pt'>%WS-TX_HOME%/test/<span class=SpellE>servlet/interop.xml</span></span></span>
- to suite the transaction manager that you are using. </li>
- <li class=MsoNormal style='mso-list:l15 level1 lfo24;tab-stops:list 36.0pt'>Copy
- the contents of <span class=PlainTextChar><span style='font-size:9.0pt;
- mso-bidi-font-size:12.0pt'>%WS-TX_HOME%/test/<span class=SpellE>servlet/interop.xml</span></span></span>
- to <span class=PlainTextChar><span style='font-size:9.0pt;mso-bidi-font-size:
- 12.0pt'>%CATALINA_HOME%/conf/<span class=SpellE>server.xml</span></span></span>
- under the <span class=PlainTextChar><span style='font-size:9.0pt;
- mso-bidi-font-size:12.0pt'><Host></span></span> element. </li>
- <li class=MsoNormal style='mso-list:l15 level1 lfo24;tab-stops:list 36.0pt'>Point
- your browser at <span class=PlainTextChar><span style='font-size:9.0pt;
- mso-bidi-font-size:12.0pt'><a href="http://localhost:8080/interop">http://localhost:8080/interop</a></span></span>.
- The messages sent/received from/by the <span class=SpellE>servlet</span>
- to the <span class=SpellE>Interop</span> service are recorded in the TCP
- monitor. Notice how the runtime uses the web services coordination
- framework to propagate JTA distributed transactions. </li>
-</ol>
-
-</div>
-
-</body>
-
-</html>
+</v:shape><span style='mso-element:field-end'></span><![endif]--></P>
+<H3>Build the samples</H3>
+<OL style="MARGIN-TOP: 0in" type=1>
+ <LI class=MsoNormal style="mso-list: l6 level1 lfo6; tab-stops: list .5in">To
+ build the sample(s) enter,<BR clear=all><BR clear=all><SPAN
+ class=PlainTextChar><SPAN
+ style="FONT-SIZE: 9pt; mso-bidi-font-size: 12.0pt">ant dist<BR clear=all><BR
+ clear=all></SPAN></SPAN>in <SPAN class=PlainTextChar><SPAN
+ style="FONT-SIZE: 9pt; mso-bidi-font-size: 12.0pt">%WS-TX_HOME%/<SPAN
+ class=SpellE>src</SPAN>/samples</SPAN></SPAN> </LI></OL>
+<H3>Run the <SPAN class=SpellE>Interop</SPAN> sample</H3>
+<P class=MsoNormal>This sample shows how a standalone client may access a
+transactional web service. To try it out,</P>
+<OL style="MARGIN-TOP: 0in" type=1>
+ <LI class=MsoNormal
+ style="mso-list: l3 level1 lfo7; tab-stops: list .5in">Copy the <SPAN
+ class=PlainTextChar><SPAN
+ style="FONT-SIZE: 9pt; mso-bidi-font-size: 12.0pt">%WS-TX_HOME%/<SPAN
+ class=SpellE>src/samples/interop/build/interop.jar</SPAN></SPAN></SPAN> to
+ <SPAN class=PlainTextChar><SPAN
+ style="FONT-SIZE: 9pt; mso-bidi-font-size: 12.0pt">%CATALINA_HOME%/<SPAN
+ class=SpellE>webapps</SPAN>/axis/WEB-INF/lib</SPAN></SPAN>
+ <LI class=MsoNormal style="mso-list: l3 level1 lfo7; tab-stops: list .5in">Use
+ the <SPAN class=SpellE><SPAN class=PlainTextChar><SPAN
+ style="FONT-SIZE: 9pt; mso-bidi-font-size: 12.0pt">deploy.wsdd</SPAN></SPAN></SPAN>
+ in <SPAN class=PlainTextChar><SPAN
+ style="FONT-SIZE: 9pt; mso-bidi-font-size: 12.0pt">%WS-TX_HOME%/<SPAN
+ class=SpellE>src/samples/interop</SPAN></SPAN></SPAN> to deploy the service in
+ Axis.
+ <LI class=MsoNormal style="mso-list: l3 level1 lfo7; tab-stops: list .5in">Run
+ the provided <SPAN class=SpellE>JUnit</SPAN> test cases by entering,<BR
+ clear=all><BR clear=all><SPAN class=PlainTextChar><SPAN
+ style="FONT-SIZE: 9pt; mso-bidi-font-size: 12.0pt">ant test<BR clear=all><BR
+ clear=all></SPAN></SPAN>in <SPAN class=PlainTextChar><SPAN
+ style="FONT-SIZE: 9pt; mso-bidi-font-size: 12.0pt">%WS-TX_HOME%/<SPAN
+ class=SpellE>src/samples/interop</SPAN></SPAN></SPAN>
+</LI></OL></DIV></BODY></HTML>