blob: 704d949dabb3e669c765fa310b6377e0158c6feb [file] [log] [blame]
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>Apache Wink : 5 Apache Wink Server</title>
<link rel="stylesheet" href="styles/site.css" type="text/css" />
<META http-equiv="Content-Type" content="text/html; charset=UTF-8">
</head>
<body>
<table class="pagecontent" border="0" cellpadding="0" cellspacing="0" width="100%" bgcolor="#ffffff">
<tr>
<td valign="top" class="pagebody">
<div class="pageheader">
<span class="pagetitle">
Apache Wink : 5 Apache Wink Server
</span>
</div>
<div class="pagesubheading">
This page last changed on Oct 14, 2009 by <font color="#0050B2">michael</font>.
</div>
<h1><a name="5ApacheWinkServer-ApacheWinkServerModule"></a>Apache Wink Server Module</h1>
<p>The following section describes the Apache Wink Server and provides a detailed description of the Apache Wink Server component and its functionality.</p>
<table class='confluenceTable'><tbody>
<tr>
<th class='confluenceTh'><h3><a name="5ApacheWinkServer-Contents"></a>Contents </h3></th>
</tr>
<tr>
<td class='confluenceTd'> <a href="5.1 Registration and Configuration.html" title="5.1 Registration and Configuration">5.1 Registration and Configuration</a><br clear="all" /> </td>
</tr>
<tr>
<td class='confluenceTd'> <a href="5.2 Annotations.html" title="5.2 Annotations">5.2 Annotations</a><br clear="all" /> </td>
</tr>
<tr>
<td class='confluenceTd'> <a href="5.3 Resource Matching.html" title="5.3 Resource Matching">5.3 Resource Matching</a><br clear="all" /> </td>
</tr>
<tr>
<td class='confluenceTd'> <a href="5.4 APP Service Document.html" title="5.4 APP Service Document">5.4 APP. Service Document</a><br clear="all" /> </td>
</tr>
<tr>
<td class='confluenceTd'> <a href="5.5 Spring Integration.html" title="5.5 Spring Integration">5.5 Spring Integration</a><br clear="all" /> </td>
</tr>
<tr>
<td class='confluenceTd'> <a href="5.6 WebDAV Extension.html" title="5.6 WebDAV Extension">5.6 WebDAV Extension</a><br clear="all" /> </td>
</tr>
<tr>
<td class='confluenceTd'> <a href="5.7 Handler Chain - Runtime Extension.html" title="5.7 Handler Chain - Runtime Extension">5.7 Handler Chain</a><br clear="all" /> </td>
</tr>
<tr>
<td class='confluenceTd'> <a href="5.8 Link Builder.html" title="5.8 Link Builder">5.8 Link Builder</a><br clear="all" /> </td>
</tr>
<tr>
<td class='confluenceTd'> <a href="5.9 Assets.html" title="5.9 Assets">5.9 Assets</a><br clear="all" /> </td>
</tr>
<tr>
<td class='confluenceTd'> <a href="5.10 Admin Views.html" title="5.10 Admin Views">5.10 Admin Views</a><br clear="all" /> </td>
</tr>
</tbody></table>
<h2><a name="5ApacheWinkServer-ApacheWinkServerOverview"></a>Apache Wink Server Overview</h2>
<p>The Apache Wink Server module is a complete implementation of the JAX-RS v1.0 specification. In addition to the core implementation, the Wink Server module provides a set of additional features that are designed to facilitate the development of RESTful Web services. The framework is easy to extend and to enrich with new functionality.</p>
<h2><a name="5ApacheWinkServer-MainFeatures"></a>Main Features</h2>
<p>The Apache Wink Server main features are as follows:</p>
<ul>
<li>Is a complete implementation of the JAX-RS v1.0 specification</li>
<li>Provides out-of-the-box Java object models for Atom, Json, RSS, APP, CSV, HTML, Multipart and OpenSearch along with providers to serialize and deserialize these models</li>
<li>Highly configurable and flexible runtime functionality</li>
<li>Provides a Handlers mechanism for manipulation of HTTP request and response messages</li>
<li>Automatic generation of APP document for collection resources</li>
<li>Spring integration</li>
<li>Provides support for WebDAV through the WebDAV extension</li>
<li>Provides an in-depth administration view of the runtime registries</li>
</ul>
<h3><a name="5ApacheWinkServer-ApacheWinkHighLevelServerArchitectureOverview"></a>Apache Wink High Level Server Architecture Overview</h3>
<p>The following diagram illustrates the general architecture of the Apache Wink server runtime.</p>
<p><img src="attachments/2851038/4751373.jpg" align="absmiddle" border="0"/></p>
<p>The Apache Wink server runtime layer receives incoming HTTP requests from the hosting container. Once a request is received the Apache Wink server runtime initiates a new request session by creating a message context that is passed through the handlers chain which consists of system and user defined handlers.</p>
<p>Initially the runtime passes the message context through the handlers responsible for finding the resources and resource methods that match the request according to the JAX-RS specification. If required, the incoming request is de-serialized using the appropriate provider. Once the injectable parameters are ready for injection the matched resource method is invoked and the returned response object is then passed through the handler chain in order to select and activate the appropriate provider for serialization as the HTTP response.</p>
<br/>
<div class="tabletitle">
<a name="attachments">Attachments:</a>
</div>
<div class="greybox" align="left">
<img src="images/icons/bullet_blue.gif" height="8" width="8" alt=""/>
<a href="attachments/2851038/3112967.jpg">Wink Logo.jpg</a> (image/jpeg)
<br/>
<img src="images/icons/bullet_blue.gif" height="8" width="8" alt=""/>
<a href="attachments/2851038/3112968.jpg">Wink Logo.jpg</a> (image/jpeg)
<br/>
<img src="images/icons/bullet_blue.gif" height="8" width="8" alt=""/>
<a href="attachments/2851038/3112966.jpg">Wink Logo.jpg</a> (image/jpeg)
<br/>
<img src="images/icons/bullet_blue.gif" height="8" width="8" alt=""/>
<a href="attachments/2851038/3801124.jpg">Apache Wink Server Diagram.jpg</a> (image/jpeg)
<br/>
<img src="images/icons/bullet_blue.gif" height="8" width="8" alt=""/>
<a href="attachments/2851038/3801097.jpg">Apache Wink Server Diagram.jpg</a> (image/jpeg)
<br/>
<img src="images/icons/bullet_blue.gif" height="8" width="8" alt=""/>
<a href="attachments/2851038/3801125.jpg">Apache Wink Server Diagram1.jpg</a> (image/jpeg)
<br/>
<img src="images/icons/bullet_blue.gif" height="8" width="8" alt=""/>
<a href="attachments/2851038/4751370.jpg">Apache Wink Server Diagram2.jpg</a> (image/jpeg)
<br/>
<img src="images/icons/bullet_blue.gif" height="8" width="8" alt=""/>
<a href="attachments/2851038/4751371.jpg">Apache Wink Server Diagram3.jpg</a> (image/jpeg)
<br/>
<img src="images/icons/bullet_blue.gif" height="8" width="8" alt=""/>
<a href="attachments/2851038/4751372.jpg">Apache Wink Server Diagram4.jpg</a> (image/jpeg)
<br/>
<img src="images/icons/bullet_blue.gif" height="8" width="8" alt=""/>
<a href="attachments/2851038/4751373.jpg">Apache Wink Server Diagram5.jpg</a> (image/jpeg)
<br/>
</div>
</td>
</tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" width="100%">
<tr>
<td height="12" background="http://cwiki.apache.org/confluence/images/border/border_bottom.gif"><img src="images/border/spacer.gif" width="1" height="1" border="0"/></td>
</tr>
<tr>
<td align="center"><font color="grey">Document generated by Confluence on Nov 11, 2009 06:57</font></td>
</tr>
</table>
</body>
</html>