  | Mailing List | | Home | | Forum Home | | JBoss - Java Application Server | | Struts - A MVC web framework | | Tomcat - JSP/Servlet container | | iText - An open source PDF Java Library | | JDOM - JDOM XML Parser | | J2EE - A mailing list for Java(tm) 2 Platform, Enterprise Edition | | J2EE Pattern - An interest list for Sun Java Center J2EE Pattern Catalog | | Servlet - A mailing list for discussion about Sun Microsystem's Java Servlet API Technology | | JSP - A mailing list about Java Server Pages specification and reference | |
Struts & Hibernate
|
|
|
  | | Re: Design patterns for Web services,and work flows/composite
ser | Re: Design patterns for Web services,and work flows/composite
ser 2003-07-10 - By Don Morgan
Back Hi Paul,
You may want to take a look at "Web Services Patterns: Java Edition", by Paul B. Monday, ISBN 1590590848. I have not read it myself, but so far it has positive reviews on Amazon.
Sincerely,
Don Morgan www.DeveloperAdvantage.com <http://www.developeradvantage.com/>
-- --Original Message-- -- From: An interest list for Sun Java Center J2EE Pattern Catalog [mailto:J2EEPATTERNS-INTEREST@(protected)] On Behalf Of Paul Brebner Sent: Thursday, July 10, 2003 8:53 PM To: J2EEPATTERNS-INTEREST@(protected) Subject: Design patterns for Web services, and work flows/composite servic es
Hi,
Vijay suggested I send some questions to this list about patterns for Web Services implemented in J2EE...
1 What's the current best practice for design patterns for Web Services (built on J2EE)
2 What about work flows (which invoke Web Services)? Distributed execution of work flows?
3 How about for Web Service Composition? (including perhaps some "OO" features such as inheritance, replication, reflection, etc?) I have an idea for distributed execution of workflows, where the work flow is deployed as a bunch of "control" Web Services - each controller service contains flow logic and invokes either other control services or eventually just "primitive" web services to do the tasks. Could you build/compose complex work flows and also management capabilities (e.g.) just by deploying the work flow as a bunch of proxy web services (and is there an obvious design pattern for proxy web services?) - some of which manage control/execution, others manage non-functional requirements (e.g. dynamic rebinding to find available services) etc. And do this recursively? Regards,
Paul
Paul Brebner Senior Software Research Engineer CSIRO Mathematical and Information Sciences Australian National University, Canberra, Australia +61 2 6216 7062
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <html 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=us-ascii">
<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="cid:filelist.xml@(protected)"> <title>Message</title> <!--[if gte mso 9]><xml> <o:OfficeDocumentSettings> <o:DoNotRelyOnCSS/> </o:OfficeDocumentSettings> </xml><![endif]--><!--[if gte mso 9]><xml> <w:WordDocument> <w:SpellingState>Clean</w:SpellingState> <w:GrammarState>Clean</w:GrammarState> <w:DocumentKind>DocumentEmail</w:DocumentKind> <w:EnvelopeVis/> <w:BrowserLevel>MicrosoftInternetExplorer4</w:BrowserLevel> </w:WordDocument> </xml><![endif]--> <style> <!-- /* Font Definitions */ @(protected) {font-family:Tahoma; panose-1 (See http://ose-1.ora-code.com):2 11 6 4 3 5 4 4 2 4; mso-font-charset:0; mso-generic-font-family:swiss; mso-font-pitch:variable; mso-font-signature:1627421319 -2147483648 8 0 66047 0;} /* Style Definitions */ p.MsoNormal, li.MsoNormal, div.MsoNormal {mso-style-parent:""; margin:0in; margin-bottom:.0001pt; mso-pagination:widow-orphan; font-size:12.0pt; font-family:"Times New Roman"; mso-fareast-font-family:"Times New Roman";} h2 {mso-style-update:auto; mso-style-next:Normal; margin-top:12.0pt; margin-right:0in; margin-bottom:3.0pt; margin-left:.55in; text-indent:-.3in; mso-pagination:widow-orphan; page-break-after:avoid; mso-outline-level:2; mso-list:l0 level2 lfo1; tab-stops:list .55in; font-size:16.0pt; mso-bidi-font-size:14.0pt; font-family:Arial; mso-bidi-font-family:"Times New Roman"; font-weight:bold; font-style:italic;} 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 {mso-margin-top-alt:auto; margin-right:0in; mso-margin-bottom-alt:auto; margin-left:0in; mso-pagination:widow-orphan; font-size:12.0pt; font-family:"Times New Roman"; mso-fareast-font-family:"Times New Roman";} span.EmailStyle18 {mso-style-type:personal-reply; mso-style-noshow:yes; mso-ansi-font-size:10.0pt; mso-bidi-font-size:10.0pt; font-family:Arial; mso-ascii-font-family:Arial; mso-hansi-font-family:Arial; mso-bidi-font-family:Arial; color:navy;} span.SpellE {mso-style-name:""; mso-spl-e:yes;} span.GramE {mso-style-name:""; mso-gram-e:yes;} @(protected) Section1 {size:8.5in 11.0in; margin:1.0in 1.25in 1.0in 1.25in; mso-header-margin:.5in; mso-footer-margin:.5in; mso-paper-source:0;} div.Section1 {page:Section1;} /* List Definitions */ @(protected) l0 {mso-list-id:1119956862; mso-list-template-ids:1608168692;} @(protected) l0:level1 {mso-level-tab-stop:.25in; mso-level-number-position:left; margin-left:.25in; text-indent:-.25in;} @(protected) l0:level2 {mso-level-style-link:"Heading 2"; mso-level-text:"%1\.%2\."; mso-level-tab-stop:.55in; mso-level-number-position:left; margin-left:.55in; text-indent:-.3in;} @(protected) l0:level3 {mso-level-text:"%1\.%2\.%3\."; mso-level-tab-stop:1.0in; mso-level-number-position:left; margin-left:.85in; text-indent:-.35in;} @(protected) l0:level4 {mso-level-text:"%1\.%2\.%3\.%4\."; mso-level-tab-stop:1.25in; mso-level-number-position:left; margin-left:1.2in; text-indent:-.45in;} @(protected) l0:level5 {mso-level-text:"%1\.%2\.%3\.%4\.%5\."; mso-level-tab-stop:1.75in; mso-level-number-position:left; margin-left:1.55in; text-indent:-.55in;} @(protected) l0:level6 {mso-level-text:"%1\.%2\.%3\.%4\.%5\.%6\."; mso-level-tab-stop:2.0in; mso-level-number-position:left; margin-left:1.9in; text-indent:-.65in;} @(protected) l0:level7 {mso-level-text:"%1\.%2\.%3\.%4\.%5\.%6\.%7\."; mso-level-tab-stop:2.5in; mso-level-number-position:left; margin-left:2.25in; text-indent:-.75in;} @(protected) l0:level8 {mso-level-text:"%1\.%2\.%3\.%4\.%5\.%6\.%7\.%8\."; mso-level-tab-stop:2.75in; mso-level-number-position:left; margin-left:2.6in; text-indent:-.85in;} @(protected) l0:level9 {mso-level-text:"%1\.%2\.%3\.%4\.%5\.%6\.%7\.%8\.%9\."; mso-level-tab-stop:3.25in; mso-level-number-position:left; margin-left:3.0in; text-indent:-1.0in;} ol {margin-bottom:0in;} ul {margin-bottom:0in;} --> </style> <!--[if gte mso 10]> <style> /* Style Definitions */ table.MsoNormalTable {mso-style-name:"Table Normal"; mso-tstyle-rowband-size:0; mso-tstyle-colband-size:0; mso-style-noshow:yes; mso-style-parent:""; 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";} </style> <![endif]--> </head>
<body lang=EN-US link=blue vlink=purple style='tab-interval:.5in'>
<div class=Section1>
<p class=MsoNormal><font size=2 color=navy face=Arial><span style='font-size: 10.0pt;font-family:Arial;color:navy'>Hi Paul,<o:p></o:p></span></font></p>
<p class=MsoNormal><font size=2 color=navy face=Arial><span style='font-size: 10.0pt;font-family:Arial;color:navy'><o:p> </o:p></span></font></p>
<p class=MsoNormal><font size=2 color=navy face=Arial><span style='font-size: 10.0pt;font-family:Arial;color:navy'>You may want to <span class=GramE>take a look</span> at “Web Services Patterns: Java Edition”, by Paul B. Monday, ISBN 1590590848.<span style='mso-spacerun:yes'> </span>I have not read it myself, but so <span class=GramE>far</span> it has positive reviews on Amazon.<o:p></o:p></span></font></p>
<p class=MsoNormal><font size=2 color=navy face=Arial><span style='font-size: 10.0pt;font-family:Arial;color:navy'><o:p> </o:p></span></font></p>
<p class=MsoNormal><font size=2 color=navy face=Arial><span style='font-size: 10.0pt;font-family:Arial;color:navy'>Sincerely,<o:p></o:p></span></font></p>
<p class=MsoNormal><font size=2 color=navy face=Arial><span style='font-size: 10.0pt;font-family:Arial;color:navy'><o:p> </o:p></span></font></p>
<p class=MsoNormal><font size=2 color=navy face=Arial><span style='font-size: 10.0pt;font-family:Arial;color:navy'>Don Morgan<o:p></o:p></span></font></p>
<p class=MsoNormal><font size=2 color=navy face=Arial><span style='font-size: 10.0pt;font-family:Arial;color:navy'><a href="http://www.developeradvantage.com/">www.DeveloperAdvantage.com</a><o:p>< /o:p></span></font></p>
<p class=MsoNormal><font size=2 color=navy face=Arial><span style='font-size: 10.0pt;font-family:Arial;color:navy'><o:p> </o:p></span></font></p>
<p class=MsoNormal><font size=2 color=navy face=Arial><span style='font-size: 10.0pt;font-family:Arial;color:navy'><o:p> </o:p></span></font></p>
<p class=MsoNormal><font size=2 color=navy face=Arial><span style='font-size: 10.0pt;font-family:Arial;color:navy'><o:p> </o:p></span></font></p>
<p class=MsoNormal style='margin-left:.5in'><font size=2 face=Tahoma><span style='font-size:10.0pt;font-family:Tahoma'>-- --Original Message-- --<br> <b><span style='font-weight:bold'>From:</span></b> An interest list for Sun Java Center J2EE Pattern Catalog [mailto:J2EEPATTERNS-INTEREST@(protected)] <b ><span style='font-weight:bold'>On Behalf Of </span></b>Paul Brebner<br> <b><span style='font-weight:bold'>Sent:</span></b> Thursday, July 10, 2003 8:53 PM<br> <b><span style='font-weight:bold'>To:</span></b> J2EEPATTERNS-INTEREST@(protected)<br> <b><span style='font-weight:bold'>Subject:</span></b> Design patterns for Web services, and work flows/composite servic es</span></font></p>
<p class=MsoNormal style='margin-left:.5in'><font size=3 face="Times New Roman" ><span style='font-size:12.0pt'><o:p> </o:p></span></font></p>
<div>
<p class=MsoNormal style='margin-left:.5in'><font size=2 face=Arial><span style='font-size:10.0pt;font-family:Arial'>Hi,</span></font><o:p></o:p></p>
</div>
<div>
<p class=MsoNormal style='margin-left:.5in'><font size=3 face="Times New Roman" ><span style='font-size:12.0pt'> <o:p></o:p></span></font></p>
</div>
<div>
<p class=MsoNormal style='margin-left:.5in'><font size=2 face=Arial><span style='font-size:10.0pt;font-family:Arial'>Vijay suggested I send some questions to this list about patterns for Web Services implemented in J2EE...</span></font><o:p></o:p></p>
</div>
<div>
<p class=MsoNormal style='margin-left:.5in'><font size=3 face="Times New Roman" ><span style='font-size:12.0pt'> <o:p></o:p></span></font></p>
</div>
<div>
<p class=MsoNormal style='margin-left:.5in'><font size=2 face=Arial><span style='font-size:10.0pt;font-family:Arial'>1 What's the current best practice for design patterns for Web Services (built on J2EE)</span></font><o:p></o:p>< /p>
</div>
<div>
<p class=MsoNormal style='margin-left:.5in'><font size=3 face="Times New Roman" ><span style='font-size:12.0pt'> <o:p></o:p></span></font></p>
</div>
<div>
<p class=MsoNormal style='margin-left:.5in'><font size=2 face=Arial><span style='font-size:10.0pt;font-family:Arial'>2 What about work flows (which invoke Web Services)? Distributed execution of work flows?</span></font> <o:p></o:p></p>
</div>
<div>
<p class=MsoNormal style='margin-left:.5in'><font size=3 face="Times New Roman" ><span style='font-size:12.0pt'> <o:p></o:p></span></font></p>
</div>
<div>
<p class=MsoNormal style='margin-left:.5in'><font size=2 face=Arial><span style='font-size:10.0pt;font-family:Arial'>3 How about for Web Service Composition? (including perhaps some "OO" features such as inheritance, replication, reflection, etc?)</span></font><o:p></o:p></p>
</div>
<p style='margin-left:.5in'><font size=2 face=Arial><span style='font-size: 10.0pt;font-family:Arial'>I have an idea for distributed execution of workflows, where the work flow is deployed as a bunch of "control" Web Services - each controller service contains flow logic and invokes either other control services or eventually just "primitive" web services to do the tasks. </span></font><o:p></o:p></p>
<p style='margin-left:.5in'><font size=2 face=Arial><span style='font-size: 10.0pt;font-family:Arial'>Could you build/compose complex work flows and also management capabilities (e.g.) just by deploying the work flow as a bunch of proxy web services (and is there an obvious design pattern for proxy web services?) - some of which manage control/execution, others manage non-functional requirements (e.g. dynamic rebinding to find available services) etc. And do this recursively?</span></font><o:p></o:p></p>
<div>
<p class=MsoNormal style='margin-left:.5in'><font size=2 face=Arial><span style='font-size:10.0pt;font-family:Arial'>Regards,</span></font><o:p></o:p></p>
</div>
<div>
<p class=MsoNormal style='margin-left:.5in'><font size=3 face="Times New Roman" ><span style='font-size:12.0pt'> <o:p></o:p></span></font></p>
</div>
<div>
<p class=MsoNormal style='margin-left:.5in'><font size=2 face=Arial><span style='font-size:10.0pt;font-family:Arial'>Paul</span></font><o:p></o:p></p>
</div>
<div>
<p class=MsoNormal style='margin-left:.5in'><font size=3 face="Times New Roman" ><span style='font-size:12.0pt'> <o:p></o:p></span></font></p>
</div>
<p style='margin-left:.5in'><b><font size=2 face=Arial><span lang=EN-AU style='font-size:10.0pt;font-family:Arial;mso-ansi-language:EN-AU;font-weight: bold'><!-- Converted from text/rtf format -->Paul Brebner</span></font></b> <br> <i><font size=2 face=Arial><span lang=EN-AU style='font-size:10.0pt;font-family: Arial;mso-ansi-language:EN-AU;font-style:italic'>Senior Software Research Engineer</span></font></i> <br> <font size=2 color=blue face=Arial><span lang=EN-AU style='font-size:10.0pt; font-family:Arial;color:blue;mso-ansi-language:EN-AU'>CSIRO Mathematical and Information Sciences</span></font> <br> <font size=2 face=Arial><span lang=EN-AU style='font-size:10.0pt;font-family: Arial;mso-ansi-language:EN-AU'>Australian National University, Canberra, Australia</span></font> <br> <font size=2 face=Arial><span lang=EN-AU style='font-size:10.0pt;font-family: Arial;mso-ansi-language:EN-AU'>+61 2 6216 7062</span></font><span lang=EN-AU> < /span><o:p></o:p></p>
<div>
<p class=MsoNormal style='margin-left:.5in'><font size=3 face="Times New Roman" ><span style='font-size:12.0pt'> <o:p></o:p></span></font></p>
</div>
</div>
</body>
</html>
|
|
 |