You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@tomee.apache.org by bu...@apache.org on 2012/03/09 19:30:41 UTC
svn commit: r808013 - in /websites/staging/openejb/trunk: cgi-bin/ content/
content/examples-trunk/polling-parent/README.html
Author: buildbot
Date: Fri Mar 9 18:30:40 2012
New Revision: 808013
Log:
Staging update by buildbot for openejb
Added:
websites/staging/openejb/trunk/content/examples-trunk/polling-parent/README.html
Modified:
websites/staging/openejb/trunk/cgi-bin/ (props changed)
websites/staging/openejb/trunk/content/ (props changed)
Propchange: websites/staging/openejb/trunk/cgi-bin/
------------------------------------------------------------------------------
--- cms:source-revision (original)
+++ cms:source-revision Fri Mar 9 18:30:40 2012
@@ -1 +1 @@
-1298962
+1298964
Propchange: websites/staging/openejb/trunk/content/
------------------------------------------------------------------------------
--- cms:source-revision (original)
+++ cms:source-revision Fri Mar 9 18:30:40 2012
@@ -1 +1 @@
-1298962
+1298964
Added: websites/staging/openejb/trunk/content/examples-trunk/polling-parent/README.html
==============================================================================
--- websites/staging/openejb/trunk/content/examples-trunk/polling-parent/README.html (added)
+++ websites/staging/openejb/trunk/content/examples-trunk/polling-parent/README.html Fri Mar 9 18:30:40 2012
@@ -0,0 +1,256 @@
+<!DOCTYPE html>
+<html lang="en">
+ <head>
+
+ <meta charset="utf-8">
+ <title></title>
+ <meta name="description" content="">
+ <meta name="author" content="">
+
+ <!-- Le HTML5 shim, for IE6-8 support of HTML elements -->
+ <!--[if lt IE 9]>
+ <script src="http://html5shim.googlecode.com/svn/trunk/html5.js"></script>
+ <![endif]-->
+
+ <!-- Le styles -->
+ <link href="./../../bootstrap.css" rel="stylesheet">
+ <link href="./../../prettify.css" rel="stylesheet">
+ <link href="./../../bootstrap-mods.css" rel="stylesheet">
+
+ <style type="text/css">
+ body {
+ padding-top: 60px;
+ }
+ .sprite {
+ display: inline-block;
+ height: 20px;
+ margin: 0 auto 4px;
+ outline: medium none;
+ text-indent: -999em;
+ width: 24px;
+ background-image: url('./../../images/sprites.png');
+ background-repeat: no-repeat;
+ overflow: hidden;
+ cursor: pointer;
+ }
+ .fb-share {
+ background-position: 0px -40px;
+ }
+ .gp-share {
+ background-position: 0px 0px;
+ }
+ .tw-share {
+ background-position: 0px -80px;
+ }
+ </style>
+ <script type="text/javascript">
+ function fbshare () {
+ window.open(
+ "http://www.facebook.com/sharer/sharer.php?u="+document.URL,
+ 'Share on Facebook',
+ 'width=640,height=426');
+ };
+ function gpshare () {
+ window.open(
+ "https://plus.google.com/share?url="+document.URL,
+ 'Share on Google+',
+ 'width=584,height=385');
+ };
+ function twshare () {
+ window.open(
+ "https://twitter.com/intent/tweet?url="+document.URL+"&text=",
+ 'Share on Twitter',
+ 'width=800,height=526');
+ };
+ </script>
+
+
+ <!-- Le fav and touch icons -->
+ <link rel="shortcut icon" href="./../../images/favicon.ico">
+ <link rel="apple-touch-icon" href="./../../images/apple-touch-icon.png">
+ <link rel="apple-touch-icon" sizes="72x72" href="./../../images/apple-touch-icon-72x72.png">
+ <link rel="apple-touch-icon" sizes="114x114" href="./../../images/apple-touch-icon-114x114.png">
+
+ <script src="./../../javascript/prettify.js" type="text/javascript"></script>
+ <script src="./../../javascript/jquery-latest.js"></script>
+ <script src="http://platform.twitter.com/widgets.js" type="text/javascript"></script>
+ <script src="./../../javascript/common.js"></script>
+ <script src="./../../javascript/prettyprint.js"></script>
+
+ <script type="text/javascript">
+
+ var _gaq = _gaq || [];
+ _gaq.push(['_setAccount', 'UA-2717626-1']);
+ _gaq.push(['_setDomainName', 'apache.org']);
+ _gaq.push(['_trackPageview']);
+
+ (function() {
+ var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
+ ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
+ var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
+ })();
+
+ </script>
+
+
+ </head>
+
+ <body>
+
+ <div class="topbar">
+ <div class="fill">
+ <div class="container">
+ <a class="brand" href="./../../index.html">Apache TomEE</a>
+ <ul class="nav">
+ <li><a href="./../../index.html">Home</a></li>
+ <li><a href="./../../downloads.html">Downloads</a></li>
+ <li><a href="./../../documentation.html">Documentation</a></li>
+ <li><a href="./../../support.html">Support</a></li>
+ </ul>
+
+ <!-- Google CSE Search Box Begins -->
+ <FORM class="pull-right" id="searchbox_010475492895890475512:_t4iqjrgx90" action="http://www.google.com/cse">
+ <INPUT type="hidden" name="cx" value="010475492895890475512:_t4iqjrgx90">
+ <INPUT type="hidden" name="cof" value="FORID:0">
+ <INPUT name="q" type="text" placeholder="Search">
+ </FORM>
+ <!--<SCRIPT type="text/javascript" src="http://www.google.com/coop/cse/brand?form=searchbox_010475492895890475512:_t4iqjrgx90"></SCRIPT>-->
+ <!-- Google CSE Search Box Ends -->
+ </div>
+ </div>
+ </div>
+
+ <div class="container">
+
+
+
+<div class="row">
+ <div class="span8">
+ <small><a href="./../../index.html">Home</a> » <a href="./../../examples-trunk/">Examples Trunk</a> » <a href="./../../examples-trunk/polling-parent/">Polling Parent</a></small><br>
+ </div>
+ <div class="span8">
+ </div>
+</div>
+
+<div class="page-header">
+<h1>
+
+ <div style="float: right; position: relative; bottom: -10px; ">
+ <a onclick="javascript:gpshare()" class="gp-share sprite" title="share on Google+">share [gp]</a>
+ <a onclick="javascript:fbshare()" class="fb-share sprite" title="share on Facebook">share [fb]</a>
+ <a onclick="javascript:twshare()" class="tw-share sprite" title="share on Twitter">share [tw]</a>
+ </div>
+</h1>
+</div>
+
+<h1>Sample</h1>
+
+<p>This sample implements a simple polling application.</p>
+
+<p>You can create polls and then vote (+1 or -1) for each poll (called Subject).</p>
+
+<p>The front is a JAX-RS front and the backend uses EJBs and JPA.</p>
+
+<h1>Module</h1>
+
+<p>The application contains several modules:</p>
+
+<ul>
+<li>polling-domain: entities used by the client side too</li>
+<li>polling-core: the middle/dao layer</li>
+<li>polling-web: front layer (REST services)</li>
+</ul>
+
+<h1>What is noticeable</h1>
+
+<p>The front layer contains a MBean managed by CDI (VoteCounter) which is used by REST services to update information you
+can retrieve through JMX protocol (JConsole client is fine to see it ;)).</p>
+
+<p>It manages a dynamic datasource too. It manages in the example configuration 2 clients.</p>
+
+<p>It is a simple round robin by request. That's why from the client if you simply create a poll then find it
+you'll not find the persisted poll, you need to do it once again.</p>
+
+<h1>Client</h1>
+
+<p>It lets you create poll, retrieve them, find the best poll and vote for any poll.</p>
+
+<p>Please type help for more information.</p>
+
+
+<div class="page-header"> </div>
+<h4>APIs Used</h4>
+<ul><li><a href="http://docs.oracle.com/javaee/6/api/javax/annotation/Resource.html">javax.annotation.Resource</a></li>
+<li><a href="http://docs.oracle.com/javaee/6/api/javax/ejb/EJB.html">javax.ejb.EJB</a></li>
+<li><a href="http://docs.oracle.com/javaee/6/api/javax/ejb/Lock.html">javax.ejb.Lock</a></li>
+<li><a href="http://docs.oracle.com/javaee/6/api/javax/ejb/LockType.html">javax.ejb.LockType</a></li>
+<li><a href="http://docs.oracle.com/javaee/6/api/javax/ejb/Singleton.html">javax.ejb.Singleton</a></li>
+<li><a href="http://docs.oracle.com/javaee/6/api/javax/ejb/TransactionAttribute.html">javax.ejb.TransactionAttribute</a></li>
+<li><a href="http://docs.oracle.com/javaee/6/api/javax/ejb/TransactionAttributeType.html">javax.ejb.TransactionAttributeType</a></li>
+<li><a href="http://docs.oracle.com/javaee/6/api/javax/ejb/embeddable/EJBContainer.html">javax.ejb.embeddable.EJBContainer</a></li>
+<li><a href="http://docs.oracle.com/javaee/6/api/javax/enterprise/context/ApplicationScoped.html">javax.enterprise.context.ApplicationScoped</a></li>
+<li><a href="http://docs.oracle.com/javaee/6/api/javax/inject/Inject.html">javax.inject.Inject</a></li>
+<li><a href="http://docs.oracle.com/javaee/6/api/javax/management/Description.html">javax.management.Description</a></li>
+<li><a href="http://docs.oracle.com/javaee/6/api/javax/management/MBean.html">javax.management.MBean</a></li>
+<li><a href="http://docs.oracle.com/javaee/6/api/javax/management/ManagedAttribute.html">javax.management.ManagedAttribute</a></li>
+<li><a href="http://docs.oracle.com/javaee/6/api/javax/management/ManagedOperation.html">javax.management.ManagedOperation</a></li>
+<li><a href="http://docs.oracle.com/javaee/6/api/javax/naming/NamingException.html">javax.naming.NamingException</a></li>
+<li><a href="http://docs.oracle.com/javaee/6/api/javax/persistence/Entity.html">javax.persistence.Entity</a></li>
+<li><a href="http://docs.oracle.com/javaee/6/api/javax/persistence/EntityManager.html">javax.persistence.EntityManager</a></li>
+<li><a href="http://docs.oracle.com/javaee/6/api/javax/persistence/EnumType.html">javax.persistence.EnumType</a></li>
+<li><a href="http://docs.oracle.com/javaee/6/api/javax/persistence/Enumerated.html">javax.persistence.Enumerated</a></li>
+<li><a href="http://docs.oracle.com/javaee/6/api/javax/persistence/FetchType.html">javax.persistence.FetchType</a></li>
+<li><a href="http://docs.oracle.com/javaee/6/api/javax/persistence/GeneratedValue.html">javax.persistence.GeneratedValue</a></li>
+<li><a href="http://docs.oracle.com/javaee/6/api/javax/persistence/GenerationType.html">javax.persistence.GenerationType</a></li>
+<li><a href="http://docs.oracle.com/javaee/6/api/javax/persistence/Id.html">javax.persistence.Id</a></li>
+<li><a href="http://docs.oracle.com/javaee/6/api/javax/persistence/NamedQueries.html">javax.persistence.NamedQueries</a></li>
+<li><a href="http://docs.oracle.com/javaee/6/api/javax/persistence/NamedQuery.html">javax.persistence.NamedQuery</a></li>
+<li><a href="http://docs.oracle.com/javaee/6/api/javax/persistence/OneToMany.html">javax.persistence.OneToMany</a></li>
+<li><a href="http://docs.oracle.com/javaee/6/api/javax/persistence/PersistenceContext.html">javax.persistence.PersistenceContext</a></li>
+<li><a href="http://docs.oracle.com/javaee/6/api/javax/servlet/Filter.html">javax.servlet.Filter</a></li>
+<li><a href="http://docs.oracle.com/javaee/6/api/javax/servlet/FilterChain.html">javax.servlet.FilterChain</a></li>
+<li><a href="http://docs.oracle.com/javaee/6/api/javax/servlet/FilterConfig.html">javax.servlet.FilterConfig</a></li>
+<li><a href="http://docs.oracle.com/javaee/6/api/javax/servlet/ServletException.html">javax.servlet.ServletException</a></li>
+<li><a href="http://docs.oracle.com/javaee/6/api/javax/servlet/ServletRequest.html">javax.servlet.ServletRequest</a></li>
+<li><a href="http://docs.oracle.com/javaee/6/api/javax/servlet/ServletResponse.html">javax.servlet.ServletResponse</a></li>
+<li><a href="http://docs.oracle.com/javaee/6/api/javax/servlet/annotation/WebFilter.html">javax.servlet.annotation.WebFilter</a></li>
+<li><a href="http://docs.oracle.com/javaee/6/api/javax/sql/DataSource.html">javax.sql.DataSource</a></li>
+<li><a href="http://docs.oracle.com/javaee/6/api/javax/ws/rs/ApplicationPath.html">javax.ws.rs.ApplicationPath</a></li>
+<li><a href="http://docs.oracle.com/javaee/6/api/javax/ws/rs/GET.html">javax.ws.rs.GET</a></li>
+<li><a href="http://docs.oracle.com/javaee/6/api/javax/ws/rs/POST.html">javax.ws.rs.POST</a></li>
+<li><a href="http://docs.oracle.com/javaee/6/api/javax/ws/rs/Path.html">javax.ws.rs.Path</a></li>
+<li><a href="http://docs.oracle.com/javaee/6/api/javax/ws/rs/PathParam.html">javax.ws.rs.PathParam</a></li>
+<li><a href="http://docs.oracle.com/javaee/6/api/javax/ws/rs/Produces.html">javax.ws.rs.Produces</a></li>
+<li><a href="http://docs.oracle.com/javaee/6/api/javax/ws/rs/QueryParam.html">javax.ws.rs.QueryParam</a></li>
+<li><a href="http://docs.oracle.com/javaee/6/api/javax/ws/rs/core/Application.html">javax.ws.rs.core.Application</a></li>
+<li><a href="http://docs.oracle.com/javaee/6/api/javax/ws/rs/core/MediaType.html">javax.ws.rs.core.MediaType</a></li>
+<li><a href="http://docs.oracle.com/javaee/6/api/javax/ws/rs/core/Response.html">javax.ws.rs.core.Response</a></li>
+<li><a href="http://docs.oracle.com/javaee/6/api/javax/xml/bind/annotation/XmlRootElement.html">javax.xml.bind.annotation.XmlRootElement</a></li>
+<li><a href="http://docs.oracle.com/javaee/6/api/javax/xml/bind/annotation/XmlType.html">javax.xml.bind.annotation.XmlType</a></li>
+<li><a href="http://docs.oracle.com/javaee/6/api/javax/xml/parsers/SAXParser.html">javax.xml.parsers.SAXParser</a></li>
+<li><a href="http://docs.oracle.com/javaee/6/api/javax/xml/parsers/SAXParserFactory.html">javax.xml.parsers.SAXParserFactory</a></li>
+</ul>
+
+<h3>Source</h3>
+ <ul>
+ <li>Apache <a href="http://svn.apache.org/repos/asf/openejb/trunk/openejb/examples/polling-parent">polling-parent</a></li>
+ <li>Github <a href="https://github.com/apache/openejb/tree/trunk/openejb/examples/polling-parent">polling-parent</a></li>
+ </ul>
+<pre>
+svn co http://svn.apache.org/repos/asf/openejb/trunk/openejb/examples/polling-parent
+cd polling-parent
+mvn clean install
+</pre>
+
+
+ <footer>
+ <p>
+ Copyright © 2011 The Apache Software Foundation, Licensed under the Apache License, Version 2.0.
+ Apache and the Apache feather logo are trademarks of The Apache Software Foundation.
+ </p>
+ </footer>
+
+ </div> <!-- /container -->
+
+ </body>
+</html>