blob: c331e5b3a6e6b0cea768443f5a0ee2fcdfde2b1d [file] [log] [blame]
<?php require_once($_SERVER['DOCUMENT_ROOT'] . "/eclipse.org-common/system/app.class.php"); require_once($_SERVER['DOCUMENT_ROOT'] . "/eclipse.org-common/system/nav.class.php"); require_once($_SERVER['DOCUMENT_ROOT'] . "/eclipse.org-common/system/menu.class.php"); $App = new App(); $Nav = new Nav(); $Menu = new Menu(); include($App->getProjectCommon()); # All on the same line to unclutter the user's desktop'
#*****************************************************************************
#
# template.php
#
# Author: Denis Roy
# Date: 2005-06-16
#
# Description: Type your page comments here - these are not sent to the browser
#
#
#****************************************************************************
#
# Begin: page-specific settings. Change these.
$pageTitle = "BPEL M2 information";
$pageKeywords = "M2,BPEL,info";
$pageAuthor = "Michal Chmielewski";
# Add page-specific Nav bars here
# Format is Link text, link URL (can be http://www.someothersite.com/), target (_self, _blank), level (1, 2 or 3)
include($_SERVER['DOCUMENT_ROOT'] . "/$projectShortName/items/users_menu.php");
include($_SERVER['DOCUMENT_ROOT'] . "/$projectShortName/items/milestones_menu.php");
# End: page-specific settings
#
# Paste your HTML content between the EOHTML markers!
$html = <<<EOHTML
<STYLE type="text/css">
span.feature {
font-size: 18pt;
font-weight: bold;
}
span.feature:before {
content: counter(featureId) ". " ;
counter-increment: featureId;
}
</STYLE>
<div id="maincontent">
<div id="midcolumn" style="counter-reset: featureId;">
<h1>$pageTitle</h1>
<h2>What's in M2 ?</h2>
<p>
M2 contains some of the missing pieces (prompters, XPath editors, Partner Links)
that had to be added and in some cases re-worked.
It also contains the beginnings of the Runtime integration.
</p>
<p>
<span class="feature"></span>
You can now create a new BPEL Project using a wizard. The project will be at some point
married to a runtime using the WTP server framework. Specifying a BPEL 2.0
facet on the project will eventually allow validation to hook.
</p>
<ul style="margin-left: 20px;">
<li> Wizard <a href="javascript:void(setImage('wizard','img/new-proj-wizard-1.gif'))">Step 1</a> -
Pick the BPEL 2.0 project wizard.
<li> Wizard <a href="javascript:void(setImage('wizard','img/new-proj-wizard-2.gif'))">Step 2</a> -
Specify project name, and runtime (currently not avialable)
<li> Wizard <a href="javascript:void(setImage('wizard','img/new-proj-wizard-3.gif'))">Step 3</a> -
Specify a Facates to apply to the project, such as the BPEL Facet.
</ul>
<div class="screenshot">
<img id="wizard" src="img/new-proj-wizard-1.gif" />
</div>
</p>
<p>
<span class="feature"></span>
The <b>Detail</b> Property Sheet for a BPEL variable will
show the structure of a variable. Variables in BPEL 2.0 can be of:
<ul class="indent">
<li><a href="javascript:void(setImage('vp','img/properties-var2.png'))">Message Type</a> -
the variable has a structure of a WSDL message (with message parts).</li>
<li><a href="javascript:void(setImage('vp','img/properties-var1.png'))">Element Declaration</a> -
the variable has a structure of an XML Schema Element Declaration</li>
<li><a href="javascript:void(setImage('vp','img/properties-var3.png'))">Schema Type</a> -
the variable has a structure of an XML Schema Type</li>
</ul>
<div class="screenshot">
<img id="vp" src="img/properties-var2.png" />
</div>
<p>
The types can come from imported schema files or from schemas embedded in WSDL files.
</p>
<p>
<span class="feature"></span> You can browse for BPEL variable types
using the Variable Type Browser. It scans the specified locations
(explicit imports, project, or workspace)
for WSDL and XSD files and is activated when clicking the <b>Browse ...</b>
button in the variable <b>Detail</b> property section.
In addition to filtering out unwanted type names, the type structure is shown
in the browser as well.
<ul class="indent">
<li><a href="javascript:void(setImage('tb','img/type-browser.gif'))">Imported Types</a>
Here the types visible from the BPEL imports are shown </li>
<li><a href="javascript:void(setImage('tb','img/type-browser-ws.gif'))">Workspace Types</a>
Here the types visible in the workspace are shown </li>
<li>Explicit Addition of a Schema. When the required types are not
present in the project/workspace/imports they can be explicitely added
to the BPEL process. Types from
<a href="javascript:void(setImage('tb','img/add-schema-from-xsd.gif'))">Schama resources</a>
and from <a href="javascript:void(setImage('tb','img/add-schema-from-wsdl.gif'))">WSDL resources</a>
can be added.</li>
</ul>
<div class="screenshot">
<img id="tb" src="img/type-browser.gif"/>
</div>
</p>
<p>
<span class="feature"></span>
Partner Links is the mechenism by which a BPEL process interrects with the
outside world. Much like variables in BPEL, Partner Links must be created
and assigned a Partner Link Type (PLT).
You can browse for Partner Link Types (PLTs) using the Partner Link Type
Browser.
</p>
<p>The <b>Detail</b> Property Sheet for a Partner Link (PL) is the place
where you can start browsing for PLTs. The property sheet will allow you
to select the <b>Roles</b> of the Partner Link which in turn determines
the <b>Operations</b> and the <b>Messages</b> that will be available for the
exchanges. Suitably configured
Parnter Links can be used in the partner interaction activities, such as
<b>invoke</b>, <b>receive</b>, <b>reply</b>, and <b>onMessage</b>.
<div class="screenshot">
<img id="pl" src="img/detail-partner-link.gif" />
</div>
</p>
<p>
<span class="feature"></span> Partner Link Type browser is the mechanism
by which a Partner Link is assigned its Partner Link Type.
</p>
The browser scans the specified locations
(explicit imports, project, or workspace)
for WSDL files and is activated when clicking the <b>Browse ...</b>
button in the Partner Link <b>Detail</b> property section.
In addition to filtering out unwanted partner link types and port types,
the relavant WSDL structure is shown there as well.
</p>
<div class="screenshot">
<img id="pltb" src="img/plt-browser.gif"/>
</div>
<p>
<span class="feature"></span>
Most WSDLs, do not define <b>Partner Link Types</b>.
More often WSDL will define <b>Port Types</b>.
The PLT browser will also show <b>Port Types</b>. When a port type is selected
instead of a PLT, a wizard will attempt to wrap the <b>Port Type</b> into a
PLT.
<ul class="indent">
<li>When a <b>PortType</b> is selected in the PLT browser,
this <a href="javascript:void(setImage('port2plt','img/plt-wizard-1.gif'))">Wizard</a>
attempts to create a wrapper PLT </li>
<li>Each PLT can have no less then
<a href="javascript:void(setImage('port2plt','img/plt-wizard-2.gif'))">1 Role</a>
and no more then
<a href="javascript:void(setImage('port2plt','img/plt-wizard-3.gif'))">2 Roles</a>
defined.
A <b>Role</b> is associated to a <b>PortType</b>.
</ul>
<div class="screenshot">
<img id="port2plt" src="img/plt-wizard-1.gif"/>
</div>
<p>
<span class="feature"></span>
XPath Editor is used to create expressions in a variety of places.
<b>While</b>,
<b>RepeatUntil</b>,
<b>Assign</b>, and
<b>Wait</b>
are a just a few places where XPath expression
editing is necessary. The editor adds syntax highlighting and completions to
assist the user in writing more or less correct XPath expressions (the validator
will eventually check these expressions for syntax and semantics).
It auto-matches enclosing characters for string(" and ') and auto-matches braces and
paranthesis.
<ul class="indent">
<li>XPath Editor in a
<a href="javascript:void(setImage('xpath','img/xpath-while.gif'))">While</a>
loop
<li>XPath editor in an
<a href="javascript:void(setImage('xpath','img/xpath-assign.gif'))">Assign</a>
<li>XPath Editor in a
<a href="javascript:void(setImage('xpath','img/xpath-wait.gif'))">Wait</a>
<li>XPath Editor in a
<a href="javascript:void(setImage('xpath','img/xpath-case.gif'))">Case</a>
</ul>
<div class="screenshot">
<img id="xpath" src="img/xpath-while.gif"/>
</div>
</p>
<p>
<span class="feature"></span>
The <b>Imports</b> Property Sheet for the process displays all the entities (XSD and WSDL)
imported in the BPEL Process being edited. You can manually Import a WSDL or a Schema
file or Remove an existing import. While the tool attempts to manage the
imports itself, there may be cases where such flexibility is important.
<div class="screenshot">
<img id="pltb" src="img/imports.gif"/>
</div>
</p>
<p>
<span class="feature"></span>
The <b>Details</b> Property Sheet of the Partner Interaction activities
has been changed from the original implementation.
<div class="screenshot">
<img id="reply" src="img/detail-reply.gif"/>
</div>
</p>
<p>
<span class="feature"></span>
The <b>forEach</b> BPEL 2.0 activity has been added.
<div class="screenshot">
<img id="foreach" src="img/for-each.gif"/>
</div>
</p>
</div>
</div>
EOHTML;
# Generate the web page
$App->generatePage($theme, $Menu, $Nav, $pageAuthor, $pageKeywords, $pageTitle, $html);
?>