<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<!-- Generated by Apache Maven Doxia at Feb 18, 2013 -->
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
    <title>Apache Wink - </title>
    <style type="text/css" media="all">
      @import url("../css/maven-base.css");
      @import url("../css/maven-theme.css");
      @import url("../css/site.css");
    </style>
    <link rel="stylesheet" href="../css/print.css" type="text/css" media="print" />
    <meta name="Date-Revision-yyyymmdd" content="20130218" />
    <meta http-equiv="Content-Language" content="en" />
                                                    
<link rel="shortcut icon" href="./images/wink2.ico"/>
                                                        
<style type="text/css" media="all">@import url(css/site.css);</style>
                      
  </head>
  <body class="composite">
    <div id="banner">
                  <a href="http://incubator.apache.org/wink/" id="bannerLeft">
                                                <img src="../images/wink2-s.png" alt="Apache Wink" />
                </a>
                        <a href="http://incubator.apache.org" id="bannerRight">
                                        <img src="http://incubator.apache.org/images/apache-incubator-logo.png" alt="Apache Incubator" />
                </a>
            <div class="clear">
        <hr/>
      </div>
    </div>
    <div id="breadcrumbs">
            
                
                <div class="xleft">
                                  <a href="http://www.apache.org" class="externalLink" title="Apache">Apache</a>
                &gt;
                              <a href="http://incubator.apache.org" class="externalLink" title="Incubator">Incubator</a>
                &gt;
                              <a href="http://incubator.apache.org/wink" class="externalLink" title="Wink">Wink</a>
                  </div>
            <div class="xright">                    <a href="http://svn.apache.org/viewvc/incubator/wink/trunk" class="externalLink" title="SVN">SVN</a>
            |
                        <a href="http://cwiki.apache.org/confluence/display/WINK/Index" class="externalLink" title="Wiki">Wiki</a>
            |
                        <a href="http://issues.apache.org/jira/browse/WINK" class="externalLink" title="Jira">Jira</a>
              
                
                &nbsp;| <span id="publishDate">Last Published: 2013-02-18</span>
            </div>
      <div class="clear">
        <hr/>
      </div>
    </div>
    <div id="leftColumn">
      <div id="navcolumn">
             
                
                                <h5>Main</h5>
                  <ul>
                  <li class="none">
                          <a href=".././index.html" title="Introduction">Introduction</a>
            </li>
                  <li class="none">
                          <a href=".././news.html" title="News">News</a>
            </li>
                  <li class="none">
                          <a href=".././downloads.html" title="Downloads">Downloads</a>
            </li>
                  <li class="none">
                          <a href=".././documentation.html" title="Documentation">Documentation</a>
            </li>
                  <li class="none">
                          <a href=".././community.html" title="Community">Community</a>
            </li>
                  <li class="none">
                          <a href=".././faqs.html" title="FAQ">FAQ</a>
            </li>
          </ul>
                             <a href="http://maven.apache.org/" title="Built by Maven" class="poweredBy">
        <img class="poweredBy" alt="Built by Maven" src="../images/logos/maven-feather.png" />
      </a>
                   
                
            </div>
    </div>
    <div id="bodyColumn">
      <div id="contentBox">
        <div class="section"><h3>Apache Wink 1.1 Release Notes<a name="Apache_Wink_1.1_Release_Notes"></a></h3></div><div class="section"><h4>Overview<a name="Overview"></a></h4></div><p>This is the third official release of Apache Wink project. Apache Wink is a framework that helps you to produce and consume RESTful Web Services. Apache Wink is TCK compliant implementation of the JAX-RS v1.0 specification. The project also introduces Java API for writing clients that consume HTTP-based RESTful Web Services.</p><div class="section"><h4>Complete list of issues fixed in 1.1<a name="Complete_list_of_issues_fixed_in_1.1"></a></h4></div><div class="section"><h5>Sub-task<a name="Sub-task"></a></h5></div><ul><li>WINK-241 - Add Documentation regarding client side Basic Authentication handler</li><li>WINK-271 - Add code for mapping RSS into Syndication Object Model</li><li>WINK-272 - Add an unit-test to verify RSS to Synd mapping</li><li>WINK-273 - Add an Apache Wink Client example to demonstrate RSS to Synd mapping</li><li>WINK-274 - Create documentation for RSS to Synd mapping</li></ul><div class="section"><h5>Bug<a name="Bug"></a></h5></div><ul><li>WINK-226 - need fallback for Class.forName in J2EE environments</li><li>WINK-227 - need fallback for Class.forName in J2EE environments</li><li>WINK-229 - JAXBXmlProvider should tolerate user jaxb contexts</li><li>WINK-230 - NullPointerException occures when Content type in MultiPart isn't sent</li><li>WINK-235 - Fix issue with using Locale objects inside ResponseBuilder</li><li>WINK-243 - Unable to inject fields once ResourceInstance is initialized</li><li>WINK-244 - Wrong log during servlet startup</li><li>WINK-247 - Fix issue with wrong informational message given when no Response entity and wrong class used when trying to find media type if not specified</li><li>WINK-248 - Fix warning about methods when more methods used.</li><li>WINK-249 - Fix issue in UriBuilder where not throwing IllegalArgumentException</li><li>WINK-251 - Handling http error 405 correctly</li><li>WINK-253 - Typo in documentation for Wink 1.0 from Apache incubator website (it has ScopeType.SINGELTON instead of ScopeType.SINGLETON)</li><li>WINK-254 - AtomEntrySyndEntry content unavailable in Wink client</li><li>WINK-255 - Iterator over map of SoftReferences susceptible to ConcurrentModificationException</li><li>WINK-262 - Content-Type of HTTP Response contains no charset.</li><li>WINK-264 - Problem to construct a link using the LinkBuilders for a resource with a path param that contains &quot;:&quot;</li><li>WINK-265 - wink-client-apache-httpclient/pom.xml has duplicate junit def, causing mvn3 to puke</li></ul><div class="section"><h5>Improvement<a name="Improvement"></a></h5></div><ul><li>WINK-67 - Use the maven-assembly-plugin to generate release distributions</li><li>WINK-128 - Add Wink quick start guide</li><li>WINK-195 - JAX-RS 1.1 support:  C007</li><li>WINK-196 - JAX-RS 1.1 support:  C008</li><li>WINK-212 - Need to look into handling of Collection types of objects</li><li>WINK-216 - tolerate empty path segments to support empty PathParams</li><li>WINK-223 - reduce log output on 404s</li><li>WINK-224 - Need to set custom ID Resolver for JaxB unmarshaller.</li><li>WINK-225 - Reduce logging the ProvidersRegistry</li><li>WINK-228 - sweep code for java2security compatibility</li><li>WINK-234 - improve debug and return code for unfound writer</li><li>WINK-240 - Change logging to be less noisy</li><li>WINK-245 - Annotations on interfaces - should they work?</li><li>WINK-257 - allow Application subclass to control provider priority</li><li>WINK-259 - add support for injection into Application subclass</li><li>WINK-260 - Add JVM system properties to read from for setting client connection/read timeouts</li><li>WINK-261 - Add way to be able to capture logging warnings in unit tests so we can correctly identify when messages are correctly being emitted</li><li>WINK-263 - Add OSGi metadata to JARs</li><li>WINK-266 - RestServlet constants should be publicily consumable</li><li>WINK-268 - Configure versions for all plugins to avoid Maven 3 complaints</li><li>WINK-270 - Honor Accept-Charset when returning text based content</li><li>WINK-277 - Mention about extMultiPart sample in examplesreadme.txt</li><li>WINK-278 - Consistent naming convention for Wink distributions</li></ul><div class="section"><h5>New Feature<a name="New_Feature"></a></h5></div><ul><li>WINK-149 - Map RSS to Syndication Object Model</li><li>WINK-237 - Add a basic auth client handler</li><li>WINK-238 - Select the Content-Type automatically on client</li><li>WINK-250 - Experimental feature for Google Guice injection</li></ul><div class="section"><h5>Task<a name="Task"></a></h5></div><ul><li>WINK-99 - Use Wink Client instead of Apaceh Http Client in integration tests</li></ul><div class="section"><h5>Test<a name="Test"></a></h5></div><ul><li>WINK-97 - new integration tests:  context, uriinfo, etc</li></ul>
      </div>
    </div>
    <div class="clear">
      <hr/>
    </div>
    <div id="footer">
      <div class="xright">Copyright &#169;                    2009-2013
                        <a href="http://www.apache.org/">The Apache Software Foundation</a>.
            All Rights Reserved.      
                
      </div>
      <div class="clear">
        <hr/>
      </div>
    </div>
  </body>
</html>
