You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@ws.apache.org by jm...@apache.org on 2003/11/13 01:03:53 UTC
cvs commit: ws-site/targets/wsrp4j/arch arch.pdf consumer.html consumer.pdf arch.html producer.html producer.pdf
jmacna 2003/11/12 16:03:53
Added: targets/wsrp4j/arch arch.pdf consumer.html consumer.pdf
arch.html producer.html producer.pdf
Log:
Forrestized web site -- initial verison
Revision Changes Path
1.1 ws-site/targets/wsrp4j/arch/arch.pdf
<<Binary file>>
1.1 ws-site/targets/wsrp4j/arch/consumer.html
Index: consumer.html
===================================================================
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<META http-equiv="Content-Type" content="text/html; charset=UTF-8">
<!--*** This is a generated file. Do not edit. ***-->
<link rel="stylesheet" href="../skin/tigris.css" type="text/css">
<link rel="stylesheet" href="../skin/mysite.css" type="text/css">
<link rel="stylesheet" href="../skin/site.css" type="text/css">
<link media="print" rel="stylesheet" href="../skin/print.css" type="text/css">
<title>WSRP Consumer Architecture</title>
</head>
<body bgcolor="white" class="composite">
<!--================= start Banner ==================-->
<div id="banner">
<table width="100%" cellpadding="8" cellspacing="0" summary="banner" border="0">
<tbody>
<tr>
<!--================= start Group Logo ==================-->
<td align="left">
<div class="groupLogo">
<a href="http://ws.apache.org"><img border="0" class="logoImage" alt="Web Services" src="../images/group-logo.gif"></a>
</div>
</td>
<!--================= end Group Logo ==================-->
<!--================= start Project Logo ==================--><td align="right">
<div class="projectLogo">
<a href="http://ws.apache.org/wsrp4j/"><img border="0" class="logoImage" alt="WSRP4J" src="../images/wsrp4j-logo-big.png"></a>
</div>
</td>
<!--================= end Project Logo ==================-->
<!--================= start Search ==================--><td valign="top" rowspan="2" align="right" class="search">
<form target="_blank" action="http://www.google.com/search" method="get">
<table summary="search" border="0" cellspacing="0" cellpadding="0">
<tr>
<td bgcolor="#a5b6c6" colspan="3"><img height="10" width="1" alt="" src="../skin/images/spacer.gif" class="spacer"></td>
</tr>
<tr>
<td colspan="3"><img height="8" width="1" alt="" src="../skin/images/spacer.gif" class="spacer"></td>
</tr>
<tr>
<td><img height="1" width="1" alt="" src="../skin/images/spacer.gif" class="spacer"></td><td nowrap="nowrap"><input value="ws.apache.org" name="sitesearch" type="hidden"><input size="10" name="q" id="query" type="text"><img height="1" width="5" alt="" src="../skin/images/spacer.gif" class="spacer"><input name="Search" value="Search" type="submit">
<br>
Search WSRP4J</td><td><img height="1" width="1" alt="" src="../skin/images/spacer.gif" class="spacer"></td>
</tr>
<tr>
<td colspan="3"><img height="7" width="1" alt="" src="../skin/images/spacer.gif" class="spacer"></td>
</tr>
<tr>
<td class="bottom-left-thick"></td><td bgcolor="#a5b6c6"><img height="1" width="1" alt="" src="../skin/images/spacer.gif" class="spacer"></td><td class="bottom-right-thick"></td>
</tr>
</table>
</form>
</td>
<!--================= end Search ==================-->
</tr>
</tbody>
</table>
</div>
<!--================= end Banner ==================-->
<!--================= start Main ==================-->
<table width="100%" cellpadding="0" cellspacing="0" border="0" summary="nav" id="breadcrumbs">
<tbody>
<!--================= start Status ==================-->
<tr class="status">
<td>
<!--================= start BreadCrumb ==================--><a href="http://apache.org">Apache</a> | <a href="http://ws.apache.org/">Web Services</a> | <a href="http://ws.apache.org/wsrp4j/">WSRP4J</a>
<!--================= end BreadCrumb ==================--></td><td id="tabs">
<!--================= start Tabs ==================-->
<div class="tab">
<span class="unselectedTab"><a href="../index.html">Home</a></span> | <span class="selectedTab"><a class="base-selected" href="../arch/arch.html">Architecture</a></span> | <a title="PDF file of this page" href="consumer.pdf">PDF</a>
</div>
<!--================= end Tabs ==================-->
</td>
</tr>
</tbody>
</table>
<!--================= end Status ==================-->
<table id="main" width="100%" cellpadding="8" cellspacing="0" summary="" border="0">
<tbody>
<tr valign="top">
<!--================= start Menu ==================-->
<td id="leftcol">
<div id="navcolumn">
<div class="menuBar">
<div class="menu">
<span class="menuLabel">Architecture</span>
<div class="menuItem">
<a href="../arch/arch.html" title="Architecture Overview">Overview</a>
</div>
<div class="menuItem">
<span class="menuSelected">Consumer</span>
</div>
<div class="menuItem">
<a href="../arch/producer.html" title="Architecture of WSRP Producer">Producer</a>
</div>
</div>
</div>
</div>
</td>
<!--================= end Menu ==================-->
<!--================= start Content ==================--><td>
<div id="bodycol">
<div class="app">
<div align="center">
<h1>WSRP Consumer Architecture</h1>
</div>
<div class="h3">
<p>
The Producer and Consumer are provided with a very modular
architecture enabling an easy exchange of module implementations.
All modules excel by interfaces based on the WSRP object model
hiding the portal's object model and thus gaining independence of
changes in the portal implementation or design.
</p>
<div align="center">
<img class="figure" alt="Consumer Architecture" src="../images/consumer_architecture.jpg"></div>
<div class="h3">
<h3>Protocol Handler</h3>
</div>
<p>
The Protocol Handler is a standalone Swing based application that
implements the consuming portal and the browser functionality. It
aggregates the integrated WSRP portlets and forwards all
invocations together with relevant context and request information
to the remote WSRP service. The Swing consumer thereby uses the
ConsumerEnvironment to collect all data required for a WSRP call.
</p>
<div class="h3">
<h3>WSRP Object Model </h3>
</div>
<p>
Most of the WSRP object model is being generated from the WSRP
specification's WSDL types.
</p>
<div class="h3">
<h3>PortletDriver </h3>
</div>
<p>
The PortletDriver is the task oriented abstraction of the
generated WSRP stubs for markup and action invocation.
</p>
<p>
The PortletDriver is the task oriented abstraction of the
generated WSRP stubs for markup and action invocation.
</p>
<div class="h3">
<h3>WSRP service (stubs) () </h3>
</div>
<p>
The stubs generated by the axis SOAP implementation. The stubs are
also implementing the cookie handling - for more details see
SessionHandler below.
</p>
<div class="h3">
<h3>ProducerRegistry </h3>
</div>
<p>
The ProducerRegistry stores and manages details about producer
portals from which portlets were integrated or shall be
integrated.
</p>
<div class="h3">
<h3>SessionHandler </h3>
</div>
<p>
The WSRP consumer implementation session handling is based on the
SOAP stack's session handling. The generated SOAP stubs are doing
the cookie handling and are caching the cookies in instance
variables. This means that one stub object instance is equivalent
to one HTTP session which we map to one WSRP session (initCookie
wise). When a WSRP session did time out an InvalidCookie exception
is being thrown and a new session must be established.
</p>
<div class="h3">
<h3>URLHandler </h3>
</div>
<p>
The URLHandler is responsible for the URL rewriting of the WSRP
URLs embedded in the markup received from the remote portlet.
</p>
<div class="h3">
<h3>PortletRegistry </h3>
</div>
<p>
The PortletRegistry stores and provides access to WSRP specific
data and descriptions of a remote Portlet.
</p>
<div class="h3">
<h3>UserRegistry </h3>
</div>
<p>
The UserRegistry is in the Swing consumer case very simplistic. As
the browser is integrated there is always only one "dummy" user
being managed.
</p>
<div id="pdf" align="right">
<a href="consumer.pdf"><img alt="PDF" src="../skin/images/pdfdoc.gif" class="skin"><br>
PDF</a>
</div>
</div>
</div>
</div>
</td>
<!--================= end Content ==================-->
</tr>
</tbody>
</table>
<!--================= end Main ==================-->
<!--================= start Footer ==================-->
<div id="footer">
<table summary="footer" cellspacing="0" cellpadding="4" width="100%" border="0">
<tbody>
<tr>
<!--================= start Copyright ==================-->
<td colspan="2">
<div align="center">
<div class="copyright">
Copyright © 2003 The Apache Software Foundation.. All rights reserved.
</div>
</div>
</td>
<!--================= end Copyright ==================-->
</tr>
<tr>
<td align="left">
<!--================= start Host ==================-->
<div align="left">
<div class="host">
<a href="http://apache.org"><img border="0" class="logoImage" alt="" src="../images/icon.png"></a>
</div>
</div>
<!--================= end Host ==================-->
</td><td align="right">
<!--================= start Credits ==================-->
<div align="right">
<div class="credit"></div>
</div>
<!--================= end Credits ==================-->
</td>
</tr>
</tbody>
</table>
</div>
<!--================= end Footer ==================-->
</body>
</html>
1.1 ws-site/targets/wsrp4j/arch/consumer.pdf
<<Binary file>>
1.1 ws-site/targets/wsrp4j/arch/arch.html
Index: arch.html
===================================================================
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<META http-equiv="Content-Type" content="text/html; charset=UTF-8">
<!--*** This is a generated file. Do not edit. ***-->
<link rel="stylesheet" href="../skin/tigris.css" type="text/css">
<link rel="stylesheet" href="../skin/mysite.css" type="text/css">
<link rel="stylesheet" href="../skin/site.css" type="text/css">
<link media="print" rel="stylesheet" href="../skin/print.css" type="text/css">
<title>WSRP Architecture</title>
</head>
<body bgcolor="white" class="composite">
<!--================= start Banner ==================-->
<div id="banner">
<table width="100%" cellpadding="8" cellspacing="0" summary="banner" border="0">
<tbody>
<tr>
<!--================= start Group Logo ==================-->
<td align="left">
<div class="groupLogo">
<a href="http://ws.apache.org"><img border="0" class="logoImage" alt="Web Services" src="../images/group-logo.gif"></a>
</div>
</td>
<!--================= end Group Logo ==================-->
<!--================= start Project Logo ==================--><td align="right">
<div class="projectLogo">
<a href="http://ws.apache.org/wsrp4j/"><img border="0" class="logoImage" alt="WSRP4J" src="../images/wsrp4j-logo-big.png"></a>
</div>
</td>
<!--================= end Project Logo ==================-->
<!--================= start Search ==================--><td valign="top" rowspan="2" align="right" class="search">
<form target="_blank" action="http://www.google.com/search" method="get">
<table summary="search" border="0" cellspacing="0" cellpadding="0">
<tr>
<td bgcolor="#a5b6c6" colspan="3"><img height="10" width="1" alt="" src="../skin/images/spacer.gif" class="spacer"></td>
</tr>
<tr>
<td colspan="3"><img height="8" width="1" alt="" src="../skin/images/spacer.gif" class="spacer"></td>
</tr>
<tr>
<td><img height="1" width="1" alt="" src="../skin/images/spacer.gif" class="spacer"></td><td nowrap="nowrap"><input value="ws.apache.org" name="sitesearch" type="hidden"><input size="10" name="q" id="query" type="text"><img height="1" width="5" alt="" src="../skin/images/spacer.gif" class="spacer"><input name="Search" value="Search" type="submit">
<br>
Search WSRP4J</td><td><img height="1" width="1" alt="" src="../skin/images/spacer.gif" class="spacer"></td>
</tr>
<tr>
<td colspan="3"><img height="7" width="1" alt="" src="../skin/images/spacer.gif" class="spacer"></td>
</tr>
<tr>
<td class="bottom-left-thick"></td><td bgcolor="#a5b6c6"><img height="1" width="1" alt="" src="../skin/images/spacer.gif" class="spacer"></td><td class="bottom-right-thick"></td>
</tr>
</table>
</form>
</td>
<!--================= end Search ==================-->
</tr>
</tbody>
</table>
</div>
<!--================= end Banner ==================-->
<!--================= start Main ==================-->
<table width="100%" cellpadding="0" cellspacing="0" border="0" summary="nav" id="breadcrumbs">
<tbody>
<!--================= start Status ==================-->
<tr class="status">
<td>
<!--================= start BreadCrumb ==================--><a href="http://apache.org">Apache</a> | <a href="http://ws.apache.org/">Web Services</a> | <a href="http://ws.apache.org/wsrp4j/">WSRP4J</a>
<!--================= end BreadCrumb ==================--></td><td id="tabs">
<!--================= start Tabs ==================-->
<div class="tab">
<span class="unselectedTab"><a href="../index.html">Home</a></span> | <span class="selectedTab"><a class="base-selected" href="../arch/arch.html">Architecture</a></span> | <a title="PDF file of this page" href="arch.pdf">PDF</a>
</div>
<!--================= end Tabs ==================-->
</td>
</tr>
</tbody>
</table>
<!--================= end Status ==================-->
<table id="main" width="100%" cellpadding="8" cellspacing="0" summary="" border="0">
<tbody>
<tr valign="top">
<!--================= start Menu ==================-->
<td id="leftcol">
<div id="navcolumn">
<div class="menuBar">
<div class="menu">
<span class="menuLabel">Architecture</span>
<div class="menuItem">
<span class="menuSelected">Overview</span>
</div>
<div class="menuItem">
<a href="../arch/consumer.html" title="Architecture of WSRP Consumer">Consumer</a>
</div>
<div class="menuItem">
<a href="../arch/producer.html" title="Architecture of WSRP Producer">Producer</a>
</div>
</div>
</div>
</div>
</td>
<!--================= end Menu ==================-->
<!--================= start Content ==================--><td>
<div id="bodycol">
<div class="app">
<div align="center">
<h1>WSRP Architecture</h1>
</div>
<div class="h3">
<p>
The
<a href="http://www.oasis-open.org/committees/tc_home.php?wg_abbrev=wsrp">OASIS WSRP</a>
standard defines pluggable, user-facing, interactive web
services with a common, well-defined interface and protocol for
processing user interactions and providing presentation fragments
suitably for aggregation by portals. WSRP standardizes web
services at the presentation layer on top of the existing web
services stack, builds on the existing web services standards and
will leverage additional web services standards efforts, such as
security efforts now underway, as they become available. The WSRP
interfaces are defined in the Web Services Description Language
(WSDL). In addition, WSRP defines metadata for self-description
for publishing and finding WSRP services in registries. All WSRP
services are required to implement a SOAP binding and optionally
may support additional bindings.
</p>
<p>
In the definition of the WSRP standard and the
<a href="http://www.jcp.org/en/jsr/detail?id=168">JSR 168</a>,
the OASIS Technical Committee and the JSR 168 Expert group have
closely collaborated to make sure that that both fit together well
in portal architectures. JSR 168 compliant portlets can be exposed
as WSRP compliant web services and conversely, WSRP services can
be integrated through generic portlet proxies written to the
Portlet API (see Figure below).
</p>
<div align="center">
<img class="figure" alt="Portal Overview" src="../images/WSRPArch1.png"></div>
<p>
The WSRP4J project provides the WSRP4J Producer, which allows
implementing such WSRP compliant services based on a free, open
source software stack consisting of Tomcat, Axis and WSRP4J which
in turn includes Pluto, the JSR 168 reference implementation. In
addition, the WSRP4J project provides a generic proxy portlet
written to the Portlet API, the WSRP4J Consumer (see Figure
below).
</p>
<div align="center">
<img class="figure" alt="WSRP4J Components" src="../images/WSRPArch2.png"></div>
<div id="pdf" align="right">
<a href="arch.pdf"><img alt="PDF" src="../skin/images/pdfdoc.gif" class="skin"><br>
PDF</a>
</div>
</div>
</div>
</div>
</td>
<!--================= end Content ==================-->
</tr>
</tbody>
</table>
<!--================= end Main ==================-->
<!--================= start Footer ==================-->
<div id="footer">
<table summary="footer" cellspacing="0" cellpadding="4" width="100%" border="0">
<tbody>
<tr>
<!--================= start Copyright ==================-->
<td colspan="2">
<div align="center">
<div class="copyright">
Copyright © 2003 The Apache Software Foundation.. All rights reserved.
</div>
</div>
</td>
<!--================= end Copyright ==================-->
</tr>
<tr>
<td align="left">
<!--================= start Host ==================-->
<div align="left">
<div class="host">
<a href="http://apache.org"><img border="0" class="logoImage" alt="" src="../images/icon.png"></a>
</div>
</div>
<!--================= end Host ==================-->
</td><td align="right">
<!--================= start Credits ==================-->
<div align="right">
<div class="credit"></div>
</div>
<!--================= end Credits ==================-->
</td>
</tr>
</tbody>
</table>
</div>
<!--================= end Footer ==================-->
</body>
</html>
1.1 ws-site/targets/wsrp4j/arch/producer.html
Index: producer.html
===================================================================
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<META http-equiv="Content-Type" content="text/html; charset=UTF-8">
<!--*** This is a generated file. Do not edit. ***-->
<link rel="stylesheet" href="../skin/tigris.css" type="text/css">
<link rel="stylesheet" href="../skin/mysite.css" type="text/css">
<link rel="stylesheet" href="../skin/site.css" type="text/css">
<link media="print" rel="stylesheet" href="../skin/print.css" type="text/css">
<title>WSRP Producer Architecture</title>
</head>
<body bgcolor="white" class="composite">
<!--================= start Banner ==================-->
<div id="banner">
<table width="100%" cellpadding="8" cellspacing="0" summary="banner" border="0">
<tbody>
<tr>
<!--================= start Group Logo ==================-->
<td align="left">
<div class="groupLogo">
<a href="http://ws.apache.org"><img border="0" class="logoImage" alt="Web Services" src="../images/group-logo.gif"></a>
</div>
</td>
<!--================= end Group Logo ==================-->
<!--================= start Project Logo ==================--><td align="right">
<div class="projectLogo">
<a href="http://ws.apache.org/wsrp4j/"><img border="0" class="logoImage" alt="WSRP4J" src="../images/wsrp4j-logo-big.png"></a>
</div>
</td>
<!--================= end Project Logo ==================-->
<!--================= start Search ==================--><td valign="top" rowspan="2" align="right" class="search">
<form target="_blank" action="http://www.google.com/search" method="get">
<table summary="search" border="0" cellspacing="0" cellpadding="0">
<tr>
<td bgcolor="#a5b6c6" colspan="3"><img height="10" width="1" alt="" src="../skin/images/spacer.gif" class="spacer"></td>
</tr>
<tr>
<td colspan="3"><img height="8" width="1" alt="" src="../skin/images/spacer.gif" class="spacer"></td>
</tr>
<tr>
<td><img height="1" width="1" alt="" src="../skin/images/spacer.gif" class="spacer"></td><td nowrap="nowrap"><input value="ws.apache.org" name="sitesearch" type="hidden"><input size="10" name="q" id="query" type="text"><img height="1" width="5" alt="" src="../skin/images/spacer.gif" class="spacer"><input name="Search" value="Search" type="submit">
<br>
Search WSRP4J</td><td><img height="1" width="1" alt="" src="../skin/images/spacer.gif" class="spacer"></td>
</tr>
<tr>
<td colspan="3"><img height="7" width="1" alt="" src="../skin/images/spacer.gif" class="spacer"></td>
</tr>
<tr>
<td class="bottom-left-thick"></td><td bgcolor="#a5b6c6"><img height="1" width="1" alt="" src="../skin/images/spacer.gif" class="spacer"></td><td class="bottom-right-thick"></td>
</tr>
</table>
</form>
</td>
<!--================= end Search ==================-->
</tr>
</tbody>
</table>
</div>
<!--================= end Banner ==================-->
<!--================= start Main ==================-->
<table width="100%" cellpadding="0" cellspacing="0" border="0" summary="nav" id="breadcrumbs">
<tbody>
<!--================= start Status ==================-->
<tr class="status">
<td>
<!--================= start BreadCrumb ==================--><a href="http://apache.org">Apache</a> | <a href="http://ws.apache.org/">Web Services</a> | <a href="http://ws.apache.org/wsrp4j/">WSRP4J</a>
<!--================= end BreadCrumb ==================--></td><td id="tabs">
<!--================= start Tabs ==================-->
<div class="tab">
<span class="unselectedTab"><a href="../index.html">Home</a></span> | <span class="selectedTab"><a class="base-selected" href="../arch/arch.html">Architecture</a></span> | <a title="PDF file of this page" href="producer.pdf">PDF</a>
</div>
<!--================= end Tabs ==================-->
</td>
</tr>
</tbody>
</table>
<!--================= end Status ==================-->
<table id="main" width="100%" cellpadding="8" cellspacing="0" summary="" border="0">
<tbody>
<tr valign="top">
<!--================= start Menu ==================-->
<td id="leftcol">
<div id="navcolumn">
<div class="menuBar">
<div class="menu">
<span class="menuLabel">Architecture</span>
<div class="menuItem">
<a href="../arch/arch.html" title="Architecture Overview">Overview</a>
</div>
<div class="menuItem">
<a href="../arch/consumer.html" title="Architecture of WSRP Consumer">Consumer</a>
</div>
<div class="menuItem">
<span class="menuSelected">Producer</span>
</div>
</div>
</div>
</div>
</td>
<!--================= end Menu ==================-->
<!--================= start Content ==================--><td>
<div id="bodycol">
<div class="app">
<div align="center">
<h1>WSRP Producer Architecture</h1>
</div>
<div class="h3">
<p>
Producer and consumer are provided with a very modular
architecture enabling an easy exchange of module implementations.
All modules excel by interfaces based on the WSRP object model
hiding the runtime environment's (portal's) object model
and thus gaining independence of changes in the environment's
implementation or design.
</p>
<div align="center">
<img class="figure" alt="WSRP Producer Architecture" src="../images/producer_architecture.jpg"></div>
<div class="h3">
<h3>WSRPEngine</h3>
</div>
<p>
The WSRPEngine is the WSRP implementation endpoint. This class
must be deployed in the app server (Tomcat) as a web service. The
WSRPEngine implements the WSRP protocol specific ports
(=interfaces) and does the corresponding protocol handling. There
are four WSRP ports:
</p>
<dl>
<dt>Markup</dt>
<dd>deals with Portlet invocation and Session handling</dd>
<dt>PortletManagement</dt>
<dd>covers lifecycle and properties of portlets</dd>
<dt>Registration</dt>
<dd>enables a consumer to register at the producer</dd>
<dt>ServiceDescription</dt>
<dd>enables a consumer to discover the services that a producer provides</dd>
</dl>
<div class="frame note">
<div class="label">Note</div>
<div class="content">
To be able to reuse Portal functionality regarding session and
request handling when invoking a portlet the WSRPEngine must be
able to access the HttpServletRequest.
</div>
</div>
<div class="h3">
<h3>ConsumerRegistry</h3>
</div>
<p>
This component manages and provides access to the registered Consumers.
</p>
<div class="h3">
<h3>HandleGenerator</h3>
</div>
<p>
This component is responsible for generating IDs / handles required
for the WSRP protocol handling.
</p>
<div class="h3">
<h3>WSRP Object Model</h3>
</div>
<p>
The WSRP object model is being generated from the WSRP specification's WSDL types.
</p>
<div class="h3">
<h3>Provider</h3>
</div>
<p>
The Provider is the access point for the WSRPEngine to the Provider
components which hide the provider (portal) implementation's
components required to handle and invoke portlets. All Subcomponents
wrap corresponding provider components and map the WSRP object model
to the provider object model.
</p>
<div class="h3">
<h3>Portlet Invoker</h3>
</div>
<p>
The PortletInvoker wraps the Provider's invocation mechanisms and
provides the Provider with the required environment.
</p>
<div class="h3">
<h3>Description Handler</h3>
</div>
<p>
The DescriptionHandler manages and provides the description of the
provider regarding configuration properties like registration or
session handling policy, etc. It moreover provides the descriptions
of the provided portlets depending on the registration.
</p>
<div class="h3">
<h3>PortletPool</h3>
</div>
<p>
The PortletPool manages the portlet instances and is responsible for
the portlets' lifecycle management (clone, destroy).
</p>
<div class="h3">
<h3>Portlet State Manager</h3>
</div>
<p>
The PortletStateMananger enables a Producer to access a portlet's
state as a blob that than can be delegate to the consumer to be stored
on consumer side.
</p>
<div class="h3">
<h3>Session Handler</h3>
</div>
<p>
No additional session handling implementation for the Pluto provider
is required as the session handling concept is completely HTTP
(cookie) based and relies on consumer' cookie handling.
</p>
<div class="h3">
<h3>URL Composer</h3>
</div>
<p>
The URLComposer must be used for WSRP triggered portlet invocation to
create WSRP URLs instead of the portal's URL handling
implementation. Therefore the URLComposer is being used by WSRP's
version of the DynamicInformationProvider which is being used by the
Portlet API implementation to generate portlet URLs. There are two
ways how URLs can be composed in a WSRP environment:
</p>
<ol>
<li>
Via templates that represent URLs that are valid on Consumer side and
contain placeholders for all portlet specific URL components.
</li>
<li>
Via URL rewriting. In that case WSRP specific URLs are being composed
that will have to be rewritten by the Consumer.
</li>
</ol>
<div id="pdf" align="right">
<a href="producer.pdf"><img alt="PDF" src="../skin/images/pdfdoc.gif" class="skin"><br>
PDF</a>
</div>
</div>
</div>
</div>
</td>
<!--================= end Content ==================-->
</tr>
</tbody>
</table>
<!--================= end Main ==================-->
<!--================= start Footer ==================-->
<div id="footer">
<table summary="footer" cellspacing="0" cellpadding="4" width="100%" border="0">
<tbody>
<tr>
<!--================= start Copyright ==================-->
<td colspan="2">
<div align="center">
<div class="copyright">
Copyright © 2003 The Apache Software Foundation.. All rights reserved.
</div>
</div>
</td>
<!--================= end Copyright ==================-->
</tr>
<tr>
<td align="left">
<!--================= start Host ==================-->
<div align="left">
<div class="host">
<a href="http://apache.org"><img border="0" class="logoImage" alt="" src="../images/icon.png"></a>
</div>
</div>
<!--================= end Host ==================-->
</td><td align="right">
<!--================= start Credits ==================-->
<div align="right">
<div class="credit"></div>
</div>
<!--================= end Credits ==================-->
</td>
</tr>
</tbody>
</table>
</div>
<!--================= end Footer ==================-->
</body>
</html>
1.1 ws-site/targets/wsrp4j/arch/producer.pdf
<<Binary file>>