You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@esme.apache.org by bu...@apache.org on 2011/06/27 15:55:31 UTC

svn commit: r791676 [4/8] - /websites/staging/esme/trunk/content/

Added: websites/staging/esme/trunk/content/faq.html
==============================================================================
--- websites/staging/esme/trunk/content/faq.html (added)
+++ websites/staging/esme/trunk/content/faq.html Mon Jun 27 13:55:28 2011
@@ -0,0 +1,313 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<html>
+<head>
+<!--
+
+    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.
+-->
+
+  <link href="/css/esme.css" rel="stylesheet" type="text/css">
+  <title>Apache ESME - FAQ</title>
+  <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+  <link rel="icon" type="image/png" href="/images/esme-logo/stanbol-favicon.png"/>
+</head>
+
+<body>
+  <div id="navigation">
+  <img alt="Apache ESME" width="220" height="101" src="/images/esme-logo/esme-powerd.gif"/>
+  <h1 id="esme_links">ESME links</h1>
+<ul>
+<li><a href="/index.html">Home</a></li>
+<li><a href="/team.html">Project Team</a></li>
+<li><a href="/docs/buildfromSVN.html">Building ESME</a></li>
+<li><a href="/docs/faq.html">FAQ</a></li>
+<li><a href="/docs/actions.html">Actions</a></li>
+<li><a href="/docs/apis.html">APIs</a></li>
+<li><a href="/docs/clients.html">Clients</a></li>
+<li><a href="/docs/collaboration.html">Collaboration</a></li>
+<li><a href="/docs/install.html">Installation Guides</a></li>
+<li><a href="/docs/yql.html">YQL</a><br />
+</li>
+</ul>
+<h1 id="asf_links">ASF links</h1>
+<ul>
+<li><a href="http://www.apache.org">Apache Software Foundation</a></li>
+<li><a href="http://www.apache.org/licenses/LICENSE-2.0">License</a></li>
+<li><a href="http://www.apache.org/foundation/thanks.html">Thanks</a></li>
+<li><a href="http://www.apache.org/foundation/sponsorship.html">Become a Sponsor</a></li>
+<li><a href="http://www.apache.org/security/">Security</a></li>
+</ul>
+  </div>
+
+  <div id="content">
+    <h1 class="title">FAQ</h1>
+    <p>{section}{column:width=70%}</p>
+<p><a name="FAQ-Questions"></a></p>
+<h1 id="questions">Questions</h1>
+<p><a name="FAQ-General"></a></p>
+<h2 id="general">General</h2>
+<p><a href="#openjdk1.html">Can I use OpenJDK and ESME together?</a></p>
+<p><a href="#delete1.html">Why can't you delete messages in ESME?</a></p>
+<p><a href="#j2ee_container1.html">On which J2EE containers has ESME been tested?</a></p>
+<p><a href="#compass1.html">How does search work in ESME?</a></p>
+<p><a href="#openid1.html">How do you configure OpenID?</a></p>
+<p><a href="#ldap1.html">Does ESME support LDAP integration?</a></p>
+<p><a href="#jdk_1.5_1.html">Does ESME work with JDK 1.5</a></p>
+<p><a href="#maven_1.html">How do you start jetty with a different port when using maven?</a></p>
+<p><a href="#prod_1.html">How do you run ESME in production-mode?</a></p>
+<p><a href="#curl_1.html">How do you run ESME with CURL?</a></p>
+<p><a name="FAQ-Design-related"></a></p>
+<h2 id="design-related">Design-related</h2>
+<p><a href="#twitter_api1.html">How does Twitter's new streaming API differ from ESME's design?</a></p>
+<p><a href="#design1.html">In an enterprise context could it be an requirement to send a link to someone else pointing to a specific potentially old message in a certain Pool. How would this work?</a></p>
+<p><a href="#design2.html">Would it be costly in your model to get the message nr. X  (  n  older messages) in a users' timeline?</a></p>
+<p><a href="#design3.html">I don't get why it has to be in the session's state because you could as well use the information that a user is online as a guidance, even if the state would be stored somewhere out of the session. Wouldn't make a difference I guess and storing it in the session looks natural.</a></p>
+<p><a href="#design4.html">I don't understand why ESME would need to store all entries in a cache, instead of only keeping the last n entries for each user based on some heuristics such as the last 3 days or something. I would somehow expect that the probability that a user wants to see a message is exponentially decreasing with the messages age. For example that someone wants to see a message that is the 1000 newest message in his timeline is probably almost zero</a>
+.</p>
+<p><a name="FAQ-Actions"></a></p>
+<h2 id="actions">Actions</h2>
+<p><a href="#action_content_type1.html">How do I add a content type to a HTTP Post action?</a></p>
+<p><a name="FAQ-PlatformSpecific"></a></p>
+<h2 id="platform_specific">Platform Specific</h2>
+<p><a name="FAQ-Apple"></a></p>
+<h3 id="apple">Apple</h3>
+<p><a href="#apple1.html">Are there are tips for building on Apples?</a></p>
+<h2 id="-">----</h2>
+<p><a name="FAQ-Answers"></a></p>
+<h1 id="answers">Answers</h1>
+<p><a name="FAQ-General"></a></p>
+<h2 id="general_1">General</h2>
+<p><em>Can I use OpenJDK and ESME together?</em> {anchor:OPENJDK1}</p>
+<p>Don't use OpenJDK and ESME together. YUI compressor fails with OpenJDK.</p>
+<hr />
+<p><em>Why can't you delete messages in ESME?</em> {anchor:delete1}</p>
+<p>There is a long discussion of the dangers of <a href="esme:message-deletion.html">deleting messages </a>
+ on the mailing list.</p>
+<hr />
+<p><em>On which J2EE containers has ESME been tested?</em> {anchor:J2EE_container1}</p>
+<ul>
+<li>Tomcat</li>
+<li>Jetty</li>
+<li>SAP Netweaver CE</li>
+<li>Glassfish</li>
+</ul>
+<hr />
+<p><em>How does search work in ESME?</em> {anchor:compass1}</p>
+<p>ESME uses <a href="http://www.compass-project.org/">Compass</a>
+to perform full-text searches.</p>
+<p><em>Selecting different usage patterns</em></p>
+<p>There are different ways to use compass in ESME. The selection of which
+approach to use depends on what your requirements are.</p>
+<p>To select the option that you wish to use, you must set this option in <a href="esme:server-configuration.html">your property file</a>
+. To set the option, please use the following syntax:</p>
+<div class="codehilite"><pre><span class="n">compass_config_file</span><span class="o">=</span><span class="sr">/props/com</span><span class="n">pass</span><span class="o">.</span><span class="n">filesystem</span><span class="o">.</span><span class="n">cfg</span><span class="o">.</span><span class="n">xml</span>
+</pre></div>
+
+
+<p>Currently, there are three examples of different compass based options in
+the <em>/server/src/main/resources/props/ folder.</em>
+<table>
+<tr><th> File name </th><th> Description </th></tr>
+<tr><td> compass.filesystem.cfg.xml </td><td> Using the file system to store index related
+data </td></tr>
+<tr><td> compass.jdbc.cfg.xml </td><td> Using the&nbsp;a database&nbsp;to store index
+related data - access via JDBC </td></tr>
+<tr><td> compass.jndi.cfg.xml </td><td> Using the&nbsp;a database&nbsp;to store index
+related data - access via JNDI </td></tr>
+</table></p>
+<hr />
+<p><em>How do you configure OpenID?</em> {anchor:openid1}</p>
+<p><em>Using a proxy with OpenID</em></p>
+<p>Often you may wish to install ESME behind the firewall. In most cases, you
+won't have an internal OpenId provider, which means that your users are
+going to use OpenIds from external providers. Usually, you will have to go
+through an internal proxy.</p>
+<p>If this is the case, then you must set the proxy server.&nbsp; To do this
+use <a href="esme:server-configuration.html">the property file</a>
+, This file must include the following lines:</p>
+<div class="codehilite"><pre><span class="n">http</span><span class="o">.</span><span class="n">proxyHost</span><span class="o">=</span><span class="p">[</span><span class="n">proxy</span> <span class="o">-</span> <span class="n">look</span> <span class="n">in</span> <span class="n">your</span> <span class="n">browser</span><span class="p">]</span>
+<span class="n">http</span><span class="o">.</span><span class="n">proxyPort</span><span class="o">=</span><span class="p">[</span><span class="n">proxy</span> <span class="n">port</span> <span class="o">-</span> <span class="n">look</span> <span class="n">in</span> <span class="n">your</span> <span class="n">browser</span><span class="p">]</span>
+</pre></div>
+
+
+<hr />
+<p><em>Does ESME support LDAP integration?</em> {anchor:ldap1}</p>
+<p>Currently, ESME doesn't support LDAP usage. We are looking at a new <a href="http://jgoday.wordpress.com/2009/11/27/lift-ldap/">LDAP component for lift</a>
+as the basis for our implementation.</p>
+<hr />
+<p><em>Does ESME work with JDK 1.5{</em>}<em>?</em> {anchor:JDK_1.5_1}</p>
+<p>Currently, there are some issues dealing with JDK 1.5. Many of these issues
+are related to restrictions associated with Scala itself.</p>
+<hr />
+<p><em>How do you start jetty with a different port when using maven?</em>
+{anchor:maven_1}</p>
+<h2 id="_mvn-jettyrun-djettyport8081_"><em>mvn jetty:run -Djetty.port=8081</em></h2>
+<p><em>How do you run ESME in production-mode?</em> {anchor:prod_1}</p>
+<p>Start the container with the following environment variable (from lift
+list) <em>-Drun.mode=production</em></p>
+<hr />
+<p><em>How do you run ESME with CURL?</em> {anchor:curl_1}</p>
+<p><em>Step-0: Generate Token:_Login to ESME via WebGui and used the Tokens menu
+at the top to create a new token</em>.</p>
+<p>_Step-1:Construct the curl command:_Here is my example-_curl -X POST -v -u [your user id](your-user-id.html)
+:[your token from step-0] -d status="my curl message on feb
+24"[http://localhost:8080/esme/twitter/statuses/update.xml|http://localhost:8080/esme/twitter/statuses/update.xml]</p>
+<p>My ESME has 'esme' context running in Jetty. I didn't make any config change and is the default deployment. My WebGUI login is,<a href="http://localhost:8080/esme/">http://localhost:8080/esme/</a></p>
+<p><em>Step-2: Execute curl command</em>:
+Make sure you have curl installed on your system. My system is Ubuntu. Cut
+n paste the curl command in the terminal and hit enter. (For convenience
+you can keep your WebGui running to check the message).
+After you hit enter, you should get 200 ok status from the server and a XML
+response. You can check the new message in the WebGUI and it updates REAL
+TIME! ( no&nbsp;refresh&nbsp;needed)</p>
+<p>Run multiple times curl to see the updates in WebGui. I used Firefox.</p>
+<p><a name="FAQ-Design-related"></a></p>
+<h2 id="design-related_1">Design-related</h2>
+<p><em>How does Twitter's new streaming API differ from ESME's design?</em>
+{anchor:twitter_api1}</p>
+<p>Twitter now has another take on a message-streaming API over HTTP, using
+what looks like a non-HTTP-1.1-compliant form of request pipelining
+(sending multiple responses over a single open connection). See the
+documentation at <a href="http://apiwiki.twitter.com/Streaming-API-Documentation">http://apiwiki.twitter.com/Streaming-API-Documentation</a></p>
+<p>The advantage of their mechanism is that it's a smoother experience.
+&nbsp;What we've done with chunking/long polling is to simulate a stream of
+data on top of a non-streaming protocol. &nbsp;What Twitter has done is to
+say "this is a one-way conversation, we've got an open TCP/IP connection,
+so let's use it."&nbsp; Implementing what they have would require going
+below the current set of abstractions that Lift provides above the
+Servlets.
+At a practical level, the difference is at one layer... the one dealing
+with the HTTP requests. &nbsp;At the layers above, events flow either way.</p>
+<p>At the basic philosophical level, Twitter's implementation is purer.
+&nbsp;It treats a stream of information as a stream of information.
+I like it, but I'm not sure what the benefits would be vs. the development
+costs of implementing such a mechanism (unless there's an en mass migration
+of microblogging clients to such a mechanism).</p>
+<p>A significant disadvantage of Twitter's design is the requirement of only
+one streaming connection per account. As much as I dislike the approach of
+using session cookies to uniquely identify API message
+queues, it is a heck of a lot better than what is going to happen when
+Twitter clients start to implement this API, which will be:
+1. I log in with Seesmic Web (which has implemented the Twitter streaming
+API)
+2. I receive messages 1, 2, and 3.
+3. I log in on a different computer with Twhirl (which has also
+implemented the Twitter streaming API)
+(3.1 Twitter disconnects the Seesmic connection invisibly from the user)
+4. I receive message 4 in Twhirl
+(4.1 Seesmic tries to reconnect, which results in Twhirl being
+disconnected)
+5. I receive message 5 in Seesmic
+6. And so on....
+End result: 1 really confused user trying to connect from two banned IP
+addresses.
+I think this is a good illustration of why we need some client-specific
+identifier for a streaming/delta-queue API. It doesn't need to be a
+session, but that's working pretty nicely for now.
+I would prefer to stick with what Lift provides for the moment. I need to
+do the conceptual exercise, but on first glance I don't think Twitter's
+approach results in much of a gain over our approach. Fewer
+connection attempts, which will help a lot at Twitter-scale, but which I'm
+not sure makes a big difference at Enterprise-scale.
+Another drawback (and I'm really not sure on this one) is that I don't
+think a lot of HTTP client libraries give easy access to a request that is
+still open. The design of&nbsp; the queue API is extremely simple from a
+client programming perspective. I think that's a big upside.</p>
+<p><a name="FAQ-"></a></p>
+<h2 id="" />
+<hr />
+<p><em>Question: In an enterprise context it could be an requirement to send a
+link to someone else pointing to a specific potentially old message in a
+certain Pool.</em> {anchor:design1}</p>
+<p>Yes. &nbsp;That's perfectly reasonable. &nbsp;That message is like a static
+file on disk. &nbsp;Once it's written, it remains unchanged until it's
+deleted. &nbsp;This is an ideal application of a REST-style approach.
+&nbsp;That's why I've advocated
+for a "message based" approach first, but a REST/static approach when the
+message based approach doesn't make sense. &nbsp;What I am opposed to is a
+"try to make everything fit the REST model" approach to API design.</p>
+<hr />
+<p><em>Question: Would it be costly in your model to get the message nr. X
+&nbsp;(+ n &nbsp;older messages) in a users timeline?</em> {anchor:design2}
+A message will exist outside of a timeline. &nbsp;There exists a cache of
+recently accessed messages. &nbsp;Sometimes there will be a historic
+message that is referenced and that will be materialized from backing store
+and rendered.&nbsp; It will likely fall out of cache if it's historical and
+not accessed again.</p>
+<hr />
+<p><em>Question: I don't get why it has to be in the session's state because you
+could as well use the information that a user is online as a guidance, even
+if the state would be stored somewhere out of the session. Wouldn't make a
+difference I guess and storing it in the session looks natural.</em>
+{anchor:design3}</p>
+<p>The state itself is not in the session. &nbsp;The session is the guide that
+the user is online. &nbsp;The session contains a listener that is attached
+to the User. &nbsp;The only real state that resides in the session is the
+state
+necessary to batch up any messages that the User has forwarded to the
+listener in between the HTTP polling requests. &nbsp;If there is an HTML
+front end, state about that front end will reside in the session as well,
+but
+that's a different issue.</p>
+<hr />
+<p><em>Question: I don't understand why we would need to store all entries in a
+cache, instead of only keeping the last n entries for each user based on
+some heuristics such as the last 3 days or something. I would somehow
+expect that the probability that a user wants to see a message is
+exponentially decreasing with the messages age. For example that someone
+wants to see a message that is the 1000 newest message in his timeline is
+probably almost zero.</em> {anchor:design4}
+Some people mine their timelines for information. &nbsp;I agree that some
+aging policy is necessary as 36B entries will consume a lot of storage in
+RAM or on disk, but the last 1,000 is likely too few based on what I have
+seen of actual user behavior.
+In terms of an aging policy in an RDBMS, the cost of aging out old entries
+is likely to be an index scan or something on that order (DELETE FROM
+mailbox WHERE date &lt; xxx or a user-by-user DELETE WHERE id IN (SELECT
+messages &gt; 1000 in mailbox))</p>
+<p><a name="FAQ-Actions"></a></p>
+<h2 id="actions_1">Actions</h2>
+<p><em>How do I add a content type to a HTTP Post action?</em>
+{anchor:action_content_type1}</p>
+<div class="codehilite"><pre>http://localhost:1234
+header:Content-Type=text%2fxml
+<span class="nt">&lt;text&gt;</span>%s<span class="nt">&lt;/text&gt;</span>
+</pre></div>
+
+
+<p><a name="FAQ-PlatformSpecific"></a></p>
+<h2 id="platform_specific_1">Platform Specific</h2>
+<p><a name="FAQ-Apple"></a></p>
+<h3 id="apple_1">Apple</h3>
+<p><em>Are there are tips for building on Apples?</em> {anchor:apple1}</p>
+<h2 id="usually-jdk-6-is-the-best-choice-jdk-5-currently-doesnt-work">Usually, JDK 6 is the best choice. JDK 5 currently doesn't work</h2>
+<p>{column}{column:width=30%}{<em>}Table of Contents</em>
+{toc:mminLevel=3}{column}{section}</p>
+  </div>
+
+  <div id="footer">
+    <div class="copyright">
+      <p>
+        Copyright &copy; 2010 The Apache Software Foundation, Licensed under
+        the <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a>.
+        <br />
+        Apache, ESME and the Apache feather and ESME logos are trademarks of The Apache Software Foundation.
+      </p>
+    </div>
+  </div>
+
+</body>
+</html>

Added: websites/staging/esme/trunk/content/getting-started.cwiki
==============================================================================
--- websites/staging/esme/trunk/content/getting-started.cwiki (added)
+++ websites/staging/esme/trunk/content/getting-started.cwiki Mon Jun 27 13:55:28 2011
@@ -0,0 +1,35 @@
+h3. Quick start with ESME
+
+# Check out, [*what can ESME do*|Benefits] for you or your organization.
+# *Get you an OpenID* (either from an [Use existing OpenID provider|existing OpenID provider] or [your own OpenID provider setup|from your own OpenID provider]).
+# Go to an [*existing ESME installation*|Existing public ESME installations] or [create your *own ESME installation*|http://cwiki.apache.org/confluence/display/ESME/ESME+Installation+Guides].
+# *Log on* there using your OpenID identifier.
+# *Happy social messaging!*
+
+h3. Expand your ESME experience
+
+* Check out the different [client applications|Apps] available and tested for ESME. 
+* Don't miss the features for [actions|Actions] and [tracking|Tracking].
+* Check out the different means to [integrate and interface with ESME|Integration and interfaces].
+
+h3. What lies ahead
+
+* [*What makes ESME different*|Differentiation] from other social messaging applications?
+* [Where can I *post bugs and feature requests*|http://incubator.apache.org/esme/community/bugs.html#Apache+ESME+-+Change+Requests+and+Bug+Tracking]? 
+* [What is your *development roadmap*|Development roadmap]?
+* [How can I *contribute to ESME*|Contribute]?
+
+
+h3. You are a developer
+
+* You can [check out the ESME source|Downloading Source]
+* You can contribute patches to the ESME Core
+* You can develop your own clients using ESME's own [REST API |http://cwiki.apache.org/confluence/display/ESME/RESTAPI]or our [Twitter API|http://cwiki.apache.org/confluence/display/ESME/TwitterAPI]; Here are the instructions to create your client.
+* You can collaborate on the [ESME mailing lists|ESME Mailing lists]
+
+h3. You are a potential user
+
+* You can check out [existing ESME installations|Existing public ESME installations]
+* You can [install ESME in your own environment|http://cwiki.apache.org/confluence/display/ESME/ESME+Installation+Guides];
+* You are looking for [support materials|ESME:Enterprise Microblogging Support Materials] to justify the use enterprise microblogging.
+* Here is a [presentation|http://code.google.com/p/opentalkware/]&nbsp;about ESME

Added: websites/staging/esme/trunk/content/getting-started.html
==============================================================================
--- websites/staging/esme/trunk/content/getting-started.html (added)
+++ websites/staging/esme/trunk/content/getting-started.html Mon Jun 27 13:55:28 2011
@@ -0,0 +1,129 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<html>
+<head>
+<!--
+
+    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.
+-->
+
+  <link href="/css/esme.css" rel="stylesheet" type="text/css">
+  <title>Apache ESME - Getting started</title>
+  <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+  <link rel="icon" type="image/png" href="/images/esme-logo/stanbol-favicon.png"/>
+</head>
+
+<body>
+  <div id="navigation">
+  <img alt="Apache ESME" width="220" height="101" src="/images/esme-logo/esme-powerd.gif"/>
+  <h1 id="esme_links">ESME links</h1>
+<ul>
+<li><a href="/index.html">Home</a></li>
+<li><a href="/team.html">Project Team</a></li>
+<li><a href="/docs/buildfromSVN.html">Building ESME</a></li>
+<li><a href="/docs/faq.html">FAQ</a></li>
+<li><a href="/docs/actions.html">Actions</a></li>
+<li><a href="/docs/apis.html">APIs</a></li>
+<li><a href="/docs/clients.html">Clients</a></li>
+<li><a href="/docs/collaboration.html">Collaboration</a></li>
+<li><a href="/docs/install.html">Installation Guides</a></li>
+<li><a href="/docs/yql.html">YQL</a><br />
+</li>
+</ul>
+<h1 id="asf_links">ASF links</h1>
+<ul>
+<li><a href="http://www.apache.org">Apache Software Foundation</a></li>
+<li><a href="http://www.apache.org/licenses/LICENSE-2.0">License</a></li>
+<li><a href="http://www.apache.org/foundation/thanks.html">Thanks</a></li>
+<li><a href="http://www.apache.org/foundation/sponsorship.html">Become a Sponsor</a></li>
+<li><a href="http://www.apache.org/security/">Security</a></li>
+</ul>
+  </div>
+
+  <div id="content">
+    <h1 class="title">Getting started</h1>
+    <p><a name="Gettingstarted-QuickstartwithESME"></a></p>
+<h3 id="quick_start_with_esme">Quick start with ESME</h3>
+<ol>
+<li>Check out, <a href="benefits.html"><em>what can ESME do</em></a>
+ for you or your organization.</li>
+<li><em>Get you an OpenID</em> (either from an <a href="existing-openid-provider.html">Use existing OpenID provider</a>
+ or [your own OpenID provider setup|from your own OpenID provider]
+).</li>
+<li>Go to an <a href="existing-public-esme-installations.html"><em>existing ESME installation</em></a>
+ or [create your <em>own ESME installation</em>|http://cwiki.apache.org/confluence/display/ESME/ESME+Installation+Guides]
+.</li>
+<li><em>Log on</em> there using your OpenID identifier.</li>
+<li><em>Happy social messaging!</em></li>
+</ol>
+<p><a name="Gettingstarted-ExpandyourESMEexperience"></a></p>
+<h3 id="expand_your_esme_experience">Expand your ESME experience</h3>
+<ul>
+<li>Check out the different <a href="apps.html">client applications</a>
+ available and tested for ESME. </li>
+<li>Don't miss the features for <a href="actions.html">actions</a>
+ and [tracking|Tracking]
+.</li>
+<li>Check out the different means to <a href="integration-and-interfaces.html">integrate and interface with ESME</a>
+.</li>
+</ul>
+<p><a name="Gettingstarted-Whatliesahead"></a></p>
+<h3 id="what_lies_ahead">What lies ahead</h3>
+<ul>
+<li><a href="differentiation.html"><em>What makes ESME different</em></a>
+ from other social messaging applications?</li>
+<li><a href="http://incubator.apache.org/esme/community/bugs.html#Apache+ESME+-+Change+Requests+and+Bug+Tracking">Where can I <em>post bugs and feature requests</em></a>
+? </li>
+<li><a href="development-roadmap.html">What is your <em>development roadmap</em></a>
+?</li>
+<li><a href="contribute.html">How can I <em>contribute to ESME</em></a>
+?</li>
+</ul>
+<p><a name="Gettingstarted-Youareadeveloper"></a></p>
+<h3 id="you_are_a_developer">You are a developer</h3>
+<ul>
+<li>You can <a href="downloading-source.html">check out the ESME source</a></li>
+<li>You can contribute patches to the ESME Core</li>
+<li>You can develop your own clients using ESME's own <a href="http://cwiki.apache.org/confluence/display/ESME/RESTAPI">REST API </a>
+or our [Twitter API|http://cwiki.apache.org/confluence/display/ESME/TwitterAPI]
+; Here are the instructions to create your client.</li>
+<li>You can collaborate on the <a href="esme-mailing-lists.html">ESME mailing lists</a></li>
+</ul>
+<p><a name="Gettingstarted-Youareapotentialuser"></a></p>
+<h3 id="you_are_a_potential_user">You are a potential user</h3>
+<ul>
+<li>You can check out <a href="existing-public-esme-installations.html">existing ESME installations</a></li>
+<li>You can <a href="http://cwiki.apache.org/confluence/display/ESME/ESME+Installation+Guides">install ESME in your own environment</a>
+;</li>
+<li>You are looking for <a href="esme:enterprise-microblogging-support-materials.html">support materials</a>
+ to justify the use enterprise microblogging.</li>
+<li>Here is a <a href="http://code.google.com/p/opentalkware/">presentation</a>
+&nbsp;about ESME</li>
+</ul>
+  </div>
+
+  <div id="footer">
+    <div class="copyright">
+      <p>
+        Copyright &copy; 2010 The Apache Software Foundation, Licensed under
+        the <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a>.
+        <br />
+        Apache, ESME and the Apache feather and ESME logos are trademarks of The Apache Software Foundation.
+      </p>
+    </div>
+  </div>
+
+</body>
+</html>

Added: websites/staging/esme/trunk/content/history.cwiki
==============================================================================
    (empty)

Added: websites/staging/esme/trunk/content/history.html
==============================================================================
--- websites/staging/esme/trunk/content/history.html (added)
+++ websites/staging/esme/trunk/content/history.html Mon Jun 27 13:55:28 2011
@@ -0,0 +1,72 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<html>
+<head>
+<!--
+
+    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.
+-->
+
+  <link href="/css/esme.css" rel="stylesheet" type="text/css">
+  <title>Apache ESME - History</title>
+  <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+  <link rel="icon" type="image/png" href="/images/esme-logo/stanbol-favicon.png"/>
+</head>
+
+<body>
+  <div id="navigation">
+  <img alt="Apache ESME" width="220" height="101" src="/images/esme-logo/esme-powerd.gif"/>
+  <h1 id="esme_links">ESME links</h1>
+<ul>
+<li><a href="/index.html">Home</a></li>
+<li><a href="/team.html">Project Team</a></li>
+<li><a href="/docs/buildfromSVN.html">Building ESME</a></li>
+<li><a href="/docs/faq.html">FAQ</a></li>
+<li><a href="/docs/actions.html">Actions</a></li>
+<li><a href="/docs/apis.html">APIs</a></li>
+<li><a href="/docs/clients.html">Clients</a></li>
+<li><a href="/docs/collaboration.html">Collaboration</a></li>
+<li><a href="/docs/install.html">Installation Guides</a></li>
+<li><a href="/docs/yql.html">YQL</a><br />
+</li>
+</ul>
+<h1 id="asf_links">ASF links</h1>
+<ul>
+<li><a href="http://www.apache.org">Apache Software Foundation</a></li>
+<li><a href="http://www.apache.org/licenses/LICENSE-2.0">License</a></li>
+<li><a href="http://www.apache.org/foundation/thanks.html">Thanks</a></li>
+<li><a href="http://www.apache.org/foundation/sponsorship.html">Become a Sponsor</a></li>
+<li><a href="http://www.apache.org/security/">Security</a></li>
+</ul>
+  </div>
+
+  <div id="content">
+    <h1 class="title">History</h1>
+    
+  </div>
+
+  <div id="footer">
+    <div class="copyright">
+      <p>
+        Copyright &copy; 2010 The Apache Software Foundation, Licensed under
+        the <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a>.
+        <br />
+        Apache, ESME and the Apache feather and ESME logos are trademarks of The Apache Software Foundation.
+      </p>
+    </div>
+  </div>
+
+</body>
+</html>

Added: websites/staging/esme/trunk/content/human--vs.-machine-based-integration.cwiki
==============================================================================
--- websites/staging/esme/trunk/content/human--vs.-machine-based-integration.cwiki (added)
+++ websites/staging/esme/trunk/content/human--vs.-machine-based-integration.cwiki Mon Jun 27 13:55:28 2011
@@ -0,0 +1,6 @@
+One of the interesting exercises when considering integration patterns for Apache ESME is to distinguish between human and machine-based scenarios.
+
+
+
+!Slide1.jpg|border=1!
+

Added: websites/staging/esme/trunk/content/human--vs.-machine-based-integration.html
==============================================================================
--- websites/staging/esme/trunk/content/human--vs.-machine-based-integration.html (added)
+++ websites/staging/esme/trunk/content/human--vs.-machine-based-integration.html Mon Jun 27 13:55:28 2011
@@ -0,0 +1,74 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<html>
+<head>
+<!--
+
+    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.
+-->
+
+  <link href="/css/esme.css" rel="stylesheet" type="text/css">
+  <title>Apache ESME - Human- vs. Machine-based Integration</title>
+  <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+  <link rel="icon" type="image/png" href="/images/esme-logo/stanbol-favicon.png"/>
+</head>
+
+<body>
+  <div id="navigation">
+  <img alt="Apache ESME" width="220" height="101" src="/images/esme-logo/esme-powerd.gif"/>
+  <h1 id="esme_links">ESME links</h1>
+<ul>
+<li><a href="/index.html">Home</a></li>
+<li><a href="/team.html">Project Team</a></li>
+<li><a href="/docs/buildfromSVN.html">Building ESME</a></li>
+<li><a href="/docs/faq.html">FAQ</a></li>
+<li><a href="/docs/actions.html">Actions</a></li>
+<li><a href="/docs/apis.html">APIs</a></li>
+<li><a href="/docs/clients.html">Clients</a></li>
+<li><a href="/docs/collaboration.html">Collaboration</a></li>
+<li><a href="/docs/install.html">Installation Guides</a></li>
+<li><a href="/docs/yql.html">YQL</a><br />
+</li>
+</ul>
+<h1 id="asf_links">ASF links</h1>
+<ul>
+<li><a href="http://www.apache.org">Apache Software Foundation</a></li>
+<li><a href="http://www.apache.org/licenses/LICENSE-2.0">License</a></li>
+<li><a href="http://www.apache.org/foundation/thanks.html">Thanks</a></li>
+<li><a href="http://www.apache.org/foundation/sponsorship.html">Become a Sponsor</a></li>
+<li><a href="http://www.apache.org/security/">Security</a></li>
+</ul>
+  </div>
+
+  <div id="content">
+    <h1 class="title">Human- vs. Machine-based Integration</h1>
+    <p>One of the interesting exercises when considering integration patterns for
+Apache ESME is to distinguish between human and machine-based scenarios.</p>
+<p>!Slide1.jpg|border=1!</p>
+  </div>
+
+  <div id="footer">
+    <div class="copyright">
+      <p>
+        Copyright &copy; 2010 The Apache Software Foundation, Licensed under
+        the <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a>.
+        <br />
+        Apache, ESME and the Apache feather and ESME logos are trademarks of The Apache Software Foundation.
+      </p>
+    </div>
+  </div>
+
+</body>
+</html>

Added: websites/staging/esme/trunk/content/index.cwiki
==============================================================================
--- websites/staging/esme/trunk/content/index.cwiki (added)
+++ websites/staging/esme/trunk/content/index.cwiki Mon Jun 27 13:55:28 2011
@@ -0,0 +1,24 @@
+{section}
+{column:width=70%}
+Apache ESME (Enterprise Social Messaging Environment) is a secure and highly scalable microsharing and micromessaging platform that allows people to discover and meet one another and get controlled access to other sources of information, all in a business process context.&nbsp;&nbsp;&nbsp;
+You can hardly turn a web page these days without seeing a story that describes how people are using social networks, whether it is Twitter, Facebook or some other service to develop and build their personal communities. In business, we increasingly see blogs and wikis demonstrating utility in problem solving and communications but the real time nature of business process problem solving largely remains untouched by social networking tools. Existing services, while attractive do not scale well and have proven unreliable. This is unacceptable to business which must be 'Always On' and able to support people in their daily working lives. Such applications must therefore be scalable and reliable but also provide a lot more.
+When solving problems, how good might it be if a user was able to tap into the collective knowledge of her peers or surrounding groups of people with whom she might naturally network in the workplace setting? How much quicker and with greater precision might she be able to solve daily problems? What if there was a communications mechanism that takes the best of what services like Twitter offers and co-mingled that with readily recognizable business processes? That solution is Apache ESME.
+
+The [Apache ESME blog|http://blogs.apache.org/esme/]&nbsp;has more details about ESME as well as&nbsp;project news. &nbsp;
+
+
+
+{column}
+{column:width=30%}
+{panel:title=Important Links}
+* [Project Information|Project Information]
+* [FAQ]
+* [Actions]
+* [APIs|API]
+* [Clients|Apache ESME Clients]
+* [Collaboration with other organizations|ESME:Collaborations with other Organizations]
+* [Installation Guides|http://cwiki.apache.org/confluence/display/ESME/ESME+Installation+Guides]
+* [YQL|ESME:YQL]
+{panel}
+{column}
+{section}
\ No newline at end of file

Added: websites/staging/esme/trunk/content/initial-comments-by-bill-fernandez.cwiki
==============================================================================
--- websites/staging/esme/trunk/content/initial-comments-by-bill-fernandez.cwiki (added)
+++ websites/staging/esme/trunk/content/initial-comments-by-bill-fernandez.cwiki Mon Jun 27 13:55:28 2011
@@ -0,0 +1,8 @@
+[Bill Fernandez|http://billfernandez.com/] created a long analysis (over 72 pages\!) of ESME and its UI design.
+
+From [Wikipedia|http://en.wikipedia.org/wiki/Bill_Fernandez]:
+
+Bill Fernandez is a user interface architect who was Apple Computer’s first employee when they incorporated in 1977. He worked on both the Apple I and Apple II personal computers, and in the 1980s was a member of the Apple Macintosh development team.
+----
+*You can download the document here:*
+*[^ESME Comments, v1 r15.pdf]*
\ No newline at end of file

Added: websites/staging/esme/trunk/content/initial-comments-by-bill-fernandez.html
==============================================================================
--- websites/staging/esme/trunk/content/initial-comments-by-bill-fernandez.html (added)
+++ websites/staging/esme/trunk/content/initial-comments-by-bill-fernandez.html Mon Jun 27 13:55:28 2011
@@ -0,0 +1,83 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<html>
+<head>
+<!--
+
+    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.
+-->
+
+  <link href="/css/esme.css" rel="stylesheet" type="text/css">
+  <title>Apache ESME - Initial Comments by Bill Fernandez</title>
+  <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+  <link rel="icon" type="image/png" href="/images/esme-logo/stanbol-favicon.png"/>
+</head>
+
+<body>
+  <div id="navigation">
+  <img alt="Apache ESME" width="220" height="101" src="/images/esme-logo/esme-powerd.gif"/>
+  <h1 id="esme_links">ESME links</h1>
+<ul>
+<li><a href="/index.html">Home</a></li>
+<li><a href="/team.html">Project Team</a></li>
+<li><a href="/docs/buildfromSVN.html">Building ESME</a></li>
+<li><a href="/docs/faq.html">FAQ</a></li>
+<li><a href="/docs/actions.html">Actions</a></li>
+<li><a href="/docs/apis.html">APIs</a></li>
+<li><a href="/docs/clients.html">Clients</a></li>
+<li><a href="/docs/collaboration.html">Collaboration</a></li>
+<li><a href="/docs/install.html">Installation Guides</a></li>
+<li><a href="/docs/yql.html">YQL</a><br />
+</li>
+</ul>
+<h1 id="asf_links">ASF links</h1>
+<ul>
+<li><a href="http://www.apache.org">Apache Software Foundation</a></li>
+<li><a href="http://www.apache.org/licenses/LICENSE-2.0">License</a></li>
+<li><a href="http://www.apache.org/foundation/thanks.html">Thanks</a></li>
+<li><a href="http://www.apache.org/foundation/sponsorship.html">Become a Sponsor</a></li>
+<li><a href="http://www.apache.org/security/">Security</a></li>
+</ul>
+  </div>
+
+  <div id="content">
+    <h1 class="title">Initial Comments by Bill Fernandez</h1>
+    <p><a href="http://billfernandez.com/">Bill Fernandez</a>
+ created a long analysis (over 72 pages!) of ESME and its UI design.</p>
+<p>From <a href="http://en.wikipedia.org/wiki/Bill_Fernandez">Wikipedia</a>
+:</p>
+<p>Bill Fernandez is a user interface architect who was Apple Computer’s
+first employee when they incorporated in 1977. He worked on both the Apple
+I and Apple II personal computers, and in the 1980s was a member of the
+Apple Macintosh development team.</p>
+<hr />
+<p><em>You can download the document here:</em>
+<em><a href="^esme-comments,-v1-r15.pdf.html">^ESME Comments, v1 r15.pdf</a>
+</em></p>
+  </div>
+
+  <div id="footer">
+    <div class="copyright">
+      <p>
+        Copyright &copy; 2010 The Apache Software Foundation, Licensed under
+        the <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a>.
+        <br />
+        Apache, ESME and the Apache feather and ESME logos are trademarks of The Apache Software Foundation.
+      </p>
+    </div>
+  </div>
+
+</body>
+</html>

Added: websites/staging/esme/trunk/content/integration-and-interfaces.cwiki
==============================================================================
--- websites/staging/esme/trunk/content/integration-and-interfaces.cwiki (added)
+++ websites/staging/esme/trunk/content/integration-and-interfaces.cwiki Mon Jun 27 13:55:28 2011
@@ -0,0 +1,30 @@
+ESME can play a part in the IT of your organization, especially to connect processes with the people executing them. Most of the scenarios are based on available APIs in the ESME software.
+
+||Name of the API||Status||Comments||more details at...||
+|ESME REST-like API|Out-of-the-box available|The current API does not completely fulfill the requirements of RESTful APIs. Compliance with the REST standard is however on the tasklist of the team.|[Link to description|RESTAPI]|
+|Twitter-like API|Out-of-the-box available|Compliance with the Twitter-API serves to enable usage of Twitter clients with an ESME instance. {footnote} Current positioning is that ESME will have in future both a twitter-like and an own API.{footnote}|[Link to documentation|Twitter API], [Link to SVN|http://svn.apache.org/viewvc/incubator/esme/trunk/server/src/main/scala/org/apache/esme/api/TwitterAPI.scala?view=log]|
+
+Based on the APIs mentioned above, the following clients/programming libraries are available:{footnote}All entries are based on the REST-like API, if not stated otherwise.{footnote}
+
+||Programming language or environment||Status|||More details at...||
+|ABAP Client|Working source code available|[Generic Web-Dynpro ABAP Client source code|http://code.google.com/p/esmeproject/source/browse/trunk/esme-abap/ESME+ABAP+Client/], [ABAP Send message source code|http://code.google.com/p/esmeproject/source/browse/trunk/esme-abap/#esme-abap/ABAP%20Send%20Message%20REST%20API%20and%20Function%20module], [ABAP Object Watch|http://code.google.com/p/esmeproject/source/browse/trunk/esme-abap/#esme-abap/ABAP%20Object%20Watch]|
+|Adobe AIR client|Out-of-the-box available|[Installation guide|ESME Desktop AIR Client]
+|Apache ANT action|JAR file available|[Link to blog entry|'http://blog.esme.us/esme-client-for-ant/]|
+|Java Library|JAR file available|[Link to blog entry|http://blog.esme.us/improved-java-api-moved-to-apache/]|
+|JavaScript Client|Example script available|[Link to code.google.com|http://code.google.com/p/esmeproject/wiki/PureJavascript_messaging_client]  [Link to blog entry|http://blog.esme.us/pure-javascript-messaging-client/]|
+|PLSQL Client|Example script available|[Link to code.google.com|http://code.google.com/p/esmeproject/wiki/PL_SQL_Client_for_ESME]|
+|SAP NetWeaver Logger Client|Example script available|[Link to blog entry|http://blog.esme.us/the-netweaver-logger/]|
+|VBA Client|Example script available|[Link to blog entry|http://blog.esme.us/esme-and-shadow-it-the-vba-client/]|
+
+Find below a list of different integration options.
+
+||Integration/interface with...||Use case||Current maturity level||Comments||more Details at...||
+|email systems|Receiving emails|Additonal software needed|There is a plugin available for the [open source mail server James|http://james.apache.org/] to forward emails to ESME. Connecting with other mailservers involves development of a small piece of software, which call the ESME APIs. |[Link to docs.google.com|http://docs.google.com/Doc?id=df96bz6v_18cw9vrcwr]|
+|email systems|Sending emails|Out-of-the-box available|ESME sends emails based on user defined [actions]. ESME relies for sending eMails on the JavaMail API and its required settings.|[Sending emails from ESME]|
+|MS Sharepoint|Retrieving ESME conversations|Internal testcase|(needs to be documented)| |
+|Yahoo Pipes|Information retrieval from other microblogging tools|Working configuration document available|Link to blog entry|http://www.esjewett.com/blog/twitter-pipes-esme]|
+
+
+---
+
+{display-footnotes} 

Added: websites/staging/esme/trunk/content/integration-and-interfaces.html
==============================================================================
--- websites/staging/esme/trunk/content/integration-and-interfaces.html (added)
+++ websites/staging/esme/trunk/content/integration-and-interfaces.html Mon Jun 27 13:55:28 2011
@@ -0,0 +1,130 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<html>
+<head>
+<!--
+
+    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.
+-->
+
+  <link href="/css/esme.css" rel="stylesheet" type="text/css">
+  <title>Apache ESME - Integration and interfaces</title>
+  <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+  <link rel="icon" type="image/png" href="/images/esme-logo/stanbol-favicon.png"/>
+</head>
+
+<body>
+  <div id="navigation">
+  <img alt="Apache ESME" width="220" height="101" src="/images/esme-logo/esme-powerd.gif"/>
+  <h1 id="esme_links">ESME links</h1>
+<ul>
+<li><a href="/index.html">Home</a></li>
+<li><a href="/team.html">Project Team</a></li>
+<li><a href="/docs/buildfromSVN.html">Building ESME</a></li>
+<li><a href="/docs/faq.html">FAQ</a></li>
+<li><a href="/docs/actions.html">Actions</a></li>
+<li><a href="/docs/apis.html">APIs</a></li>
+<li><a href="/docs/clients.html">Clients</a></li>
+<li><a href="/docs/collaboration.html">Collaboration</a></li>
+<li><a href="/docs/install.html">Installation Guides</a></li>
+<li><a href="/docs/yql.html">YQL</a><br />
+</li>
+</ul>
+<h1 id="asf_links">ASF links</h1>
+<ul>
+<li><a href="http://www.apache.org">Apache Software Foundation</a></li>
+<li><a href="http://www.apache.org/licenses/LICENSE-2.0">License</a></li>
+<li><a href="http://www.apache.org/foundation/thanks.html">Thanks</a></li>
+<li><a href="http://www.apache.org/foundation/sponsorship.html">Become a Sponsor</a></li>
+<li><a href="http://www.apache.org/security/">Security</a></li>
+</ul>
+  </div>
+
+  <div id="content">
+    <h1 class="title">Integration and interfaces</h1>
+    <p>ESME can play a part in the IT of your organization, especially to connect
+processes with the people executing them. Most of the scenarios are based
+on available APIs in the ESME software.</p>
+<table>
+<tr><th>Name of the API</th><th>Status</th><th>Comments</th><th>more details at...</th></tr>
+<tr><td>ESME REST-like API</td><td>Out-of-the-box available</td><td>The current API does not completely fulfill the requirements of RESTful APIs. Compliance with the REST standard is however on the tasklist of the team.</td><td>[Link to description](restapi.html)
+</td></tr>
+<tr><td>Twitter-like API</td><td>Out-of-the-box available</td><td>Compliance with the Twitter-API serves to enable usage of Twitter clients with an ESME instance. {footnote} Current positioning is that ESME will have in future both a twitter-like and an own API.{footnote}</td><td>[Link to documentation](twitter-api.html)
+, [Link to SVN</td><td>http://svn.apache.org/viewvc/incubator/esme/trunk/server/src/main/scala/org/apache/esme/api/TwitterAPI.scala?view=log]
+</td></tr>
+</table>
+
+<p>Based on the APIs mentioned above, the following clients/programming
+libraries are available:{footnote}All entries are based on the REST-like
+API, if not stated otherwise.{footnote}</p>
+<table>
+<tr><th>Programming language or environment</th><th>Status</th><th></td><td>More details at...</th></tr>
+<tr><td>ABAP Client</td><td>Working source code available</td><td>[Generic Web-Dynpro ABAP Client source code](http://code.google.com/p/esmeproject/source/browse/trunk/esme-abap/ESME+ABAP+Client/)
+, [ABAP Send message source code</td><td>http://code.google.com/p/esmeproject/source/browse/trunk/esme-abap/#esme-abap/ABAP%20Send%20Message%20REST%20API%20and%20Function%20module]
+, [ABAP Object Watch</td><td>http://code.google.com/p/esmeproject/source/browse/trunk/esme-abap/#esme-abap/ABAP%20Object%20Watch]
+</td></tr>
+<tr><td>Adobe AIR client</td><td>Out-of-the-box available</td><td>[Installation guide](esme-desktop-air-client.html)
+</tr>
+<tr><td>Apache ANT action</td><td>JAR file available</td><td>[Link to blog entry]('http://blog.esme.us/esme-client-for-ant/.html)
+</td></tr>
+<tr><td>Java Library</td><td>JAR file available</td><td>[Link to blog entry](http://blog.esme.us/improved-java-api-moved-to-apache/)
+</td></tr>
+<tr><td>JavaScript Client</td><td>Example script available</td><td>[Link to code.google.com](http://code.google.com/p/esmeproject/wiki/PureJavascript_messaging_client)
+ [Link to blog entry</td><td>http://blog.esme.us/pure-javascript-messaging-client/]
+</td></tr>
+<tr><td>PLSQL Client</td><td>Example script available</td><td>[Link to code.google.com](http://code.google.com/p/esmeproject/wiki/PL_SQL_Client_for_ESME)
+</td></tr>
+<tr><td>SAP NetWeaver Logger Client</td><td>Example script available</td><td>[Link to blog entry](http://blog.esme.us/the-netweaver-logger/)
+</td></tr>
+<tr><td>VBA Client</td><td>Example script available</td><td>[Link to blog entry](http://blog.esme.us/esme-and-shadow-it-the-vba-client/)
+</td></tr>
+</table>
+
+<p>Find below a list of different integration options.</p>
+<table>
+<tr><th>Integration/interface with...</th><th>Use case</th><th>Current maturity
+level</th><th>Comments</th><th>more Details at...</th></tr>
+<tr><td>email systems</td><td>Receiving emails</td><td>Additonal software needed</td><td>There is a plugin
+available for the [open source mail server James](http://james.apache.org/)
+ to forward emails to ESME. Connecting with other mailservers involves
+development of a small piece of software, which call the ESME APIs. </td><td>[Link
+to docs.google.com</td><td>http://docs.google.com/Doc?id=df96bz6v_18cw9vrcwr]</td></tr>
+<tr><td>email systems</td><td>Sending emails</td><td>Out-of-the-box available</td><td>ESME sends emails
+based on user defined [actions](actions.html)
+. ESME relies for sending eMails on the JavaMail API and its required
+settings.</td><td>[Sending emails from ESME]</td></tr>
+<tr><td>MS Sharepoint</td><td>Retrieving ESME conversations</td><td>Internal testcase</td><td>(needs to be
+documented)</td><td> </td></tr>
+<tr><td>Yahoo Pipes</td><td>Information retrieval from other microblogging tools</td><td>Working configuration document available</td><td>Link to blog entry</td><td>http://www.esjewett.com/blog/twitter-pipes-esme]
+</td></tr>
+</table>
+
+<hr />
+<p>{display-footnotes} </p>
+  </div>
+
+  <div id="footer">
+    <div class="copyright">
+      <p>
+        Copyright &copy; 2010 The Apache Software Foundation, Licensed under
+        the <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a>.
+        <br />
+        Apache, ESME and the Apache feather and ESME logos are trademarks of The Apache Software Foundation.
+      </p>
+    </div>
+  </div>
+
+</body>
+</html>

Added: websites/staging/esme/trunk/content/integration-with-thingamy.cwiki
==============================================================================
--- websites/staging/esme/trunk/content/integration-with-thingamy.cwiki (added)
+++ websites/staging/esme/trunk/content/integration-with-thingamy.cwiki Mon Jun 27 13:55:28 2011
@@ -0,0 +1,40 @@
+{section:border=true}
+{column:width=70%}
+
+h4. General Use Case
+
+The idea is to show how microblogging can act as a integration platform for process-related activitites
+# Data collection for info / context around unstructured (or barely repeatable) processes
+# Adds free-form discovery/discussion to the process without losing data relationships for reports and history
+
+
+Thingamy’s ‘Work Processor’ runs the workflow without glitch with  path choices at most corners -- punting a little ‘train’ of relevant and  inter-realted objects (Workflow/issue/request/idea object -- the main one  + Assignment objects) through a workflow. The Assignment objects holds  the task instructions and captures what’s done in the assignment while  the Workflow objects holds the details about the issue/idea/request.  That way an Assignee is presented with a list of relevant objects, all  the pertinent information required for a specific task + the Assignment  object to fill in with result and files.
+When having been assigned a task, or when trying to get one’s head  around the progress of a workflow there is always a need for ad-hoc  communication with co-workers and/or other participants, “anybody
+know…?”, “Could somebody help with…?” etc. Normally that would happen by  email, phone or walking over -- all of which limits the discovery of the  unknown, like a co-worker having unknown but useful knowledge or ideas.
+
+Apache ESME adds that crucial part of ‘Discovery & Discussion’ that  inevitably happens during any process, in a task or when studying the  progress. In addition it should become the natural in-system conduit
+for communication as well as the social pivot point, the water cooler, for the group/department/firm.
+
+Most other E 2.0 efforts tries to add some notion of ‘process’ on top  of separate and siloed apps drifting towards becoming middleware 2.0 --  better is to have an underlying ‘process engine’ that gives the main
+flow framework and datamodel using social media for the in-task  ‘Discovery & Discussion’. Crucial is that the data in the two parts  are related -- in this case any ESME message can be related to any
+Thingamy object adding context to both sides.
+
+I don’t know what next step, as in features, will be -- our philosophy  is to keep it as simple as possible in the beginning and only add if it  makes huge sense and works in practice. So we’ll see, the good thing is  that both Apache ESME and Thingamy are extremely nimble and doing crazy stunts  underway should be easy\!
+
+h4. Demo video
+
+{widget:url=http://www.youtube.com/watch?v=lFWMcloN9jY}
+
+
+{column}
+{column:width=30%}
+
+
+h4. Task integration
+
+# Apache ESME as part of #thingamy workarea. When doing a task punt messages like "anybody knows this?" tagged automatically
+# When in a task, tag messages made there, later filter by same so messages are part of 'task data'
+
+
+{column}
+{section}
\ No newline at end of file

Added: websites/staging/esme/trunk/content/integration-with-thingamy.html
==============================================================================
--- websites/staging/esme/trunk/content/integration-with-thingamy.html (added)
+++ websites/staging/esme/trunk/content/integration-with-thingamy.html Mon Jun 27 13:55:28 2011
@@ -0,0 +1,129 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<html>
+<head>
+<!--
+
+    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.
+-->
+
+  <link href="/css/esme.css" rel="stylesheet" type="text/css">
+  <title>Apache ESME - Integration with Thingamy</title>
+  <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+  <link rel="icon" type="image/png" href="/images/esme-logo/stanbol-favicon.png"/>
+</head>
+
+<body>
+  <div id="navigation">
+  <img alt="Apache ESME" width="220" height="101" src="/images/esme-logo/esme-powerd.gif"/>
+  <h1 id="esme_links">ESME links</h1>
+<ul>
+<li><a href="/index.html">Home</a></li>
+<li><a href="/team.html">Project Team</a></li>
+<li><a href="/docs/buildfromSVN.html">Building ESME</a></li>
+<li><a href="/docs/faq.html">FAQ</a></li>
+<li><a href="/docs/actions.html">Actions</a></li>
+<li><a href="/docs/apis.html">APIs</a></li>
+<li><a href="/docs/clients.html">Clients</a></li>
+<li><a href="/docs/collaboration.html">Collaboration</a></li>
+<li><a href="/docs/install.html">Installation Guides</a></li>
+<li><a href="/docs/yql.html">YQL</a><br />
+</li>
+</ul>
+<h1 id="asf_links">ASF links</h1>
+<ul>
+<li><a href="http://www.apache.org">Apache Software Foundation</a></li>
+<li><a href="http://www.apache.org/licenses/LICENSE-2.0">License</a></li>
+<li><a href="http://www.apache.org/foundation/thanks.html">Thanks</a></li>
+<li><a href="http://www.apache.org/foundation/sponsorship.html">Become a Sponsor</a></li>
+<li><a href="http://www.apache.org/security/">Security</a></li>
+</ul>
+  </div>
+
+  <div id="content">
+    <h1 class="title">Integration with Thingamy</h1>
+    <p>{section:border=true}
+{column:width=70%}</p>
+<p><a name="IntegrationwithThingamy-GeneralUseCase"></a></p>
+<h4 id="general_use_case">General Use Case</h4>
+<p>The idea is to show how microblogging can act as a integration platform for
+process-related activitites
+1. Data collection for info / context around unstructured (or barely
+repeatable) processes
+1. Adds free-form discovery/discussion to the process without losing data
+relationships for reports and history</p>
+<p>Thingamy’s ‘Work Processor’ runs the workflow without glitch with 
+path choices at most corners -- punting a little ‘train’ of relevant
+and  inter-realted objects (Workflow/issue/request/idea object -- the main
+one  + Assignment objects) through a workflow. The Assignment objects holds
+ the task instructions and captures what’s done in the assignment while 
+the Workflow objects holds the details about the issue/idea/request.  That
+way an Assignee is presented with a list of relevant objects, all  the
+pertinent information required for a specific task + the Assignment  object
+to fill in with result and files.
+When having been assigned a task, or when trying to get one’s head 
+around the progress of a workflow there is always a need for ad-hoc 
+communication with co-workers and/or other participants, “anybody
+know…?”, “Could somebody help with…?” etc. Normally that would
+happen by  email, phone or walking over -- all of which limits the
+discovery of the  unknown, like a co-worker having unknown but useful
+knowledge or ideas.</p>
+<p>Apache ESME adds that crucial part of ‘Discovery &amp; Discussion’ that 
+inevitably happens during any process, in a task or when studying the 
+progress. In addition it should become the natural in-system conduit
+for communication as well as the social pivot point, the water cooler, for
+the group/department/firm.</p>
+<p>Most other E 2.0 efforts tries to add some notion of ‘process’ on top 
+of separate and siloed apps drifting towards becoming middleware 2.0 -- 
+better is to have an underlying ‘process engine’ that gives the main
+flow framework and datamodel using social media for the in-task 
+‘Discovery &amp; Discussion’. Crucial is that the data in the two parts 
+are related -- in this case any ESME message can be related to any
+Thingamy object adding context to both sides.</p>
+<p>I don’t know what next step, as in features, will be -- our philosophy 
+is to keep it as simple as possible in the beginning and only add if it 
+makes huge sense and works in practice. So we’ll see, the good thing is 
+that both Apache ESME and Thingamy are extremely nimble and doing crazy
+stunts  underway should be easy!</p>
+<p><a name="IntegrationwithThingamy-Demovideo"></a></p>
+<h4 id="demo_video">Demo video</h4>
+<p>{widget:url=http://www.youtube.com/watch?v=lFWMcloN9jY}</p>
+<p>{column}
+{column:width=30%}</p>
+<p><a name="IntegrationwithThingamy-Taskintegration"></a></p>
+<h4 id="task_integration">Task integration</h4>
+<ol>
+<li>Apache ESME as part of #thingamy workarea. When doing a task punt
+messages like "anybody knows this?" tagged automatically</li>
+<li>When in a task, tag messages made there, later filter by same so messages
+are part of 'task data'</li>
+</ol>
+<p>{column}
+{section}</p>
+  </div>
+
+  <div id="footer">
+    <div class="copyright">
+      <p>
+        Copyright &copy; 2010 The Apache Software Foundation, Licensed under
+        the <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a>.
+        <br />
+        Apache, ESME and the Apache feather and ESME logos are trademarks of The Apache Software Foundation.
+      </p>
+    </div>
+  </div>
+
+</body>
+</html>

Added: websites/staging/esme/trunk/content/java-servlet-container-installation-guide.cwiki
==============================================================================
--- websites/staging/esme/trunk/content/java-servlet-container-installation-guide.cwiki (added)
+++ websites/staging/esme/trunk/content/java-servlet-container-installation-guide.cwiki Mon Jun 27 13:55:28 2011
@@ -0,0 +1,25 @@
+_&nbsp;_
+_How to install and run ESME on a Java servlet container_
+
+h1. Introduction
+
+You will first need to build a WAR file, and then deploy it to your chosen Servlet container or J2EE application server.
+
+h1. Details
+
+Due to space constraints on Google Code, the main ESME war file is missing a couple of JAR files, namely the lift-webkit and scala-library files. The first thing you need to do is to unpack the ESME WAR file (jar \-xvf esme-yyyy-mm-dd.war), copy the lift and Scala library files to WEB-INF/lib and then create a new WAR file (jar \-cvf esme.war).
+
+If you are using a J2EE 1.5 server, then deploy the WAR file according to the vendor's instructions. For SAP NetWeaver? 7.1, this means using the Eclipse-based NetWeaver? Developer Studio in its Deployment perspective.
+
+For Tomcat, follow the instructions here: [http://tomcat.apache.org/tomcat-6.0-doc/deployer-howto.html]
+
+Once you have deployed the WAR file, you can access ESME by pointing your browser to http://\[server}:[port]/esme
+
+h1. Installing behind a corporate firewall
+
+Often you may wish to install ESME behind the firewall. In most cases, you won't have an internal OpenId? provider, which means that your users are going to use OpenIds? from external providers. Usually, you will have to go through an internal proxy.
+
+If this is the case, then you must set the proxy server. If you are using Tomcat, then the you must add a property file to the "webapps\esme\WEB-INF\classes\props" directory. This file must be named after the user under which the process is running. On Tomcat 6.0 under windows, then this file would be "SYSTEM.props". Capitalization counts. This file must include the following lines:
+
+http.proxyHost=[proxy - look in your browser]
+http.proxyPort=[proxy port - look in your browser]
\ No newline at end of file

Added: websites/staging/esme/trunk/content/java-servlet-container-installation-guide.html
==============================================================================
--- websites/staging/esme/trunk/content/java-servlet-container-installation-guide.html (added)
+++ websites/staging/esme/trunk/content/java-servlet-container-installation-guide.html Mon Jun 27 13:55:28 2011
@@ -0,0 +1,104 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<html>
+<head>
+<!--
+
+    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.
+-->
+
+  <link href="/css/esme.css" rel="stylesheet" type="text/css">
+  <title>Apache ESME - Java Servlet Container Installation Guide</title>
+  <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+  <link rel="icon" type="image/png" href="/images/esme-logo/stanbol-favicon.png"/>
+</head>
+
+<body>
+  <div id="navigation">
+  <img alt="Apache ESME" width="220" height="101" src="/images/esme-logo/esme-powerd.gif"/>
+  <h1 id="esme_links">ESME links</h1>
+<ul>
+<li><a href="/index.html">Home</a></li>
+<li><a href="/team.html">Project Team</a></li>
+<li><a href="/docs/buildfromSVN.html">Building ESME</a></li>
+<li><a href="/docs/faq.html">FAQ</a></li>
+<li><a href="/docs/actions.html">Actions</a></li>
+<li><a href="/docs/apis.html">APIs</a></li>
+<li><a href="/docs/clients.html">Clients</a></li>
+<li><a href="/docs/collaboration.html">Collaboration</a></li>
+<li><a href="/docs/install.html">Installation Guides</a></li>
+<li><a href="/docs/yql.html">YQL</a><br />
+</li>
+</ul>
+<h1 id="asf_links">ASF links</h1>
+<ul>
+<li><a href="http://www.apache.org">Apache Software Foundation</a></li>
+<li><a href="http://www.apache.org/licenses/LICENSE-2.0">License</a></li>
+<li><a href="http://www.apache.org/foundation/thanks.html">Thanks</a></li>
+<li><a href="http://www.apache.org/foundation/sponsorship.html">Become a Sponsor</a></li>
+<li><a href="http://www.apache.org/security/">Security</a></li>
+</ul>
+  </div>
+
+  <div id="content">
+    <h1 class="title">Java Servlet Container Installation Guide</h1>
+    <p><em>&nbsp;</em>
+<em>How to install and run ESME on a Java servlet container</em></p>
+<p><a name="JavaServletContainerInstallationGuide-Introduction"></a></p>
+<h1 id="introduction">Introduction</h1>
+<p>You will first need to build a WAR file, and then deploy it to your chosen
+Servlet container or J2EE application server.</p>
+<p><a name="JavaServletContainerInstallationGuide-Details"></a></p>
+<h1 id="details">Details</h1>
+<p>Due to space constraints on Google Code, the main ESME war file is missing
+a couple of JAR files, namely the lift-webkit and scala-library files. The
+first thing you need to do is to unpack the ESME WAR file (jar -xvf
+esme-yyyy-mm-dd.war), copy the lift and Scala library files to WEB-INF/lib
+and then create a new WAR file (jar -cvf esme.war).</p>
+<p>If you are using a J2EE 1.5 server, then deploy the WAR file according to
+the vendor's instructions. For SAP NetWeaver? 7.1, this means using the
+Eclipse-based NetWeaver? Developer Studio in its Deployment perspective.</p>
+<p>For Tomcat, follow the instructions here: <a href="http://tomcat.apache.org/tomcat-6.0-doc/deployer-howto.html">http://tomcat.apache.org/tomcat-6.0-doc/deployer-howto.html</a></p>
+<p>Once you have deployed the WAR file, you can access ESME by pointing your browser to http://[server}:<a href="server}:[port.html">port</a>
+/esme</p>
+<p><a name="JavaServletContainerInstallationGuide-Installingbehindacorporatefirewall"></a></p>
+<h1 id="installing_behind_a_corporate_firewall">Installing behind a corporate firewall</h1>
+<p>Often you may wish to install ESME behind the firewall. In most cases, you
+won't have an internal OpenId? provider, which means that your users are
+going to use OpenIds? from external providers. Usually, you will have to go
+through an internal proxy.</p>
+<p>If this is the case, then you must set the proxy server. If you are using
+Tomcat, then the you must add a property file to the
+"webappsesmeWEB-INFclassesprops" directory. This file must be named
+after the user under which the process is running. On Tomcat 6.0 under
+windows, then this file would be "SYSTEM.props". Capitalization counts.
+This file must include the following lines:</p>
+<p>http.proxyHost=<a href="proxy---look-in-your-browser.html">proxy - look in your browser</a>
+http.proxyPort=<a href="proxy-port---look-in-your-browser.html">proxy port - look in your browser</a></p>
+  </div>
+
+  <div id="footer">
+    <div class="copyright">
+      <p>
+        Copyright &copy; 2010 The Apache Software Foundation, Licensed under
+        the <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a>.
+        <br />
+        Apache, ESME and the Apache feather and ESME logos are trademarks of The Apache Software Foundation.
+      </p>
+    </div>
+  </div>
+
+</body>
+</html>

Added: websites/staging/esme/trunk/content/jmx-rest-api.cwiki
==============================================================================
--- websites/staging/esme/trunk/content/jmx-rest-api.cwiki (added)
+++ websites/staging/esme/trunk/content/jmx-rest-api.cwiki Mon Jun 27 13:55:28 2011
@@ -0,0 +1,106 @@
+h2. Currently, just a place holder.
+
+*The following text is copied directly from the mailing list.*
+
+I have finished a REST api for generic jmx MBeans. It allows for listing
+mbeans, getting mbeaninfo, reading and setting attributes and invoking
+operations with parameters that can be represented as Strings ( i.e. String,
+Long etc. serialized classes don't count).
+Before I send to code to Richard I would like some feedback to see if I am
+missing something or should do something different.
+Here is the api and sample returns. Bad requests or errors will return
+BadResponse.
+GET /jmx/mbeans - returns a list of mbean names
+GET /jmx/mbean/\[mbean name\]/info - returns MBeanInfo for specified mbean
+GET /jmx/mbean/\[mbean name\]/attributes - returns attribute name and string
+values
+POST /jmx/mbean/\[mbean name\]/invoke/\[operation name\]
+<Params>
+&nbsp;<Param>pone</Param>
+&nbsp;<Param signature="java.lang.Long">123</Param>
+</Params>
+POST /jmx/mbean/\[mbean name/set - sets a single attribute
+<Attribute name="attr" value="val" />
+POST /jmx/mbean/\[mbean name\]/set - sets multiple attributes
+<AttributeList>
+&nbsp;<Attribute name="att1" value="val1" />
+&nbsp;<Attrubute name="att2" value="val2" />
+</AttributeList>
+== SAMPLES ==
+GET /jmx/mbeans
+<esme_api operation="mbeans" success="true">
+<MBeans>
+<MBean name="java.lang:type=Memory"/>
+<MBean name="java.lang:type=GarbageCollector,name=Copy"/>
+<MBean name="java.lang:type=MemoryPool,name=Code Cache"/>
+<MBean name="java.lang:type=Runtime"/>
+<MBean name="java.lang:type=ClassLoading"/>
+<MBean name="java.lang:type=MemoryPool,name=Perm Gen \[shared-rw\]"/>
+<MBean name="java.lang:type=Threading"/>
+<MBean name="java.util.logging:type=Logging"/>
+<MBean name="java.lang:type=MemoryPool,name=Perm Gen \[shared-ro\]"/>
+<MBean name="java.lang:type=Compilation"/>
+<MBean name="java.lang:type=MemoryPool,name=Eden Space"/>
+<MBean name="org.apache.esme.stats:type=Stats"/>
+<MBean name="StatsAgent:name=htmlAdaptor,port=9092"/>
+<MBean name="com.sun.management:type=HotSpotDiagnostic"/>
+<MBean name="java.lang:type=GarbageCollector,name=MarkSweepCompact"/>
+<MBean name="java.lang:type=MemoryPool,name=Survivor Space"/>
+<MBean name="java.lang:type=MemoryPool,name=Tenured Gen"/>
+<MBean name="java.lang:type=MemoryPool,name=Perm Gen"/>
+<MBean name="java.lang:type=OperatingSystem"/>
+<MBean name="JMImplementation:type=MBeanServerDelegate"/>
+<MBean name="java.lang:type=MemoryManager,name=CodeCacheManager"/>
+</MBeans>
+</esme_api>
+GET /jmx/mbean/org.apache.esme.stats:type=Stats/attributes
+<esme_api operation="mbean" success="true">
+<MBeanAttributes name="org.apache.esme.stats:type=Stats">
+<MBeanAttribute value="1" name="counter_userCount"/>
+<MBeanAttribute value="1" name="counter_liftSessions"/>
+<MBeanAttribute value="1.0" name="gauge_users"/>
+<MBeanAttribute value="1.0" name="gauge_listener"/>
+</MBeanAttributes>
+</esme_api>
+GET /jmx/mbean/org.apache.esme.stats:type=Stats/info
+<esme_api operation="mbean" success="true">
+<MBeanInfo name="org.apache.esme.stats:type=Stats">
+<MBeanAttributes>
+<MBeanAttributeInfo isIs="false" type="java.lang.Long" description="counter"
+isReadable="true" name="counter_userCount" isWritable="false"/>
+<MBeanAttributeInfo isIs="false" type="java.lang.Long" description="counter"
+isReadable="true" name="counter_liftSessions" isWritable="false"/>
+<MBeanAttributeInfo isIs="false" type="java.lang.Long" description="gauge"
+isReadable="true" name="gauge_users" isWritable="false"/>
+<MBeanAttributeInfo isIs="false" type="java.lang.Long" description="gauge"
+isReadable="true" name="gauge_listener" isWritable="false"/>
+</MBeanAttributes>
+<MBeanOperations>
+<MBeanOperationInfo impact="ACTION" description="Remove all Counters,
+Timers, Gauges and restart gathering timestamp."
+returnType="java.lang.String" name="clear">
+<Signature>
+</Signature>
+</MBeanOperationInfo>
+</MBeanOperations>
+<MBeanNotifications/>
+</MBeanInfo>
+</esme_api>
+=================
+There is no security on the api. This obviously should not stay like this
+and should only be accessable with an administrator account.
+I tested it with the Stats MBean and the java.util.Logging MBean and it is
+working. I can access stats, reset them and change logging levels.
+It would be nice to be able to change runtime properties though JMX however
+most of the Lift and ESME code uses vals and immutable data structures that
+are set when the app is originally loaded. The lift Props object used by
+esme is totally immutable after it is constructed. It is worth thinking
+about switching to a property api like Configgy which uses mutable data
+structures for properties.
+We could change in real time things like resent & links period, refresh
+intervals, analyzer settings like long query time, db connection pool sizes
+etc.
+I didn't enable sending serialized objects through the REST api because it
+seems like more trouble than it's worth. Besides that sort of JMX
+functionality is only useful between servers and this api is really just for
+the cloud environment like stax which doesn't allow you to bind to ports.
\ No newline at end of file

Added: websites/staging/esme/trunk/content/jmx-rest-api.html
==============================================================================
--- websites/staging/esme/trunk/content/jmx-rest-api.html (added)
+++ websites/staging/esme/trunk/content/jmx-rest-api.html Mon Jun 27 13:55:28 2011
@@ -0,0 +1,186 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<html>
+<head>
+<!--
+
+    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.
+-->
+
+  <link href="/css/esme.css" rel="stylesheet" type="text/css">
+  <title>Apache ESME - JMX REST API</title>
+  <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+  <link rel="icon" type="image/png" href="/images/esme-logo/stanbol-favicon.png"/>
+</head>
+
+<body>
+  <div id="navigation">
+  <img alt="Apache ESME" width="220" height="101" src="/images/esme-logo/esme-powerd.gif"/>
+  <h1 id="esme_links">ESME links</h1>
+<ul>
+<li><a href="/index.html">Home</a></li>
+<li><a href="/team.html">Project Team</a></li>
+<li><a href="/docs/buildfromSVN.html">Building ESME</a></li>
+<li><a href="/docs/faq.html">FAQ</a></li>
+<li><a href="/docs/actions.html">Actions</a></li>
+<li><a href="/docs/apis.html">APIs</a></li>
+<li><a href="/docs/clients.html">Clients</a></li>
+<li><a href="/docs/collaboration.html">Collaboration</a></li>
+<li><a href="/docs/install.html">Installation Guides</a></li>
+<li><a href="/docs/yql.html">YQL</a><br />
+</li>
+</ul>
+<h1 id="asf_links">ASF links</h1>
+<ul>
+<li><a href="http://www.apache.org">Apache Software Foundation</a></li>
+<li><a href="http://www.apache.org/licenses/LICENSE-2.0">License</a></li>
+<li><a href="http://www.apache.org/foundation/thanks.html">Thanks</a></li>
+<li><a href="http://www.apache.org/foundation/sponsorship.html">Become a Sponsor</a></li>
+<li><a href="http://www.apache.org/security/">Security</a></li>
+</ul>
+  </div>
+
+  <div id="content">
+    <h1 class="title">JMX REST API</h1>
+    <p><a name="JMXRESTAPI-Currently,justaplaceholder."></a></p>
+<h2 id="currently_just_a_place_holder">Currently, just a place holder.</h2>
+<p><em>The following text is copied directly from the mailing list.</em></p>
+<p>I have finished a REST api for generic jmx MBeans. It allows for listing
+mbeans, getting mbeaninfo, reading and setting attributes and invoking
+operations with parameters that can be represented as Strings ( i.e.
+String,
+Long etc. serialized classes don't count).
+Before I send to code to Richard I would like some feedback to see if I am
+missing something or should do something different.
+Here is the api and sample returns. Bad requests or errors will return
+BadResponse.
+GET /jmx/mbeans - returns a list of mbean names
+GET /jmx/mbean/[mbean name](mbean-name.html)
+/info - returns MBeanInfo for specified mbean
+GET /jmx/mbean/[mbean name](mbean-name.html)
+/attributes - returns attribute name and string
+values
+POST /jmx/mbean/[mbean name](mbean-name.html)
+/invoke/[operation name]
+<Params>
+&nbsp;<Param>pone</Param>
+&nbsp;<Param signature="java.lang.Long">123</Param>
+</Params>
+POST /jmx/mbean/[mbean name/set - sets a single attribute
+<Attribute name="attr" value="val" />
+POST /jmx/mbean/[mbean name](mbean-name.html)
+/set - sets multiple attributes
+<AttributeList>
+&nbsp;<Attribute name="att1" value="val1" />
+&nbsp;<Attrubute name="att2" value="val2" />
+</AttributeList>
+== SAMPLES ==
+GET /jmx/mbeans
+<esme_api operation="mbeans" success="true">
+<MBeans>
+<MBean name="java.lang:type=Memory"/>
+<MBean name="java.lang:type=GarbageCollector,name=Copy"/>
+<MBean name="java.lang:type=MemoryPool,name=Code Cache"/>
+<MBean name="java.lang:type=Runtime"/>
+<MBean name="java.lang:type=ClassLoading"/>
+<MBean name="java.lang:type=MemoryPool,name=Perm Gen klzzwxh:0018shared-rwklzzwxh:0019(shared-rwklzzwxh:0020html)
+"/>
+<MBean name="java.lang:type=Threading"/>
+<MBean name="java.util.logging:type=Logging"/>
+<MBean name="java.lang:type=MemoryPool,name=Perm Gen klzzwxh:0021shared-roklzzwxh:0022(shared-roklzzwxh:0023html)
+"/>
+<MBean name="java.lang:type=Compilation"/>
+<MBean name="java.lang:type=MemoryPool,name=Eden Space"/>
+<MBean name="org.apache.esme.stats:type=Stats"/>
+<MBean name="StatsAgent:name=htmlAdaptor,port=9092"/>
+<MBean name="com.sun.management:type=HotSpotDiagnostic"/>
+<MBean name="java.lang:type=GarbageCollector,name=MarkSweepCompact"/>
+<MBean name="java.lang:type=MemoryPool,name=Survivor Space"/>
+<MBean name="java.lang:type=MemoryPool,name=Tenured Gen"/>
+<MBean name="java.lang:type=MemoryPool,name=Perm Gen"/>
+<MBean name="java.lang:type=OperatingSystem"/>
+<MBean name="JMImplementation:type=MBeanServerDelegate"/>
+<MBean name="java.lang:type=MemoryManager,name=CodeCacheManager"/>
+</MBeans>
+</esme_api>
+GET /jmx/mbean/org.apache.esme.stats:type=Stats/attributes
+<esme_api operation="mbean" success="true">
+<MBeanAttributes name="org.apache.esme.stats:type=Stats">
+<MBeanAttribute value="1" name="counter_userCount"/>
+<MBeanAttribute value="1" name="counter_liftSessions"/>
+<MBeanAttribute value="1.0" name="gauge_users"/>
+<MBeanAttribute value="1.0" name="gauge_listener"/>
+</MBeanAttributes>
+</esme_api>
+GET /jmx/mbean/org.apache.esme.stats:type=Stats/info
+<esme_api operation="mbean" success="true">
+<MBeanInfo name="org.apache.esme.stats:type=Stats">
+<MBeanAttributes>
+<MBeanAttributeInfo isIs="false" type="java.lang.Long"
+description="counter"
+isReadable="true" name="counter_userCount" isWritable="false"/>
+<MBeanAttributeInfo isIs="false" type="java.lang.Long"
+description="counter"
+isReadable="true" name="counter_liftSessions" isWritable="false"/>
+<MBeanAttributeInfo isIs="false" type="java.lang.Long" description="gauge"
+isReadable="true" name="gauge_users" isWritable="false"/>
+<MBeanAttributeInfo isIs="false" type="java.lang.Long" description="gauge"
+isReadable="true" name="gauge_listener" isWritable="false"/>
+</MBeanAttributes>
+<MBeanOperations>
+<MBeanOperationInfo impact="ACTION" description="Remove all Counters,
+Timers, Gauges and restart gathering timestamp."
+returnType="java.lang.String" name="clear">
+<Signature>
+</Signature>
+</MBeanOperationInfo>
+</MBeanOperations>
+<MBeanNotifications/>
+</MBeanInfo>
+</esme_api>
+=================
+There is no security on the api. This obviously should not stay like this
+and should only be accessable with an administrator account.
+I tested it with the Stats MBean and the java.util.Logging MBean and it is
+working. I can access stats, reset them and change logging levels.
+It would be nice to be able to change runtime properties though JMX however
+most of the Lift and ESME code uses vals and immutable data structures that
+are set when the app is originally loaded. The lift Props object used by
+esme is totally immutable after it is constructed. It is worth thinking
+about switching to a property api like Configgy which uses mutable data
+structures for properties.
+We could change in real time things like resent &amp; links period, refresh
+intervals, analyzer settings like long query time, db connection pool sizes
+etc.
+I didn't enable sending serialized objects through the REST api because it
+seems like more trouble than it's worth. Besides that sort of JMX
+functionality is only useful between servers and this api is really just
+for
+the cloud environment like stax which doesn't allow you to bind to ports.</p>
+  </div>
+
+  <div id="footer">
+    <div class="copyright">
+      <p>
+        Copyright &copy; 2010 The Apache Software Foundation, Licensed under
+        the <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a>.
+        <br />
+        Apache, ESME and the Apache feather and ESME logos are trademarks of The Apache Software Foundation.
+      </p>
+    </div>
+  </div>
+
+</body>
+</html>

Added: websites/staging/esme/trunk/content/jmx.cwiki
==============================================================================
--- websites/staging/esme/trunk/content/jmx.cwiki (added)
+++ websites/staging/esme/trunk/content/jmx.cwiki Mon Jun 27 13:55:28 2011
@@ -0,0 +1,43 @@
+h2. ESME supports JMX
+
+# To enable JMX, you must activate it in your default.props file: _jmx.enable=true_ \- default is false.
+# Connect to ESME with your normal JMX-enabled tool. For example, [JConsole|http://java.sun.com/j2se/1.5.0/docs/guide/management/jconsole.html]
+
+The following picture shows JConsole monitoring ESME running in a Tomcat (6) instance.
+
+!JMX Console.jpg!\\
+
+h2. Existing Counters
+
+
+* &nbsp;liftSessions - ( actually grabbed from SessionWatcher )
+* userCount ( User actors started since start/reset )
+* messagesCreated
+* userMessagesCreated
+* schedulerMessagesCreated&nbsp;
+* messagesPulled ( messages pulled from MessagePullActor )
+* messagesDelivered
+* messagesDeliveredTrackReason
+* messagesDeliveredDirectReason
+* messagesDeliveredConversationReason&nbsp;
+* messagesDeliveredResendReason
+* messagesMailed
+* messagesSentViaHttp
+* messagesFiltered
+
+h2. &nbsp;Planned Counters
+
+* messagesDeliveredRegularReason
+* messagesDeliveredInterpreterReason
+* usersLoggedIn ( incremented and decremented through User.logUserIn and User logUserOut)
+* interpreterMessagesCreated
+* groupCount
+
+h2. Existing Gauges
+
+Gauges are partial functions that run to grab a point in time statistic when the stat is requested
+
+* users
+* groups
+* listeners
+\\
\ No newline at end of file