You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@chemistry.apache.org by bu...@apache.org on 2011/02/17 18:18:08 UTC

svn commit: r785594 [5/10] - in /websites/staging/chemistry/trunk/content: ./ images/ resources/

Added: websites/staging/chemistry/trunk/content/opencmis-browser.html
==============================================================================
--- websites/staging/chemistry/trunk/content/opencmis-browser.html (added)
+++ websites/staging/chemistry/trunk/content/opencmis-browser.html Thu Feb 17 17:18:07 2011
@@ -0,0 +1,223 @@
+
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--
+
+    Licensed to the Apache Software Foundation (ASF) under one or more
+    contributor license agreements.  See the NOTICE file distributed with
+    this work for additional information regarding copyright ownership.
+    The ASF licenses this file to You under the Apache License, Version 2.0
+    (the "License"); you may not use this file except in compliance with
+    the License.  You may obtain a copy of the License at
+
+       http://www.apache.org/licenses/LICENSE-2.0
+
+    Unless required by applicable law or agreed to in writing, software
+    distributed under the License is distributed on an "AS IS" BASIS,
+    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+    See the License for the specific language governing permissions and
+    limitations under the License.
+-->
+<html>
+  <head>
+    <link type="text/css" rel="stylesheet" href="http://incubator.apache.org/chemistry/resources/site.css"></link>
+    <script src="http://incubator.apache.org/chemistry/resources/space.js" type="text/javascript"></script>
+    <meta name="keywords" content="CMIS, Content Management Interoperability Service, ECM, Enterprise Content Management, OASIS, integration standards, Chemistry, OpenCMIS"/>
+    <meta name="description" content"Apache Chemistry, CMIS Implementation" />
+    <title>
+Apache Chemistry - OpenCMIS Browser
+    </title>
+  </head>
+<body onload="init()">
+  <table width="100%" cellpadding="0" cellspacing="0">
+    <tr width="100%">
+      <td id="cell-0-0">&nbsp;</td>
+      <td id="cell-0-1">&nbsp;</td>
+      <td id="cell-0-2">&nbsp;</td>
+    </tr>
+    <tr width="100%">
+      <td id="cell-1-0">&nbsp;</td>
+      <td id="cell-1-1">
+        <div style="padding: 5px;">
+          <div id="banner">
+          <!-- Banner -->
+<TABLE border="0" cellpadding="0" cellspacing="0" width="100%">
+<TR>
+<TD align="left" class="topbardiv" nowrap="">
+<A href="http://incubator.apache.org/chemistry" title="Apache Chemistry">
+<IMG border="0" src="http://incubator.apache.org/chemistry/images/chemistry_logo_small.png"/>
+</A>
+</TD>
+<TD align="right" nowrap="">
+<A href="http://incubator.apache.org/" title="The Apache Software Foundation Incubator">
+<IMG border="0" src="http://incubator.apache.org/images/apache-incubator-logo.png">
+</A>
+</TD>
+</TR>
+</TABLE>
+          <!-- Banner -->
+          </div>
+        </div>
+        <div id="top-menu">
+          <table border="0" cellpadding="1" cellspacing="0" width="100%">
+            <tr>
+              <td>
+                <div align="left">
+                <!-- Breadcrumbs -->
+<a href="/">Home</a>&nbsp;&raquo&nbsp;<a href="/opencmis.html">OpenCMIS</a>&nbsp;&raquo&nbsp;<a href="/opencmis-browser.html">OpenCMIS Browser</a>
+                <!-- Breadcrumbs -->
+                </div>
+              </td>
+              <td>
+                <div align="right">
+                <!-- Quicklinks -->
+<P><A href="http://www.apache.org/licenses/LICENSE-2.0.html" class="external-link" rel="nofollow">License</A> <A href="sitemap.html" title="SiteMap">Site Map</A></P>
+                <!-- Quicklinks -->
+                </div>
+              </td>
+            </tr>
+          </table>
+        </div>
+      </td>
+      <td id="cell-1-2">&nbsp;</td>
+    </tr>
+    <tr width="100%">
+      <td id="cell-2-0">&nbsp;</td>
+      <td id="cell-2-1">
+        <table>
+          <tr height="100%" valign="top">
+            <td height="100%">
+              <div id="wrapper-menu-page-right">
+                <div id="wrapper-menu-page-top">
+                  <div id="wrapper-menu-page-bottom">
+                    <div id="menu-page">
+                    <!-- NavigationBar -->
+                    <H3><A name="Navigation-Overview"></A>Overview</H3>
+
+<UL class="alternate" type="square">
+   <LI><A href="http://www.apache.org/licenses/LICENSE-2.0.html" class="external-link" rel="nofollow">License</A></LI>
+   <LI><A href="sitemap.html" title="SiteMap">Site Map</A></LI>
+   <LI><A href="http://mail-archives.apache.org/mod_mbox/incubator-chemistry-dev/" class="external-link" rel="nofollow">Mailing List</A></LI>
+   <LI><A href="https://issues.apache.org/jira/browse/CMIS" class="external-link" rel="nofollow">Issue Tracking</A></LI>
+</UL>
+
+
+<H3><A name="Navigation-Search"></A>Search</H3>
+
+<DIV style="padding: 0px 0px 0px 20px;">
+<FORM action="http://www.google.com/search" method="get" style="font-size: 10px;">
+<INPUT name="ie" type="hidden" value="UTF-8"></INPUT>
+<INPUT name="oe" type="hidden" value="UTF-8"></INPUT>
+  <INPUT maxlength="255" name="q" size="12" type="text" value=""></INPUT>
+  <INPUT name="btnG" type="submit" value="Search"></INPUT>
+  <INPUT name="domains" type="hidden" value="incubator.apache.org/chemistry"></INPUT>
+  <INPUT name="sitesearch" type="hidden" value="incubator.apache.org/chemistry"></INPUT>
+</FORM>
+</DIV>
+
+
+<H3><A name="Navigation-CMISforJava"></A>CMIS for Java</H3>
+
+<UL class="alternate" type="square">
+   <LI><A href="opencmis.html" title="OpenCMIS">OpenCMIS</A></LI>
+   <LI><A href="opencmis-modules.html" title="OpenCMIS Modules">Overview</A></LI>
+   <LI><A href="opencmis-client-api.html" title="OpenCMIS Client API">Client API</A></LI>
+   <LI><A href="https://svn.apache.org/repos/asf/chemistry/opencmis/trunk" class="external-link" rel="nofollow">Source Code</A></LI>
+   <LI><A href="http://incubator.apache.org/chemistry/javadoc/index.html" class="external-link" rel="nofollow">JavaDoc</A></LI>
+</UL>
+
+
+<H3><A name="Navigation-CMISforPython"></A>CMIS for Python</H3>
+
+<UL class="alternate" type="square">
+   <LI><A href="cmislib.html" title="cmislib">cmislib</A></LI>
+   <LI><A href="http://incubator.apache.org/chemistry/cmislib-doc/" class="external-link" rel="nofollow">cmislib Documentation</A></LI>
+   <LI><A href="https://svn.apache.org/repos/asf/chemistry/cmislib/trunk" class="external-link" rel="nofollow">Source Code</A></LI>
+</UL>
+
+
+<H3><A name="Navigation-CMISforPHP"></A>CMIS for PHP</H3>
+
+<UL class="alternate" type="square">
+   <LI><A href="phpclient.html" title="phpclient">CMIS PHP Client</A></LI>
+   <LI><A href="https://svn.apache.org/repos/asf/chemistry/phpclient/trunk" class="external-link" rel="nofollow">Source Code</A></LI>
+</UL>
+
+
+<H3><A name="Navigation-CMISfor.NET"></A>CMIS for .NET</H3>
+
+<UL class="alternate" type="square">
+   <LI><A href="dotcmis.html" title="DotCMIS">DotCMIS</A></LI>
+   <LI><A href="https://svn.apache.org/repos/asf/chemistry/dotcmis/trunk" class="external-link" rel="nofollow">Source Code</A></LI>
+</UL>
+
+
+<H3><A name="Navigation-Sponsorship"></A>Sponsorship</H3>
+
+<UL class="alternate" type="square">
+   <LI><A href="http://www.apache.org/foundation/thanks.html" class="external-link" rel="nofollow">Thanks</A></LI>
+   <LI><A href="http://www.apache.org/foundation/sponsorship.html" class="external-link" rel="nofollow">Sponsoring Apache</A></LI>
+</UL>
+
+                    <!-- NavigationBar -->
+                    </div>
+                </div>
+              </div>
+            </div>
+           </td>
+           <td height="100%">
+             <!-- Content -->
+             <div class="wiki-content"><p><a name="OpenCMISBrowser-OpenCMISBrowser"></a></p>
+<h1 id="opencmis_browser">OpenCMIS Browser</h1>
+<p>The CMIS Browser is a simple web based tool to browse CMIS enabled
+repositories that support the AtomPub binding. It sits between the web
+browser of the end-user and the CMIS repository. It applies stylesheets to
+the Atom entries and feeds that repository returns and creates HTML pages
+that enable the end-user to navigate through the repository.</p>
+<p>The CMIS Browser consists of a small WAR file that doesn't require any
+configuration. Deploy it to a servlet engine and type
+<em>http://<host>/<context>/browse</em> in your web browser. Enter the URL of
+the AtomPub service document into the input box and start browsing.</p>
+<p><a name="OpenCMISBrowser-BuildandDeploytheCMISBrowser"></a></p>
+<h2 id="build_and_deploy_the_cmis_browser">Build and Deploy the CMIS Browser</h2>
+<ol>
+<li><a href="opencmis-how-to-build.html">Build OpenCMIS</a>
+.</li>
+<li>A ready-to-use WAR file should now exist in
+<em>/chemistry-opencmis-test/chemistry-opencmis-test-browser-app/target</em>.</li>
+<li>Deploy the WAR file to your favorite servlet engine.</li>
+</ol></div>
+             <!-- Content -->
+           </td>
+          </tr>
+        </table>
+     </td>
+     <td id="cell-2-2">&nbsp;</td>
+    </tr>
+    <tr width="100%">
+     <td id="cell-3-0">&nbsp;</td>
+     <td id="cell-3-1">
+       <div id="footer">
+       <!-- Footer -->
+       <div id="site-footer">
+          
+          Apache Chemistry, Apache, the Apache feather logo, and the Apache 
+          Chemistry project logo are trademarks of The Apache Software 
+          Foundation.<br /><br />
+          Content Management Interoperability Services (CMIS) is an
+          <a href="http://www.oasis-open.org/committees/cmis/">OASIS</a>
+          specification.
+          
+       </div>
+       <!-- Footer -->
+       </div>
+     </td>
+     <td id="cell-3-2">&nbsp;</td>
+    </tr>
+    <tr width="100%">
+      <td id="cell-4-0">&nbsp;</td>
+      <td id="cell-4-1">&nbsp;</td>
+      <td id="cell-4-2">&nbsp;</td>
+    </tr>
+  </table>
+</body>
+</html>

Added: websites/staging/chemistry/trunk/content/opencmis-client-api.html
==============================================================================
--- websites/staging/chemistry/trunk/content/opencmis-client-api.html (added)
+++ websites/staging/chemistry/trunk/content/opencmis-client-api.html Thu Feb 17 17:18:07 2011
@@ -0,0 +1,385 @@
+
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--
+
+    Licensed to the Apache Software Foundation (ASF) under one or more
+    contributor license agreements.  See the NOTICE file distributed with
+    this work for additional information regarding copyright ownership.
+    The ASF licenses this file to You under the Apache License, Version 2.0
+    (the "License"); you may not use this file except in compliance with
+    the License.  You may obtain a copy of the License at
+
+       http://www.apache.org/licenses/LICENSE-2.0
+
+    Unless required by applicable law or agreed to in writing, software
+    distributed under the License is distributed on an "AS IS" BASIS,
+    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+    See the License for the specific language governing permissions and
+    limitations under the License.
+-->
+<html>
+  <head>
+    <link type="text/css" rel="stylesheet" href="http://incubator.apache.org/chemistry/resources/site.css"></link>
+    <script src="http://incubator.apache.org/chemistry/resources/space.js" type="text/javascript"></script>
+    <meta name="keywords" content="CMIS, Content Management Interoperability Service, ECM, Enterprise Content Management, OASIS, integration standards, Chemistry, OpenCMIS"/>
+    <meta name="description" content"Apache Chemistry, CMIS Implementation" />
+    <title>
+Apache Chemistry - OpenCMIS Client API
+    </title>
+  </head>
+<body onload="init()">
+  <table width="100%" cellpadding="0" cellspacing="0">
+    <tr width="100%">
+      <td id="cell-0-0">&nbsp;</td>
+      <td id="cell-0-1">&nbsp;</td>
+      <td id="cell-0-2">&nbsp;</td>
+    </tr>
+    <tr width="100%">
+      <td id="cell-1-0">&nbsp;</td>
+      <td id="cell-1-1">
+        <div style="padding: 5px;">
+          <div id="banner">
+          <!-- Banner -->
+<TABLE border="0" cellpadding="0" cellspacing="0" width="100%">
+<TR>
+<TD align="left" class="topbardiv" nowrap="">
+<A href="http://incubator.apache.org/chemistry" title="Apache Chemistry">
+<IMG border="0" src="http://incubator.apache.org/chemistry/images/chemistry_logo_small.png"/>
+</A>
+</TD>
+<TD align="right" nowrap="">
+<A href="http://incubator.apache.org/" title="The Apache Software Foundation Incubator">
+<IMG border="0" src="http://incubator.apache.org/images/apache-incubator-logo.png">
+</A>
+</TD>
+</TR>
+</TABLE>
+          <!-- Banner -->
+          </div>
+        </div>
+        <div id="top-menu">
+          <table border="0" cellpadding="1" cellspacing="0" width="100%">
+            <tr>
+              <td>
+                <div align="left">
+                <!-- Breadcrumbs -->
+<a href="/">Home</a>&nbsp;&raquo&nbsp;<a href="/opencmis.html">OpenCMIS</a>&nbsp;&raquo&nbsp;<a href="/opencmis-client-api.html">OpenCMIS Client API</a>
+                <!-- Breadcrumbs -->
+                </div>
+              </td>
+              <td>
+                <div align="right">
+                <!-- Quicklinks -->
+<P><A href="http://www.apache.org/licenses/LICENSE-2.0.html" class="external-link" rel="nofollow">License</A> <A href="sitemap.html" title="SiteMap">Site Map</A></P>
+                <!-- Quicklinks -->
+                </div>
+              </td>
+            </tr>
+          </table>
+        </div>
+      </td>
+      <td id="cell-1-2">&nbsp;</td>
+    </tr>
+    <tr width="100%">
+      <td id="cell-2-0">&nbsp;</td>
+      <td id="cell-2-1">
+        <table>
+          <tr height="100%" valign="top">
+            <td height="100%">
+              <div id="wrapper-menu-page-right">
+                <div id="wrapper-menu-page-top">
+                  <div id="wrapper-menu-page-bottom">
+                    <div id="menu-page">
+                    <!-- NavigationBar -->
+                    <H3><A name="Navigation-Overview"></A>Overview</H3>
+
+<UL class="alternate" type="square">
+   <LI><A href="http://www.apache.org/licenses/LICENSE-2.0.html" class="external-link" rel="nofollow">License</A></LI>
+   <LI><A href="sitemap.html" title="SiteMap">Site Map</A></LI>
+   <LI><A href="http://mail-archives.apache.org/mod_mbox/incubator-chemistry-dev/" class="external-link" rel="nofollow">Mailing List</A></LI>
+   <LI><A href="https://issues.apache.org/jira/browse/CMIS" class="external-link" rel="nofollow">Issue Tracking</A></LI>
+</UL>
+
+
+<H3><A name="Navigation-Search"></A>Search</H3>
+
+<DIV style="padding: 0px 0px 0px 20px;">
+<FORM action="http://www.google.com/search" method="get" style="font-size: 10px;">
+<INPUT name="ie" type="hidden" value="UTF-8"></INPUT>
+<INPUT name="oe" type="hidden" value="UTF-8"></INPUT>
+  <INPUT maxlength="255" name="q" size="12" type="text" value=""></INPUT>
+  <INPUT name="btnG" type="submit" value="Search"></INPUT>
+  <INPUT name="domains" type="hidden" value="incubator.apache.org/chemistry"></INPUT>
+  <INPUT name="sitesearch" type="hidden" value="incubator.apache.org/chemistry"></INPUT>
+</FORM>
+</DIV>
+
+
+<H3><A name="Navigation-CMISforJava"></A>CMIS for Java</H3>
+
+<UL class="alternate" type="square">
+   <LI><A href="opencmis.html" title="OpenCMIS">OpenCMIS</A></LI>
+   <LI><A href="opencmis-modules.html" title="OpenCMIS Modules">Overview</A></LI>
+   <LI><A href="opencmis-client-api.html" title="OpenCMIS Client API">Client API</A></LI>
+   <LI><A href="https://svn.apache.org/repos/asf/chemistry/opencmis/trunk" class="external-link" rel="nofollow">Source Code</A></LI>
+   <LI><A href="http://incubator.apache.org/chemistry/javadoc/index.html" class="external-link" rel="nofollow">JavaDoc</A></LI>
+</UL>
+
+
+<H3><A name="Navigation-CMISforPython"></A>CMIS for Python</H3>
+
+<UL class="alternate" type="square">
+   <LI><A href="cmislib.html" title="cmislib">cmislib</A></LI>
+   <LI><A href="http://incubator.apache.org/chemistry/cmislib-doc/" class="external-link" rel="nofollow">cmislib Documentation</A></LI>
+   <LI><A href="https://svn.apache.org/repos/asf/chemistry/cmislib/trunk" class="external-link" rel="nofollow">Source Code</A></LI>
+</UL>
+
+
+<H3><A name="Navigation-CMISforPHP"></A>CMIS for PHP</H3>
+
+<UL class="alternate" type="square">
+   <LI><A href="phpclient.html" title="phpclient">CMIS PHP Client</A></LI>
+   <LI><A href="https://svn.apache.org/repos/asf/chemistry/phpclient/trunk" class="external-link" rel="nofollow">Source Code</A></LI>
+</UL>
+
+
+<H3><A name="Navigation-CMISfor.NET"></A>CMIS for .NET</H3>
+
+<UL class="alternate" type="square">
+   <LI><A href="dotcmis.html" title="DotCMIS">DotCMIS</A></LI>
+   <LI><A href="https://svn.apache.org/repos/asf/chemistry/dotcmis/trunk" class="external-link" rel="nofollow">Source Code</A></LI>
+</UL>
+
+
+<H3><A name="Navigation-Sponsorship"></A>Sponsorship</H3>
+
+<UL class="alternate" type="square">
+   <LI><A href="http://www.apache.org/foundation/thanks.html" class="external-link" rel="nofollow">Thanks</A></LI>
+   <LI><A href="http://www.apache.org/foundation/sponsorship.html" class="external-link" rel="nofollow">Sponsoring Apache</A></LI>
+</UL>
+
+                    <!-- NavigationBar -->
+                    </div>
+                </div>
+              </div>
+            </div>
+           </td>
+           <td height="100%">
+             <!-- Content -->
+             <div class="wiki-content"><p><a name="OpenCMISClientAPI-OpenCMISClientAPI"></a></p>
+<h1 id="opencmis_client_api">OpenCMIS Client API</h1>
+<p>{info:title=Table of Content}
+<em> <a href="#OpenCMISClientAPI-Sessions">Sessions</a>
+</em> <a href="#OpenCMISClientAPI-ExampleCode">Example Code</a>
+   * <a href="#OpenCMISClientAPI-SessionCreation-AtomPubBinding">Session Creation - AtomPub Binding</a>
+   * <a href="#OpenCMISClientAPI-SessionCreation-WebServicesBinding">Session Creation - Web Services Binding</a>
+   * <a href="#OpenCMISClientAPI-ReadingObjects-RootCollection">Reading Objects - Root Collection</a>
+   * <a href="#OpenCMISClientAPI-ReadingProperties-SingleProperty">Reading Properties - Single Property</a>
+   * <a href="#OpenCMISClientAPI-ReadingProperties-AllProperties">Reading Properties - All Properties</a>
+{info}</p>
+<p>The OpenCMIS client layer provides an object oriented interface for easy
+consumption of the underlying CMIS related layers. In addition to the CMIS
+specification the OpenCMIS client layer introduces a session concept which
+easily enables applications to get control on the client side cache
+behavior.</p>
+<p>The client layer consists of a client interface, common interfaces and a
+runtime implementation. The runtime maps the client interface to the
+bindings layer and implements the session cache. All parts are exposed by
+following packages:</p>
+<table>
+<tr><th> Package </th><th> Artifact </th><th> Description </th></tr>
+<tr><td> org.apache.chemistry.opencmis.client.api </td><td> chemistry-opencmis-client-api
+</td><td> Main interfaces of the client API </td></tr>
+<tr><td> org.apache.chemistry.opencmis.commons.api </td><td>
+chemistry-opencmis-commons-api </td><td> Interfaces and classes shared by client
+and client bindings API </td></tr>
+<tr><td> org.apache.chemistry.opencmis.client.runtime </td><td>
+chemistry-opencmis-client-impl </td><td> Implementation classes of client API
+including a default implementation of the SessionFactory </td></tr>
+</table>
+
+<p>The following UML diagram illustrates the main classes of the client API:</p>
+<p>!OpenCMIS Client API Class Diagram.png!</p>
+<ul>
+<li><em>SessionFactory</em> This interface provides the entry point into the client
+API and is responsible to create a session object. Additionally it gives
+access to all repository info exposed by a CMIS client binding. The runtime
+provides a default implementation for the SessionFactory interface.</li>
+<li><em>Session</em> This is the main interface an application has to work with. A
+session object is related to a CMIS service client binding and is attached
+to exact one repository. All data that is received through the session
+interface can be cached in the session object in dependency of the concrete
+implementation which is behind.</li>
+<li><em>Repository</em> Wrapper interface for the CMIS RepositoryInfo service.</li>
+<li><em>CmisObject</em> The CmisObject interface represents the CMIS domain object.</li>
+<li><em>ObjectType</em> This interface is base for all CMIS domain types like
+FolderType, DocumentType, PolicyType and RelationshipType. The derived
+interfaces are not shown in the diagram.</li>
+<li><em>Folder</em> This interface represents the CMIS folder object.</li>
+<li><em>Document</em> This interface represents the CMIS document object.</li>
+<li><em>ContentStream</em> this interface wraps the content stream of a CMIS
+document.</li>
+<li><em>Policy</em> This interface represents the CMIS policy object.</li>
+<li><em>Relationship</em> This interface represents the CMIS relationship object.</li>
+</ul>
+<p><a name="OpenCMISClientAPI-Sessions"></a></p>
+<h1 id="sessions">Sessions</h1>
+<p>OpenCMIS' central entry point to a CMIS repository is a session. A session
+controls settings and caches that used across multiple calls and provides
+access to all CMIS operations and objects.
+In order to create a session, the SessionFactory needs a set parameters
+(see <a href="opencmis-session-parameters.html">OpenCMIS Session Parameters</a>
+).</p>
+<p><a name="OpenCMISClientAPI-ExampleCode"></a></p>
+<h1 id="example_code">Example Code</h1>
+<p><a name="OpenCMISClientAPI-SessionCreation-AtomPubBinding"></a></p>
+<h2 id="session_creation_-_atompub_binding">Session Creation - AtomPub Binding</h2>
+<DIV class="code panel" style="border-style: solid;border-width: 1px;"><DIV class="codeHeader panelHeader" style="border-bottom-width: 1px;border-bottom-style: solid;"><B>Opening a Atom Pub Connection</B></DIV><DIV class="codeContent panelContent">
+    // default factory implementation of client runtime
+    SessionFactory f = SessionFactoryImpl.newInstance();
+    Map<String, String> parameter = new HashMap<String, String>();
+
+// user credentials
+    parameter.put(SessionParameter.USER, "Otto");
+    parameter.put(SessionParameter.PASSWORD, "****");
+
+<div class="codehilite"><pre><span class="sr">//</span> <span class="n">connection</span> <span class="n">settings</span>
+<span class="n">parameter</span><span class="o">.</span><span class="n">put</span><span class="p">(</span><span class="n">SessionParameter</span><span class="o">.</span><span class="n">ATOMPUB_URL</span><span class="p">,</span>
+</pre></div>
+
+
+<p>"http://<host>:<port>/cmis/atom");
+    parameter.put(SessionParameter.BINDING_TYPE, BindingType.ATOMPUB.value());
+    parameter.put(SessionParameter.REPOSITORY_ID, "myRepository");</p>
+<div class="codehilite"><pre><span class="sr">//</span> <span class="n">session</span> <span class="n">locale</span>
+<span class="n">parameter</span><span class="o">.</span><span class="n">put</span><span class="p">(</span><span class="n">SessionParameter</span><span class="o">.</span><span class="n">LOCALE_ISO3166_COUNTRY</span><span class="p">,</span> <span class="s">&quot;&quot;</span><span class="p">);</span>
+<span class="n">parameter</span><span class="o">.</span><span class="n">put</span><span class="p">(</span><span class="n">SessionParameter</span><span class="o">.</span><span class="n">LOCALE_ISO639_LANGUAGE</span><span class="p">,</span> <span class="s">&quot;de&quot;</span><span class="p">);</span>
+
+<span class="sr">//</span> <span class="n">create</span> <span class="n">session</span>
+<span class="n">Session</span> <span class="n">s</span> <span class="o">=</span> <span class="n">f</span><span class="o">.</span><span class="n">createSession</span><span class="p">(</span><span class="n">parameter</span><span class="p">);</span>
+</pre></div>
+
+
+<p><a name="OpenCMISClientAPI-SessionCreation-WebServicesBinding"></a></p>
+<h2 id="session_creation_-_web_services_binding">Session Creation - Web Services Binding</h2>
+<DIV class="code panel" style="border-style: solid;border-width: 1px;"><DIV class="codeHeader panelHeader" style="border-bottom-width: 1px;border-bottom-style: solid;"><B>Opening a Web Services Connection</B></DIV><DIV class="codeContent panelContent">
+    // default factory implementation of client runtime
+    SessionFactory f = SessionFactoryImpl.newInstance();
+    Map<String, String> parameter = new HashMap<String, String>();
+
+// user credentials
+    parameter.put(SessionParameter.USER, "Otto");
+    parameter.put(SessionParameter.PASSWORD, "****");
+
+<div class="codehilite"><pre><span class="sr">//</span> <span class="n">connection</span> <span class="n">settings</span>
+<span class="n">parameter</span><span class="o">.</span><span class="n">put</span><span class="p">(</span><span class="n">SessionParameter</span><span class="o">.</span><span class="n">BINDING_TYPE</span><span class="p">,</span>
+</pre></div>
+
+
+<p>BindingType.WEBSERVICES.value());
+    parameter.put(SessionParameter.REPOSITORY_ID, "myRepository");
+    parameter.put(SessionParameter.WEBSERVICES_ACL_SERVICE,
+"http://<host>:<port>/cmis/services/ACLService?wsdl");
+    parameter.put(SessionParameter.WEBSERVICES_DISCOVERY_SERVICE,
+"http://<host>:<port>/cmis/services/DiscoveryService?wsdl");
+    parameter.put(SessionParameter.WEBSERVICES_MULTIFILING_SERVICE,
+"http://<host>:<port>/cmis/services/MultiFilingService?wsdl");
+    parameter.put(SessionParameter.WEBSERVICES_NAVIGATION_SERVICE,
+"http://<host>:<port>/cmis/services/NavigationService?wsdl");
+    parameter.put(SessionParameter.WEBSERVICES_OBJECT_SERVICE,
+"http://<host>:<port>/cmis/services/ObjectService?wsdl");
+    parameter.put(SessionParameter.WEBSERVICES_POLICY_SERVICE,
+"http://<host>:<port>/cmis/services/PolicyService?wsdl");
+    parameter.put(SessionParameter.WEBSERVICES_RELATIONSHIP_SERVICE,
+"http://<host>:<port>/cmis/services/RelationshipService?wsdl");
+    parameter.put(SessionParameter.WEBSERVICES_REPOSITORY_SERVICE,
+"http://<host>:<port>/cmis/services/RepositoryService?wsdl");
+    parameter.put(SessionParameter.WEBSERVICES_VERSIONING_SERVICE,
+"http://<host>:<port>/cmis/services/VersioningService?wsdl");</p>
+<div class="codehilite"><pre><span class="sr">//</span> <span class="n">session</span> <span class="n">locale</span>
+<span class="n">parameter</span><span class="o">.</span><span class="n">put</span><span class="p">(</span><span class="n">SessionParameter</span><span class="o">.</span><span class="n">LOCALE_ISO3166_COUNTRY</span><span class="p">,</span> <span class="s">&quot;&quot;</span><span class="p">);</span>
+<span class="n">parameter</span><span class="o">.</span><span class="n">put</span><span class="p">(</span><span class="n">SessionParameter</span><span class="o">.</span><span class="n">LOCALE_ISO639_LANGUAGE</span><span class="p">,</span> <span class="s">&quot;de&quot;</span><span class="p">);</span>
+<span class="n">parameter</span><span class="o">.</span><span class="n">put</span><span class="p">(</span><span class="n">SessionParameter</span><span class="o">.</span><span class="n">LOCALE_VARIANT</span><span class="p">,</span> <span class="s">&quot;&quot;</span><span class="p">);</span>
+
+<span class="sr">//</span> <span class="n">create</span> <span class="n">session</span>
+<span class="n">Session</span> <span class="n">s</span> <span class="o">=</span> <span class="n">f</span><span class="o">.</span><span class="n">createSession</span><span class="p">(</span><span class="n">parameter</span><span class="p">);</span>
+</pre></div>
+
+
+<p><a name="OpenCMISClientAPI-ReadingObjects-RootCollection"></a></p>
+<h2 id="reading_objects_-_root_collection">Reading Objects - Root Collection</h2>
+<DIV class="code panel" style="border-style: solid;border-width: 1px;"><DIV class="codeHeader panelHeader" style="border-bottom-width: 1px;border-bottom-style: solid;"><B>Reading the Root Collection</B></DIV><DIV class="codeContent panelContent">
+    Folder root = this.session.getRootFolder();
+
+ItemIterable<CmisObject> pl = root.getChildren();
+
+<div class="codehilite"><pre><span class="k">for</span> <span class="p">(</span><span class="n">CmisObject</span> <span class="n">o</span> <span class="p">:</span> <span class="n">pl</span><span class="p">)</span> <span class="p">{</span>
+  <span class="n">System</span><span class="o">.</span><span class="n">out</span><span class="o">.</span><span class="n">println</span><span class="p">(</span><span class="n">o</span><span class="o">.</span><span class="n">getName</span><span class="p">());</span>
+<span class="p">}</span>
+</pre></div>
+
+
+<p><a name="OpenCMISClientAPI-ReadingProperties-SingleProperty"></a></p>
+<h2 id="reading_properties_-_single_property">Reading Properties - Single Property</h2>
+<DIV class="code panel" style="border-style: solid;border-width: 1px;"><DIV class="codeHeader panelHeader" style="border-bottom-width: 1px;border-bottom-style: solid;"><B>Reading a Single Property</B></DIV><DIV class="codeContent panelContent">
+    ObjectId id = this.session.createObjectId("4711");
+    Document document = (Document) this.session.getObject(id);
+    Property<String> p = document.getProperty(PropertyIds.OBJECT_ID);
+
+String s = p.getValue();
+
+<p><a name="OpenCMISClientAPI-ReadingProperties-AllProperties"></a></p>
+<h2 id="reading_properties_-_all_properties">Reading Properties - All Properties</h2>
+<DIV class="code panel" style="border-style: solid;border-width: 1px;"><DIV class="codeHeader panelHeader" style="border-bottom-width: 1px;border-bottom-style: solid;"><B>Reading all Properties</B></DIV><DIV class="codeContent panelContent">
+    ObjectId id = this.session.createObjectId("4711");
+    Document document = (Document) this.session.getObject(id);
+    List<Property<?>> l = document.getProperties();
+    Iterator<Property<?>> i = l.iterator();
+    while (i.hasNext()) {
+      Property<?> p = i.next();
+      Object value = p.getValue();
+      PropertyType t = p.getType();
+
+switch (t) {
+        case INTEGER:
+          Integer n = (Integer) value;
+          System.out.println(p.getName() + " = " + n);
+          break;
+        case STRING:
+     [...]
+    }</div>
+             <!-- Content -->
+           </td>
+          </tr>
+        </table>
+     </td>
+     <td id="cell-2-2">&nbsp;</td>
+    </tr>
+    <tr width="100%">
+     <td id="cell-3-0">&nbsp;</td>
+     <td id="cell-3-1">
+       <div id="footer">
+       <!-- Footer -->
+       <div id="site-footer">
+          
+          Apache Chemistry, Apache, the Apache feather logo, and the Apache 
+          Chemistry project logo are trademarks of The Apache Software 
+          Foundation.<br /><br />
+          Content Management Interoperability Services (CMIS) is an
+          <a href="http://www.oasis-open.org/committees/cmis/">OASIS</a>
+          specification.
+          
+       </div>
+       <!-- Footer -->
+       </div>
+     </td>
+     <td id="cell-3-2">&nbsp;</td>
+    </tr>
+    <tr width="100%">
+      <td id="cell-4-0">&nbsp;</td>
+      <td id="cell-4-1">&nbsp;</td>
+      <td id="cell-4-2">&nbsp;</td>
+    </tr>
+  </table>
+</body>
+</html>

Added: websites/staging/chemistry/trunk/content/opencmis-client-bindings.html
==============================================================================
--- websites/staging/chemistry/trunk/content/opencmis-client-bindings.html (added)
+++ websites/staging/chemistry/trunk/content/opencmis-client-bindings.html Thu Feb 17 17:18:07 2011
@@ -0,0 +1,344 @@
+
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--
+
+    Licensed to the Apache Software Foundation (ASF) under one or more
+    contributor license agreements.  See the NOTICE file distributed with
+    this work for additional information regarding copyright ownership.
+    The ASF licenses this file to You under the Apache License, Version 2.0
+    (the "License"); you may not use this file except in compliance with
+    the License.  You may obtain a copy of the License at
+
+       http://www.apache.org/licenses/LICENSE-2.0
+
+    Unless required by applicable law or agreed to in writing, software
+    distributed under the License is distributed on an "AS IS" BASIS,
+    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+    See the License for the specific language governing permissions and
+    limitations under the License.
+-->
+<html>
+  <head>
+    <link type="text/css" rel="stylesheet" href="http://incubator.apache.org/chemistry/resources/site.css"></link>
+    <script src="http://incubator.apache.org/chemistry/resources/space.js" type="text/javascript"></script>
+    <meta name="keywords" content="CMIS, Content Management Interoperability Service, ECM, Enterprise Content Management, OASIS, integration standards, Chemistry, OpenCMIS"/>
+    <meta name="description" content"Apache Chemistry, CMIS Implementation" />
+    <title>
+Apache Chemistry - OpenCMIS Client Bindings
+    </title>
+  </head>
+<body onload="init()">
+  <table width="100%" cellpadding="0" cellspacing="0">
+    <tr width="100%">
+      <td id="cell-0-0">&nbsp;</td>
+      <td id="cell-0-1">&nbsp;</td>
+      <td id="cell-0-2">&nbsp;</td>
+    </tr>
+    <tr width="100%">
+      <td id="cell-1-0">&nbsp;</td>
+      <td id="cell-1-1">
+        <div style="padding: 5px;">
+          <div id="banner">
+          <!-- Banner -->
+<TABLE border="0" cellpadding="0" cellspacing="0" width="100%">
+<TR>
+<TD align="left" class="topbardiv" nowrap="">
+<A href="http://incubator.apache.org/chemistry" title="Apache Chemistry">
+<IMG border="0" src="http://incubator.apache.org/chemistry/images/chemistry_logo_small.png"/>
+</A>
+</TD>
+<TD align="right" nowrap="">
+<A href="http://incubator.apache.org/" title="The Apache Software Foundation Incubator">
+<IMG border="0" src="http://incubator.apache.org/images/apache-incubator-logo.png">
+</A>
+</TD>
+</TR>
+</TABLE>
+          <!-- Banner -->
+          </div>
+        </div>
+        <div id="top-menu">
+          <table border="0" cellpadding="1" cellspacing="0" width="100%">
+            <tr>
+              <td>
+                <div align="left">
+                <!-- Breadcrumbs -->
+<a href="/">Home</a>&nbsp;&raquo&nbsp;<a href="/opencmis.html">OpenCMIS</a>&nbsp;&raquo&nbsp;<a href="/opencmis-client-bindings.html">OpenCMIS Client Bindings</a>
+                <!-- Breadcrumbs -->
+                </div>
+              </td>
+              <td>
+                <div align="right">
+                <!-- Quicklinks -->
+<P><A href="http://www.apache.org/licenses/LICENSE-2.0.html" class="external-link" rel="nofollow">License</A> <A href="sitemap.html" title="SiteMap">Site Map</A></P>
+                <!-- Quicklinks -->
+                </div>
+              </td>
+            </tr>
+          </table>
+        </div>
+      </td>
+      <td id="cell-1-2">&nbsp;</td>
+    </tr>
+    <tr width="100%">
+      <td id="cell-2-0">&nbsp;</td>
+      <td id="cell-2-1">
+        <table>
+          <tr height="100%" valign="top">
+            <td height="100%">
+              <div id="wrapper-menu-page-right">
+                <div id="wrapper-menu-page-top">
+                  <div id="wrapper-menu-page-bottom">
+                    <div id="menu-page">
+                    <!-- NavigationBar -->
+                    <H3><A name="Navigation-Overview"></A>Overview</H3>
+
+<UL class="alternate" type="square">
+   <LI><A href="http://www.apache.org/licenses/LICENSE-2.0.html" class="external-link" rel="nofollow">License</A></LI>
+   <LI><A href="sitemap.html" title="SiteMap">Site Map</A></LI>
+   <LI><A href="http://mail-archives.apache.org/mod_mbox/incubator-chemistry-dev/" class="external-link" rel="nofollow">Mailing List</A></LI>
+   <LI><A href="https://issues.apache.org/jira/browse/CMIS" class="external-link" rel="nofollow">Issue Tracking</A></LI>
+</UL>
+
+
+<H3><A name="Navigation-Search"></A>Search</H3>
+
+<DIV style="padding: 0px 0px 0px 20px;">
+<FORM action="http://www.google.com/search" method="get" style="font-size: 10px;">
+<INPUT name="ie" type="hidden" value="UTF-8"></INPUT>
+<INPUT name="oe" type="hidden" value="UTF-8"></INPUT>
+  <INPUT maxlength="255" name="q" size="12" type="text" value=""></INPUT>
+  <INPUT name="btnG" type="submit" value="Search"></INPUT>
+  <INPUT name="domains" type="hidden" value="incubator.apache.org/chemistry"></INPUT>
+  <INPUT name="sitesearch" type="hidden" value="incubator.apache.org/chemistry"></INPUT>
+</FORM>
+</DIV>
+
+
+<H3><A name="Navigation-CMISforJava"></A>CMIS for Java</H3>
+
+<UL class="alternate" type="square">
+   <LI><A href="opencmis.html" title="OpenCMIS">OpenCMIS</A></LI>
+   <LI><A href="opencmis-modules.html" title="OpenCMIS Modules">Overview</A></LI>
+   <LI><A href="opencmis-client-api.html" title="OpenCMIS Client API">Client API</A></LI>
+   <LI><A href="https://svn.apache.org/repos/asf/chemistry/opencmis/trunk" class="external-link" rel="nofollow">Source Code</A></LI>
+   <LI><A href="http://incubator.apache.org/chemistry/javadoc/index.html" class="external-link" rel="nofollow">JavaDoc</A></LI>
+</UL>
+
+
+<H3><A name="Navigation-CMISforPython"></A>CMIS for Python</H3>
+
+<UL class="alternate" type="square">
+   <LI><A href="cmislib.html" title="cmislib">cmislib</A></LI>
+   <LI><A href="http://incubator.apache.org/chemistry/cmislib-doc/" class="external-link" rel="nofollow">cmislib Documentation</A></LI>
+   <LI><A href="https://svn.apache.org/repos/asf/chemistry/cmislib/trunk" class="external-link" rel="nofollow">Source Code</A></LI>
+</UL>
+
+
+<H3><A name="Navigation-CMISforPHP"></A>CMIS for PHP</H3>
+
+<UL class="alternate" type="square">
+   <LI><A href="phpclient.html" title="phpclient">CMIS PHP Client</A></LI>
+   <LI><A href="https://svn.apache.org/repos/asf/chemistry/phpclient/trunk" class="external-link" rel="nofollow">Source Code</A></LI>
+</UL>
+
+
+<H3><A name="Navigation-CMISfor.NET"></A>CMIS for .NET</H3>
+
+<UL class="alternate" type="square">
+   <LI><A href="dotcmis.html" title="DotCMIS">DotCMIS</A></LI>
+   <LI><A href="https://svn.apache.org/repos/asf/chemistry/dotcmis/trunk" class="external-link" rel="nofollow">Source Code</A></LI>
+</UL>
+
+
+<H3><A name="Navigation-Sponsorship"></A>Sponsorship</H3>
+
+<UL class="alternate" type="square">
+   <LI><A href="http://www.apache.org/foundation/thanks.html" class="external-link" rel="nofollow">Thanks</A></LI>
+   <LI><A href="http://www.apache.org/foundation/sponsorship.html" class="external-link" rel="nofollow">Sponsoring Apache</A></LI>
+</UL>
+
+                    <!-- NavigationBar -->
+                    </div>
+                </div>
+              </div>
+            </div>
+           </td>
+           <td height="100%">
+             <!-- Content -->
+             <div class="wiki-content"><p><a name="OpenCMISClientBindings-OpenCMISClientBindings"></a></p>
+<h1 id="opencmis_client_bindings">OpenCMIS Client Bindings</h1>
+<p>The OpenCMIS client bindings layer hides the CMIS AtomPub and Web Services
+bindings and provides an interface that is very similar to the <a href="http://docs.oasis-open.org/cmis/CMIS/v1.0/cs01/cmis-spec-v1.0.html#_Toc243905381">CMIS domain model</a>
+. The services, operations, parameters, and structures are named after the
+CMIS domain model and behave as described in the CMIS specification.</p>
+<p>The primary objective of the client bindings layer is to be complete,
+covering all CMIS operations and extension points. The result is a somewhat
+clunky interface. The <a href="opencmis-client-api.html">OpenCMIS Client API</a>
+ sits on top of the provider layer and exposes a nicer and simpler to use
+interface. It is the better choice for most applications.</p>
+<p>A connection to a CMIS repository is represented by a <a href="http://incubator.apache.org/chemistry/javadoc/org/apache/chemistry/opencmis/commons/spi/CmisBinding.html"><em>CmisBinding</em></a>
+ object. Such an object can be created by the [<em>CmisBindingFactory</em>|http://incubator.apache.org/chemistry/javadoc/org/apache/chemistry/opencmis/client/bindings/CmisBindingFactory.html]
+. The factory provides three main methods, one for each binding and third
+one for a local connection (same JVM), that require binding specific
+connection information. The created <em>CmisBinding</em> object exposes a
+binding agnostic interface.</p>
+<p><em>CmisBinding</em> is the entry point to the CMIS services and a few utility
+operations. It contains a transparent cache for repository infos and type
+definitions. The object is serializable, although dehydrating can be
+expensive. <em>CmisBinding</em> is thread-safe.</p>
+<p>The <em>get</em>Service()<em> methods provide access to the CMIS services. Some
+service operations take provider layer specific objects. These objects
+should be created with the <a href="http://incubator.apache.org/chemistry/javadoc/org/apache/chemistry/opencmis/commons/spi/BindingsObjectFactory.html"><em>BindingsObjectFactory</em></a>
+. This factory can be obtained through the </em>getObjectFactory()<em> method of
+the </em>CmisBinding* object.</p>
+<p>Please refer to the OpenCMIS Commons <a href="http://incubator.apache.org/chemistry/javadoc/">JavaDoc</a>
+ and OpenCMIS Client Binding [JavaDoc|http://incubator.apache.org/chemistry/javadoc/]
+ for more details on the interfaces.</p>
+<p><a name="OpenCMISClientBindings-SampleCode"></a></p>
+<h2 id="sample_code">Sample Code</h2>
+<p><a name="OpenCMISClientBindings-CreatinganAtomPubbindinginstance"></a></p>
+<h3 id="creating_an_atompub_binding_instance">Creating an AtomPub binding instance</h3>
+<p>The AtomPub binding requires the URL of the CMIS service document. HTTP
+basic authentication is enabled by default and a username and a password
+have to be provided.</p>
+<p>{code:java}
+Map<String, String> parameters = new HashMap<String, String>();</p>
+<p>parameters.put(SessionParameter.USER, user);
+parameters.put(SessionParameter.PASSWORD, password);</p>
+<p>parameters.put(SessionParameter.ATOMPUB_URL, url); // service document URL</p>
+<p>CmisBindingFactory factory = CmisBindingFactory.newInstance();
+CmisBinding binding = factory.createCmisAtomPubBinding(parameters);</p>
+<div class="codehilite"><pre><span class="n">h3</span><span class="o">.</span> <span class="n">Creating</span> <span class="n">a</span> <span class="n">Web</span> <span class="n">Services</span> <span class="n">binding</span> <span class="n">instance</span>
+
+<span class="n">The</span> <span class="n">Web</span> <span class="n">Services</span> <span class="n">binding</span> <span class="n">requires</span> <span class="n">a</span> <span class="n">WSDL</span> <span class="n">URL</span> <span class="k">for</span> <span class="nb">each</span> <span class="n">CMIS</span> <span class="n">service</span><span class="o">.</span> <span class="n">This</span>
+</pre></div>
+
+
+<p>might the same the URL for all services. WS-Security (UsernameToken) is
+enabled by default and a username and a password have to be provided.</p>
+<div class="codehilite"><pre><span class="p">{</span><span class="n">code:java</span><span class="p">}</span>
+<span class="n">Map</span><span class="o">&lt;</span><span class="n">String</span><span class="p">,</span> <span class="n">String</span><span class="o">&gt;</span> <span class="n">parameters</span> <span class="o">=</span> <span class="k">new</span> <span class="n">HashMap</span><span class="o">&lt;</span><span class="n">String</span><span class="p">,</span> <span class="n">String</span><span class="o">&gt;</span><span class="p">();</span>
+
+<span class="n">parameters</span><span class="o">.</span><span class="n">put</span><span class="p">(</span><span class="n">SessionParameter</span><span class="o">.</span><span class="n">USER</span><span class="p">,</span> <span class="n">username</span><span class="p">);</span>
+<span class="n">parameters</span><span class="o">.</span><span class="n">put</span><span class="p">(</span><span class="n">SessionParameter</span><span class="o">.</span><span class="n">PASSWORD</span><span class="p">,</span> <span class="n">password</span><span class="p">);</span>
+
+<span class="n">parameters</span><span class="o">.</span><span class="n">put</span><span class="p">(</span><span class="n">SessionParameter</span><span class="o">.</span><span class="n">WEBSERVICES_REPOSITORY_SERVICE</span><span class="p">,</span>
+</pre></div>
+
+
+<p>repositoryServiceWsdlUrl);
+    parameters.put(SessionParameter.WEBSERVICES_NAVIGATION_SERVICE,
+navigationServiceWsdlUrl);
+    parameters.put(SessionParameter.WEBSERVICES_OBJECT_SERVICE,
+objectServiceWsdlUrl);
+    parameters.put(SessionParameter.WEBSERVICES_VERSIONING_SERVICE,
+versioningServiceWsdlUrl);
+    parameters.put(SessionParameter.WEBSERVICES_DISCOVERY_SERVICE,
+discoveryServiceWsdlUrl);
+    parameters.put(SessionParameter.WEBSERVICES_RELATIONSHIP_SERVICE,
+relationshipServiceWsdlUrl);
+    parameters.put(SessionParameter.WEBSERVICES_MULTIFILING_SERVICE,
+multiFilingServiceWsdlUrl);
+    parameters.put(SessionParameter.WEBSERVICES_POLICY_SERVICE,
+policyServiceWsdlUrl);
+    parameters.put(SessionParameter.WEBSERVICES_ACL_SERVICE,
+aclServiceWsdlUrl);</p>
+<div class="codehilite"><pre><span class="n">CmisBindingFactory</span> <span class="n">factory</span> <span class="o">=</span> <span class="n">CmisBindingFactory</span><span class="o">.</span><span class="n">newInstance</span><span class="p">();</span>
+<span class="n">CmisBinding</span> <span class="n">binding</span> <span class="o">=</span> <span class="n">factory</span><span class="o">.</span><span class="n">createCmisWebServicesBinding</span><span class="p">(</span><span class="n">parameters</span><span class="p">);</span>
+</pre></div>
+
+
+<p><a name="OpenCMISClientBindings-CreatingaLocalbindinginstance"></a></p>
+<h3 id="creating_a_local_binding_instance">Creating a Local binding instance</h3>
+<p>The Local binding connects to an OpenCMIS server in the same JVM. The
+server factory class name has to be supplied.</p>
+<p>{code:java}
+Map<String, String> parameters = new HashMap<String, String>();</p>
+<p>parameters.put(SessionParameter.USER, user);
+parameters.put(SessionParameter.PASSWORD, password);</p>
+<p>parameters.put(SessionParameter.LOCAL_FACTORY, factoryClassName);</p>
+<p>CmisBindingFactory factory = CmisBindingFactory.newInstance();
+CmisBinding binding = factory.createCmisLocalBinding(parameters);</p>
+<div class="codehilite"><pre><span class="n">h3</span><span class="o">.</span> <span class="n">Getting</span> <span class="n">an</span> <span class="n">Object</span>
+
+<span class="n">The</span> <span class="n">following</span> <span class="n">snippet</span> <span class="n">gets</span> <span class="n">the</span> <span class="n">name</span> <span class="n">of</span> <span class="n">the</span> <span class="n">object</span> <span class="s">&quot;myObject&quot;</span> <span class="n">in</span> <span class="n">repository</span>
+</pre></div>
+
+
+<p>"myRepository". The parameters of getObject() can be found in the CMIS
+specification.</p>
+<div class="codehilite"><pre><span class="p">{</span><span class="n">code:java</span><span class="p">}</span>
+<span class="n">CmisBinding</span> <span class="n">binding</span> <span class="o">=</span> <span class="o">...</span>
+
+<span class="n">ObjectData</span> <span class="n">myObject</span> <span class="o">=</span> <span class="n">binding</span><span class="o">.</span><span class="n">getObjectService</span><span class="p">()</span><span class="o">.</span><span class="n">getObject</span><span class="p">(</span><span class="s">&quot;myRepository&quot;</span><span class="p">,</span>
+</pre></div>
+
+
+<p>"myObject",
+       "*", true, IncludeRelationships.BOTH, "cmis:none", true, true, null);</p>
+<div class="codehilite"><pre><span class="n">PropertiesData</span> <span class="n">properties</span> <span class="o">=</span> <span class="n">myObject</span><span class="o">.</span><span class="n">getProperties</span><span class="p">();</span>
+<span class="n">PropertyData</span><span class="sr">&lt;String&gt;</span> <span class="n">nameProperty</span> <span class="o">=</span>
+</pre></div>
+
+
+<p>properties.getProperties().get(PropertyIds.NAME);
+    String name = nameProperty.getFirstValue();</p>
+<p><a name="OpenCMISClientBindings-CustomAuthenticationProvider"></a></p>
+<h2 id="custom_authentication_provider">Custom Authentication Provider</h2>
+<p>OpenCMIS supports HTTP basic authentication for the AtomPub binding and
+WS-Security (UsernameToken) for the Web Services binding out of the box.
+Other authentication methods can be added by implementing a custom
+authentication provider.</p>
+<p>Such a provider must extend
+<em>org.apache.chemistry.opencmis.client.provider.spi.AbstractAuthenticationProvider</em>
+and overwrite the methods <em>getHTTPHeaders</em> and <em>getSOAPHeaders</em>. See
+JavaDoc for details.</p>
+<p>The session parameter <em>SessionParameter.AUTHENTICATION_PROVIDER_CLASS</em>
+must be set to the fully qualified class name in order to active the
+authentication provider before the session is created.</p>
+<p>{code:java}
+Map<String, String> parameters = new HashMap<String, String>();</p>
+<p>parameters.put(SessionParameter.AUTHENTICATION_PROVIDER_CLASS,
+"org.example.opencmis.MyAuthenticationProvider");
+parameters.put("org.example.opencmis.user", "cmisuser"); //
+MyAuthenticationProvider can get and evaluate this
+parameters.put("org.example.opencmis.secret", "b3BlbmNtaXMgdXNlcg==");</p>
+<p>parameters.put(SessionParameter.ATOMPUB_URL, url); // service document URL</p>
+<p>CmisBindingFactory factory = CmisBindingFactory.newInstance();
+CmisBinding provider = factory.createCmisAtomPubBinding(parameters);</p></div>
+             <!-- Content -->
+           </td>
+          </tr>
+        </table>
+     </td>
+     <td id="cell-2-2">&nbsp;</td>
+    </tr>
+    <tr width="100%">
+     <td id="cell-3-0">&nbsp;</td>
+     <td id="cell-3-1">
+       <div id="footer">
+       <!-- Footer -->
+       <div id="site-footer">
+          
+          Apache Chemistry, Apache, the Apache feather logo, and the Apache 
+          Chemistry project logo are trademarks of The Apache Software 
+          Foundation.<br /><br />
+          Content Management Interoperability Services (CMIS) is an
+          <a href="http://www.oasis-open.org/committees/cmis/">OASIS</a>
+          specification.
+          
+       </div>
+       <!-- Footer -->
+       </div>
+     </td>
+     <td id="cell-3-2">&nbsp;</td>
+    </tr>
+    <tr width="100%">
+      <td id="cell-4-0">&nbsp;</td>
+      <td id="cell-4-1">&nbsp;</td>
+      <td id="cell-4-2">&nbsp;</td>
+    </tr>
+  </table>
+</body>
+</html>