You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tomee.apache.org by db...@apache.org on 2018/12/30 21:32:31 UTC

[1/3] tomee git commit: Migrating from markdown to asciidoc

Repository: tomee
Updated Branches:
  refs/heads/master 12c20b0f7 -> 01495dd66


Migrating from markdown to asciidoc


Project: http://git-wip-us.apache.org/repos/asf/tomee/repo
Commit: http://git-wip-us.apache.org/repos/asf/tomee/commit/4d0c9b14
Tree: http://git-wip-us.apache.org/repos/asf/tomee/tree/4d0c9b14
Diff: http://git-wip-us.apache.org/repos/asf/tomee/diff/4d0c9b14

Branch: refs/heads/master
Commit: 4d0c9b14cc32e4ccf9ee75fdc1c00a8d480bd559
Parents: 3793f55
Author: yenerm <mu...@muratyener.com>
Authored: Sun Dec 30 11:17:58 2018 -0800
Committer: yenerm <mu...@muratyener.com>
Committed: Sun Dec 30 11:17:58 2018 -0800

----------------------------------------------------------------------
 examples/connector-war/README.adoc | 362 ++++++++++++++++++++++++++++
 examples/connector-war/README.md   | 344 --------------------------
 examples/decorators/README.adoc    | 411 ++++++++++++++++++++++++++++++++
 examples/decorators/README.md      | 393 ------------------------------
 4 files changed, 773 insertions(+), 737 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/tomee/blob/4d0c9b14/examples/connector-war/README.adoc
----------------------------------------------------------------------
diff --git a/examples/connector-war/README.adoc b/examples/connector-war/README.adoc
new file mode 100644
index 0000000..b5d75e9
--- /dev/null
+++ b/examples/connector-war/README.adoc
@@ -0,0 +1,362 @@
+index-group=Unrevised 
+type=page 
+status=published 
+
+= Movies Complete
+
+
+== AddInterceptor
+
+[source,java]
+----
+package org.superbiz.injection.tx;
+
+import javax.interceptor.AroundInvoke;
+import javax.interceptor.InvocationContext;
+
+/**
+ * @version $Revision$ $Date$
+ */
+public class AddInterceptor {
+
+    @AroundInvoke
+    public Object invoke(InvocationContext context) throws Exception {
+        // Log Add
+        return context.proceed();
+    }
+}
+----
+
+== DeleteInterceptor
+
+[source,java]
+----
+package org.superbiz.injection.tx;
+
+import javax.interceptor.AroundInvoke;
+import javax.interceptor.InvocationContext;
+
+/**
+ * @version $Revision$ $Date$
+ */
+public class DeleteInterceptor {
+
+    @AroundInvoke
+    public Object invoke(InvocationContext context) throws Exception {
+        // Log Delete
+        return context.proceed();
+    }
+}
+----
+
+== Movie
+
+[source,java]
+----
+package org.superbiz.injection.tx;
+
+import javax.persistence.Entity;
+
+@Entity
+public class Movie {
+
+    private String director;
+    private String title;
+    private int year;
+
+    public Movie() {
+    }
+
+    public Movie(String director, String title, int year) {
+        this.director = director;
+        this.title = title;
+        this.year = year;
+    }
+
+    public String getDirector() {
+        return director;
+    }
+
+    public void setDirector(String director) {
+        this.director = director;
+    }
+
+    public String getTitle() {
+        return title;
+    }
+
+    public void setTitle(String title) {
+        this.title = title;
+    }
+
+    public int getYear() {
+        return year;
+    }
+
+    public void setYear(int year) {
+        this.year = year;
+    }
+
+}
+----
+
+== Movies
+
+[source,java]
+----
+package org.superbiz.injection.tx;
+
+import javax.annotation.security.PermitAll;
+import javax.annotation.security.RolesAllowed;
+import javax.ejb.Stateful;
+import javax.ejb.TransactionAttribute;
+import javax.ejb.TransactionAttributeType;
+import javax.interceptor.Interceptors;
+import javax.persistence.EntityManager;
+import javax.persistence.PersistenceContext;
+import javax.persistence.PersistenceContextType;
+import javax.persistence.Query;
+import java.util.List;
+
+//START SNIPPET: code
+@Stateful
+public class Movies {
+
+    @PersistenceContext(unitName = "movie-unit", type = PersistenceContextType.TRANSACTION)
+    private EntityManager entityManager;
+
+    @RolesAllowed({"Employee", "Manager"})
+    @TransactionAttribute(TransactionAttributeType.REQUIRED)
+    @Interceptors(AddInterceptor.class)
+    public void addMovie(Movie movie) throws Exception {
+        entityManager.persist(movie);
+    }
+
+    @RolesAllowed({"Manager"})
+    @TransactionAttribute(TransactionAttributeType.MANDATORY)
+    @Interceptors(DeleteInterceptor.class)
+    public void deleteMovie(Movie movie) throws Exception {
+        entityManager.remove(movie);
+    }
+
+    @PermitAll
+    @TransactionAttribute(TransactionAttributeType.SUPPORTS)
+    public List<Movie> getMovies() throws Exception {
+        Query query = entityManager.createQuery("SELECT m from Movie as m");
+        return query.getResultList();
+    }
+}
+----
+
+== ReadInterceptor
+
+[source,java]
+----
+package org.superbiz.injection.tx;
+
+import javax.interceptor.AroundInvoke;
+import javax.interceptor.InvocationContext;
+
+/**
+ * @version $Revision$ $Date$
+ */
+public class ReadInterceptor {
+
+    @AroundInvoke
+    public Object invoke(InvocationContext context) throws Exception {
+        // Log Delete
+        return context.proceed();
+    }
+}
+....
+
+== persistence.xml
+
+[source,xml]
+----
+<persistence xmlns="http://java.sun.com/xml/ns/persistence" version="1.0">
+
+  <persistence-unit name="movie-unit">
+    <jta-data-source>movieDatabase</jta-data-source>
+    <non-jta-data-source>movieDatabaseUnmanaged</non-jta-data-source>
+    <class>org.superbiz.injection.tx.Movie</class>
+
+    <properties>
+      <property name="openjpa.jdbc.SynchronizeMappings" value="buildSchema(ForeignKeys=true)"/>
+    </properties>
+  </persistence-unit>
+</persistence>
+----
+
+== MoviesTest
+
+[source,java]
+----
+package org.superbiz.injection.tx;
+
+import junit.framework.TestCase;
+
+import javax.annotation.security.RunAs;
+import javax.ejb.EJB;
+import javax.ejb.Stateless;
+import javax.ejb.TransactionAttribute;
+import javax.ejb.TransactionAttributeType;
+import javax.ejb.embeddable.EJBContainer;
+import java.util.List;
+import java.util.Properties;
+import java.util.concurrent.Callable;
+
+import static javax.ejb.TransactionAttributeType.REQUIRES_NEW;
+
+/**
+ * See the transaction-rollback example as it does the same thing
+ * via UserTransaction and shows more techniques for rollback 
+ */
+//START SNIPPET: code
+public class MoviesTest extends TestCase {
+
+    @EJB
+    private Movies movies;
+
+    @EJB(beanName = "TransactionBean")
+    private Caller transactionalCaller;
+
+    @EJB(beanName = "NoTransactionBean")
+    private Caller nonTransactionalCaller;
+
+    protected void setUp() throws Exception {
+        final Properties p = new Properties();
+        p.put("movieDatabase", "new://Resource?type=DataSource");
+        p.put("movieDatabase.JdbcDriver", "org.hsqldb.jdbcDriver");
+        p.put("movieDatabase.JdbcUrl", "jdbc:hsqldb:mem:moviedb");
+
+        EJBContainer.createEJBContainer(p).getContext().bind("inject", this);
+    }
+
+    private void doWork() throws Exception {
+
+        movies.addMovie(new Movie("Quentin Tarantino", "Reservoir Dogs", 1992));
+        movies.addMovie(new Movie("Joel Coen", "Fargo", 1996));
+        movies.addMovie(new Movie("Joel Coen", "The Big Lebowski", 1998));
+
+        List<Movie> list = movies.getMovies();
+        assertEquals("List.size()", 3, list.size());
+
+        for (Movie movie : list) {
+            movies.deleteMovie(movie);
+        }
+
+        assertEquals("Movies.getMovies()", 0, movies.getMovies().size());
+    }
+
+    public void testWithTransaction() throws Exception {
+        transactionalCaller.call(new Callable() {
+            public Object call() throws Exception {
+                doWork();
+                return null;
+            }
+        });
+    }
+
+    public void testWithoutTransaction() throws Exception {
+        try {
+            nonTransactionalCaller.call(new Callable() {
+                public Object call() throws Exception {
+                    doWork();
+                    return null;
+                }
+            });
+            fail("The Movies bean should be using TransactionAttributeType.MANDATORY");
+        } catch (javax.ejb.EJBException e) {
+            // good, our Movies bean is using TransactionAttributeType.MANDATORY as we want
+        }
+    }
+
+
+    public static interface Caller {
+        public <V> V call(Callable<V> callable) throws Exception;
+    }
+
+    /**
+     * This little bit of magic allows our test code to execute in
+     * the scope of a container controlled transaction.
+     */
+    @Stateless
+    @RunAs("Manager")
+    @TransactionAttribute(REQUIRES_NEW)
+    public static class TransactionBean implements Caller {
+
+        public <V> V call(Callable<V> callable) throws Exception {
+            return callable.call();
+        }
+    }
+
+    @Stateless
+    @RunAs("Manager")
+    @TransactionAttribute(TransactionAttributeType.NEVER)
+    public static class NoTransactionBean implements Caller {
+
+        public <V> V call(Callable<V> callable) throws Exception {
+            return callable.call();
+        }
+    }
+}
+----
+
+== Running
+
+----
+-------------------------------------------------------
+ T E S T S
+-------------------------------------------------------
+Running org.superbiz.injection.tx.MoviesTest
+Apache OpenEJB 4.0.0-beta-1    build: 20111002-04:06
+http://tomee.apache.org/
+INFO - openejb.home = /Users/dblevins/examples/movies-complete
+INFO - openejb.base = /Users/dblevins/examples/movies-complete
+INFO - Using 'javax.ejb.embeddable.EJBContainer=true'
+INFO - Configuring Service(id=Default Security Service, type=SecurityService, provider-id=Default Security Service)
+INFO - Configuring Service(id=Default Transaction Manager, type=TransactionManager, provider-id=Default Transaction Manager)
+INFO - Configuring Service(id=movieDatabase, type=Resource, provider-id=Default JDBC Database)
+INFO - Found EjbModule in classpath: /Users/dblevins/examples/movies-complete/target/classes
+INFO - Found EjbModule in classpath: /Users/dblevins/examples/movies-complete/target/test-classes
+INFO - Beginning load: /Users/dblevins/examples/movies-complete/target/classes
+INFO - Beginning load: /Users/dblevins/examples/movies-complete/target/test-classes
+INFO - Configuring enterprise application: /Users/dblevins/examples/movies-complete
+INFO - Configuring Service(id=Default Stateful Container, type=Container, provider-id=Default Stateful Container)
+INFO - Auto-creating a container for bean Movies: Container(type=STATEFUL, id=Default Stateful Container)
+INFO - Configuring Service(id=Default Stateless Container, type=Container, provider-id=Default Stateless Container)
+INFO - Auto-creating a container for bean TransactionBean: Container(type=STATELESS, id=Default Stateless Container)
+INFO - Configuring Service(id=Default Managed Container, type=Container, provider-id=Default Managed Container)
+INFO - Auto-creating a container for bean org.superbiz.injection.tx.MoviesTest: Container(type=MANAGED, id=Default Managed Container)
+INFO - Configuring PersistenceUnit(name=movie-unit)
+INFO - Auto-creating a Resource with id 'movieDatabaseNonJta' of type 'DataSource for 'movie-unit'.
+INFO - Configuring Service(id=movieDatabaseNonJta, type=Resource, provider-id=movieDatabase)
+INFO - Adjusting PersistenceUnit movie-unit <non-jta-data-source> to Resource ID 'movieDatabaseNonJta' from 'movieDatabaseUnmanaged'
+INFO - Enterprise application "/Users/dblevins/examples/movies-complete" loaded.
+INFO - Assembling app: /Users/dblevins/examples/movies-complete
+INFO - PersistenceUnit(name=movie-unit, provider=org.apache.openjpa.persistence.PersistenceProviderImpl) - provider time 402ms
+INFO - Jndi(name="java:global/movies-complete/Movies!org.superbiz.injection.tx.Movies")
+INFO - Jndi(name="java:global/movies-complete/Movies")
+INFO - Jndi(name="java:global/movies-complete/TransactionBean!org.superbiz.injection.tx.MoviesTest$Caller")
+INFO - Jndi(name="java:global/movies-complete/TransactionBean")
+INFO - Jndi(name="java:global/movies-complete/NoTransactionBean!org.superbiz.injection.tx.MoviesTest$Caller")
+INFO - Jndi(name="java:global/movies-complete/NoTransactionBean")
+INFO - Jndi(name="java:global/EjbModule1013462002/org.superbiz.injection.tx.MoviesTest!org.superbiz.injection.tx.MoviesTest")
+INFO - Jndi(name="java:global/EjbModule1013462002/org.superbiz.injection.tx.MoviesTest")
+INFO - Created Ejb(deployment-id=Movies, ejb-name=Movies, container=Default Stateful Container)
+INFO - Created Ejb(deployment-id=NoTransactionBean, ejb-name=NoTransactionBean, container=Default Stateless Container)
+INFO - Created Ejb(deployment-id=TransactionBean, ejb-name=TransactionBean, container=Default Stateless Container)
+INFO - Created Ejb(deployment-id=org.superbiz.injection.tx.MoviesTest, ejb-name=org.superbiz.injection.tx.MoviesTest, container=Default Managed Container)
+INFO - Started Ejb(deployment-id=Movies, ejb-name=Movies, container=Default Stateful Container)
+INFO - Started Ejb(deployment-id=NoTransactionBean, ejb-name=NoTransactionBean, container=Default Stateless Container)
+INFO - Started Ejb(deployment-id=TransactionBean, ejb-name=TransactionBean, container=Default Stateless Container)
+INFO - Started Ejb(deployment-id=org.superbiz.injection.tx.MoviesTest, ejb-name=org.superbiz.injection.tx.MoviesTest, container=Default Managed Container)
+INFO - Deployed Application(path=/Users/dblevins/examples/movies-complete)
+INFO - EJBContainer already initialized.  Call ejbContainer.close() to allow reinitialization
+Tests run: 2, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 2.418 sec
+
+Results :
+
+Tests run: 2, Failures: 0, Errors: 0, Skipped: 0
+....

http://git-wip-us.apache.org/repos/asf/tomee/blob/4d0c9b14/examples/connector-war/README.md
----------------------------------------------------------------------
diff --git a/examples/connector-war/README.md b/examples/connector-war/README.md
deleted file mode 100644
index add4c7e..0000000
--- a/examples/connector-war/README.md
+++ /dev/null
@@ -1,344 +0,0 @@
-index-group=Unrevised
-type=page
-status=published
-title=Movies Complete
-~~~~~~
-
-*Help us document this example! Click the blue pencil icon in the upper right to edit this page.*
-
-[![Try it out in Codenvy](https://tomitribe.github.io/codenvy/tryitout.svg)](https://codenvy.com/f?id=9er0fn1kh832sa35)
-
-## AddInterceptor
-
-    package org.superbiz.injection.tx;
-    
-    import javax.interceptor.AroundInvoke;
-    import javax.interceptor.InvocationContext;
-    
-    /**
-     * @version $Revision$ $Date$
-     */
-    public class AddInterceptor {
-    
-        @AroundInvoke
-        public Object invoke(InvocationContext context) throws Exception {
-            // Log Add
-            return context.proceed();
-        }
-    }
-
-## DeleteInterceptor
-
-    package org.superbiz.injection.tx;
-    
-    import javax.interceptor.AroundInvoke;
-    import javax.interceptor.InvocationContext;
-    
-    /**
-     * @version $Revision$ $Date$
-     */
-    public class DeleteInterceptor {
-    
-        @AroundInvoke
-        public Object invoke(InvocationContext context) throws Exception {
-            // Log Delete
-            return context.proceed();
-        }
-    }
-
-## Movie
-
-    package org.superbiz.injection.tx;
-    
-    import javax.persistence.Entity;
-    
-    @Entity
-    public class Movie {
-    
-        private String director;
-        private String title;
-        private int year;
-    
-        public Movie() {
-        }
-    
-        public Movie(String director, String title, int year) {
-            this.director = director;
-            this.title = title;
-            this.year = year;
-        }
-    
-        public String getDirector() {
-            return director;
-        }
-    
-        public void setDirector(String director) {
-            this.director = director;
-        }
-    
-        public String getTitle() {
-            return title;
-        }
-    
-        public void setTitle(String title) {
-            this.title = title;
-        }
-    
-        public int getYear() {
-            return year;
-        }
-    
-        public void setYear(int year) {
-            this.year = year;
-        }
-    
-    }
-
-## Movies
-
-    package org.superbiz.injection.tx;
-    
-    import javax.annotation.security.PermitAll;
-    import javax.annotation.security.RolesAllowed;
-    import javax.ejb.Stateful;
-    import javax.ejb.TransactionAttribute;
-    import javax.ejb.TransactionAttributeType;
-    import javax.interceptor.Interceptors;
-    import javax.persistence.EntityManager;
-    import javax.persistence.PersistenceContext;
-    import javax.persistence.PersistenceContextType;
-    import javax.persistence.Query;
-    import java.util.List;
-    
-    //START SNIPPET: code
-    @Stateful
-    public class Movies {
-    
-        @PersistenceContext(unitName = "movie-unit", type = PersistenceContextType.TRANSACTION)
-        private EntityManager entityManager;
-    
-        @RolesAllowed({"Employee", "Manager"})
-        @TransactionAttribute(TransactionAttributeType.REQUIRED)
-        @Interceptors(AddInterceptor.class)
-        public void addMovie(Movie movie) throws Exception {
-            entityManager.persist(movie);
-        }
-    
-        @RolesAllowed({"Manager"})
-        @TransactionAttribute(TransactionAttributeType.MANDATORY)
-        @Interceptors(DeleteInterceptor.class)
-        public void deleteMovie(Movie movie) throws Exception {
-            entityManager.remove(movie);
-        }
-    
-        @PermitAll
-        @TransactionAttribute(TransactionAttributeType.SUPPORTS)
-        public List<Movie> getMovies() throws Exception {
-            Query query = entityManager.createQuery("SELECT m from Movie as m");
-            return query.getResultList();
-        }
-    }
-
-## ReadInterceptor
-
-    package org.superbiz.injection.tx;
-    
-    import javax.interceptor.AroundInvoke;
-    import javax.interceptor.InvocationContext;
-    
-    /**
-     * @version $Revision$ $Date$
-     */
-    public class ReadInterceptor {
-    
-        @AroundInvoke
-        public Object invoke(InvocationContext context) throws Exception {
-            // Log Delete
-            return context.proceed();
-        }
-    }
-
-## persistence.xml
-
-    <persistence xmlns="http://java.sun.com/xml/ns/persistence" version="1.0">
-    
-      <persistence-unit name="movie-unit">
-        <jta-data-source>movieDatabase</jta-data-source>
-        <non-jta-data-source>movieDatabaseUnmanaged</non-jta-data-source>
-        <class>org.superbiz.injection.tx.Movie</class>
-    
-        <properties>
-          <property name="openjpa.jdbc.SynchronizeMappings" value="buildSchema(ForeignKeys=true)"/>
-        </properties>
-      </persistence-unit>
-    </persistence>
-
-## MoviesTest
-
-    package org.superbiz.injection.tx;
-    
-    import junit.framework.TestCase;
-    
-    import javax.annotation.security.RunAs;
-    import javax.ejb.EJB;
-    import javax.ejb.Stateless;
-    import javax.ejb.TransactionAttribute;
-    import javax.ejb.TransactionAttributeType;
-    import javax.ejb.embeddable.EJBContainer;
-    import java.util.List;
-    import java.util.Properties;
-    import java.util.concurrent.Callable;
-    
-    import static javax.ejb.TransactionAttributeType.REQUIRES_NEW;
-    
-    /**
-     * See the transaction-rollback example as it does the same thing
-     * via UserTransaction and shows more techniques for rollback 
-     */
-    //START SNIPPET: code
-    public class MoviesTest extends TestCase {
-    
-        @EJB
-        private Movies movies;
-    
-        @EJB(beanName = "TransactionBean")
-        private Caller transactionalCaller;
-    
-        @EJB(beanName = "NoTransactionBean")
-        private Caller nonTransactionalCaller;
-    
-        protected void setUp() throws Exception {
-            final Properties p = new Properties();
-            p.put("movieDatabase", "new://Resource?type=DataSource");
-            p.put("movieDatabase.JdbcDriver", "org.hsqldb.jdbcDriver");
-            p.put("movieDatabase.JdbcUrl", "jdbc:hsqldb:mem:moviedb");
-    
-            EJBContainer.createEJBContainer(p).getContext().bind("inject", this);
-        }
-    
-        private void doWork() throws Exception {
-    
-            movies.addMovie(new Movie("Quentin Tarantino", "Reservoir Dogs", 1992));
-            movies.addMovie(new Movie("Joel Coen", "Fargo", 1996));
-            movies.addMovie(new Movie("Joel Coen", "The Big Lebowski", 1998));
-    
-            List<Movie> list = movies.getMovies();
-            assertEquals("List.size()", 3, list.size());
-    
-            for (Movie movie : list) {
-                movies.deleteMovie(movie);
-            }
-    
-            assertEquals("Movies.getMovies()", 0, movies.getMovies().size());
-        }
-    
-        public void testWithTransaction() throws Exception {
-            transactionalCaller.call(new Callable() {
-                public Object call() throws Exception {
-                    doWork();
-                    return null;
-                }
-            });
-        }
-    
-        public void testWithoutTransaction() throws Exception {
-            try {
-                nonTransactionalCaller.call(new Callable() {
-                    public Object call() throws Exception {
-                        doWork();
-                        return null;
-                    }
-                });
-                fail("The Movies bean should be using TransactionAttributeType.MANDATORY");
-            } catch (javax.ejb.EJBException e) {
-                // good, our Movies bean is using TransactionAttributeType.MANDATORY as we want
-            }
-        }
-    
-    
-        public static interface Caller {
-            public <V> V call(Callable<V> callable) throws Exception;
-        }
-    
-        /**
-         * This little bit of magic allows our test code to execute in
-         * the scope of a container controlled transaction.
-         */
-        @Stateless
-        @RunAs("Manager")
-        @TransactionAttribute(REQUIRES_NEW)
-        public static class TransactionBean implements Caller {
-    
-            public <V> V call(Callable<V> callable) throws Exception {
-                return callable.call();
-            }
-        }
-    
-        @Stateless
-        @RunAs("Manager")
-        @TransactionAttribute(TransactionAttributeType.NEVER)
-        public static class NoTransactionBean implements Caller {
-    
-            public <V> V call(Callable<V> callable) throws Exception {
-                return callable.call();
-            }
-        }
-    }
-
-# Running
-
-    
-    -------------------------------------------------------
-     T E S T S
-    -------------------------------------------------------
-    Running org.superbiz.injection.tx.MoviesTest
-    Apache OpenEJB 4.0.0-beta-1    build: 20111002-04:06
-    http://tomee.apache.org/
-    INFO - openejb.home = /Users/dblevins/examples/movies-complete
-    INFO - openejb.base = /Users/dblevins/examples/movies-complete
-    INFO - Using 'javax.ejb.embeddable.EJBContainer=true'
-    INFO - Configuring Service(id=Default Security Service, type=SecurityService, provider-id=Default Security Service)
-    INFO - Configuring Service(id=Default Transaction Manager, type=TransactionManager, provider-id=Default Transaction Manager)
-    INFO - Configuring Service(id=movieDatabase, type=Resource, provider-id=Default JDBC Database)
-    INFO - Found EjbModule in classpath: /Users/dblevins/examples/movies-complete/target/classes
-    INFO - Found EjbModule in classpath: /Users/dblevins/examples/movies-complete/target/test-classes
-    INFO - Beginning load: /Users/dblevins/examples/movies-complete/target/classes
-    INFO - Beginning load: /Users/dblevins/examples/movies-complete/target/test-classes
-    INFO - Configuring enterprise application: /Users/dblevins/examples/movies-complete
-    INFO - Configuring Service(id=Default Stateful Container, type=Container, provider-id=Default Stateful Container)
-    INFO - Auto-creating a container for bean Movies: Container(type=STATEFUL, id=Default Stateful Container)
-    INFO - Configuring Service(id=Default Stateless Container, type=Container, provider-id=Default Stateless Container)
-    INFO - Auto-creating a container for bean TransactionBean: Container(type=STATELESS, id=Default Stateless Container)
-    INFO - Configuring Service(id=Default Managed Container, type=Container, provider-id=Default Managed Container)
-    INFO - Auto-creating a container for bean org.superbiz.injection.tx.MoviesTest: Container(type=MANAGED, id=Default Managed Container)
-    INFO - Configuring PersistenceUnit(name=movie-unit)
-    INFO - Auto-creating a Resource with id 'movieDatabaseNonJta' of type 'DataSource for 'movie-unit'.
-    INFO - Configuring Service(id=movieDatabaseNonJta, type=Resource, provider-id=movieDatabase)
-    INFO - Adjusting PersistenceUnit movie-unit <non-jta-data-source> to Resource ID 'movieDatabaseNonJta' from 'movieDatabaseUnmanaged'
-    INFO - Enterprise application "/Users/dblevins/examples/movies-complete" loaded.
-    INFO - Assembling app: /Users/dblevins/examples/movies-complete
-    INFO - PersistenceUnit(name=movie-unit, provider=org.apache.openjpa.persistence.PersistenceProviderImpl) - provider time 402ms
-    INFO - Jndi(name="java:global/movies-complete/Movies!org.superbiz.injection.tx.Movies")
-    INFO - Jndi(name="java:global/movies-complete/Movies")
-    INFO - Jndi(name="java:global/movies-complete/TransactionBean!org.superbiz.injection.tx.MoviesTest$Caller")
-    INFO - Jndi(name="java:global/movies-complete/TransactionBean")
-    INFO - Jndi(name="java:global/movies-complete/NoTransactionBean!org.superbiz.injection.tx.MoviesTest$Caller")
-    INFO - Jndi(name="java:global/movies-complete/NoTransactionBean")
-    INFO - Jndi(name="java:global/EjbModule1013462002/org.superbiz.injection.tx.MoviesTest!org.superbiz.injection.tx.MoviesTest")
-    INFO - Jndi(name="java:global/EjbModule1013462002/org.superbiz.injection.tx.MoviesTest")
-    INFO - Created Ejb(deployment-id=Movies, ejb-name=Movies, container=Default Stateful Container)
-    INFO - Created Ejb(deployment-id=NoTransactionBean, ejb-name=NoTransactionBean, container=Default Stateless Container)
-    INFO - Created Ejb(deployment-id=TransactionBean, ejb-name=TransactionBean, container=Default Stateless Container)
-    INFO - Created Ejb(deployment-id=org.superbiz.injection.tx.MoviesTest, ejb-name=org.superbiz.injection.tx.MoviesTest, container=Default Managed Container)
-    INFO - Started Ejb(deployment-id=Movies, ejb-name=Movies, container=Default Stateful Container)
-    INFO - Started Ejb(deployment-id=NoTransactionBean, ejb-name=NoTransactionBean, container=Default Stateless Container)
-    INFO - Started Ejb(deployment-id=TransactionBean, ejb-name=TransactionBean, container=Default Stateless Container)
-    INFO - Started Ejb(deployment-id=org.superbiz.injection.tx.MoviesTest, ejb-name=org.superbiz.injection.tx.MoviesTest, container=Default Managed Container)
-    INFO - Deployed Application(path=/Users/dblevins/examples/movies-complete)
-    INFO - EJBContainer already initialized.  Call ejbContainer.close() to allow reinitialization
-    Tests run: 2, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 2.418 sec
-    
-    Results :
-    
-    Tests run: 2, Failures: 0, Errors: 0, Skipped: 0
-    

http://git-wip-us.apache.org/repos/asf/tomee/blob/4d0c9b14/examples/decorators/README.adoc
----------------------------------------------------------------------
diff --git a/examples/decorators/README.adoc b/examples/decorators/README.adoc
new file mode 100644
index 0000000..b2be25f
--- /dev/null
+++ b/examples/decorators/README.adoc
@@ -0,0 +1,411 @@
+index-group=CDI
+type=page
+status=published
+
+= Decorators
+
+== AccessDeniedException
+
+[source,java]
+----
+package org.superbiz.cdi.decorators;
+
+import javax.ejb.ApplicationException;
+
+/**
+ * @version $Revision$ $Date$
+ */
+@ApplicationException
+public class AccessDeniedException extends RuntimeException {
+    public AccessDeniedException(String s) {
+        super(s);
+    }
+}
+----
+
+== Calculator
+
+[source,java]
+----
+package org.superbiz.cdi.decorators;
+
+/**
+ * @version $Revision$ $Date$
+ */
+public interface Calculator {
+
+    public int add(int a, int b);
+
+    public int subtract(int a, int b);
+
+    public int multiply(int a, int b);
+
+    public int divide(int a, int b);
+
+    public int remainder(int a, int b);
+}
+----
+
+== CalculatorBean
+
+[source,java]
+----
+package org.superbiz.cdi.decorators;
+
+import javax.annotation.Resource;
+import javax.ejb.SessionContext;
+import javax.ejb.Stateless;
+import javax.enterprise.inject.Produces;
+
+@Stateless
+public class CalculatorBean implements Calculator {
+
+    @Produces
+    @Resource
+    private SessionContext sessionContext;
+
+    public int add(int a, int b) {
+        return a + b;
+    }
+
+    public int subtract(int a, int b) {
+        return a - b;
+    }
+
+    public int multiply(int a, int b) {
+        return a * b;
+    }
+
+    public int divide(int a, int b) {
+        return a / b;
+    }
+
+    public int remainder(int a, int b) {
+        return a % b;
+    }
+}
+----
+
+== CalculatorLogging
+
+[source,java]
+----
+package org.superbiz.cdi.decorators;
+
+import javax.decorator.Decorator;
+import javax.decorator.Delegate;
+import javax.inject.Inject;
+import java.util.logging.Logger;
+
+@Decorator
+public class CalculatorLogging implements Calculator {
+
+    private Logger logger = Logger.getLogger("Calculator");
+
+    @Inject
+    @Delegate
+    private Calculator calculator;
+
+    @Override
+    public int add(int a, int b) {
+        logger.fine(String.format("add(%s, %s)", a, b));
+        return calculator.add(a, b);
+    }
+
+    @Override
+    public int subtract(int a, int b) {
+        return calculator.subtract(a, b);
+    }
+
+    @Override
+    public int multiply(int a, int b) {
+        logger.finest(String.format("multiply(%s, %s)", a, b));
+        return calculator.multiply(a, b);
+    }
+
+    @Override
+    public int divide(int a, int b) {
+        return calculator.divide(a, b);
+    }
+
+    @Override
+    public int remainder(int a, int b) {
+        logger.info(String.format("remainder(%s, %s)", a, b));
+        return calculator.remainder(a, b);
+    }
+}
+----
+
+== CalculatorSecurity
+
+[source,java]
+----
+package org.superbiz.cdi.decorators;
+
+import javax.decorator.Decorator;
+import javax.decorator.Delegate;
+import javax.ejb.SessionContext;
+import javax.inject.Inject;
+
+@Decorator
+public class CalculatorSecurity implements Calculator {
+
+    @Inject
+    @Delegate
+    private Calculator calculator;
+
+    @Inject
+    private SessionContext sessionContext;
+
+    @Override
+    public int add(int a, int b) {
+        return calculator.add(a, b);
+    }
+
+    @Override
+    public int subtract(int a, int b) {
+        // Caller must pass a security check to call subtract
+        if (!sessionContext.isCallerInRole("Manager")) throw new AccessDeniedException(sessionContext.getCallerPrincipal().getName());
+
+        return calculator.subtract(a, b);
+    }
+
+    @Override
+    public int multiply(int a, int b) {
+        return calculator.multiply(a, b);
+    }
+
+    @Override
+    public int divide(int a, int b) {
+        return calculator.divide(a, b);
+    }
+
+    @Override
+    public int remainder(int a, int b) {
+        return calculator.remainder(a, b);
+    }
+}
+----
+
+== beans.xml
+
+[source,java]
+----
+<beans>
+  <!--
+  Explicitly declaring decorators is required by the CDI specification.
+  The order decorators are listed in the xml is the order in which they are invoked.
+  -->
+  <decorators>
+    <class>org.superbiz.cdi.decorators.CalculatorSecurity</class>
+    <class>org.superbiz.cdi.decorators.CalculatorLogging</class>
+  </decorators>
+</beans>
+----
+
+== CalculatorTest
+
+[source,java]
+----
+package org.superbiz.cdi.decorators;
+
+import junit.framework.TestCase;
+
+import javax.annotation.security.RunAs;
+import javax.ejb.EJB;
+import javax.ejb.Stateless;
+import javax.ejb.embeddable.EJBContainer;
+import java.util.concurrent.Callable;
+
+public class CalculatorTest extends TestCase {
+
+    @EJB
+    private Calculator calculator;
+
+    @EJB
+    private ManagerBean manager;
+
+    /**
+     * Bootstrap the Embedded EJB Container
+     *
+     * @throws Exception
+     */
+    protected void setUp() throws Exception {
+        EJBContainer.createEJBContainer().getContext().bind("inject", this);
+    }
+
+    /**
+     * Test Add method
+     */
+    public void testAdd() {
+
+        assertEquals(10, calculator.add(4, 6));
+    }
+
+    /**
+     * Test Subtract method
+     */
+    public void testSubtract() {
+
+        try {
+            calculator.subtract(4, 6);
+
+            fail("AccessDeniedException should have been thrown for unauthenticated access");
+        } catch (AccessDeniedException expected) {
+            // pass
+        }
+
+        final int result = manager.call(new Callable<Integer>() {
+            public Integer call() {
+                return calculator.subtract(4, 6);
+            }
+        });
+
+        assertEquals(-2, result);
+    }
+
+    /**
+     * Test Multiply method
+     */
+    public void testMultiply() {
+
+        assertEquals(24, calculator.multiply(4, 6));
+    }
+
+    /**
+     * Test Divide method
+     */
+    public void testDivide() {
+
+        assertEquals(2, calculator.divide(12, 6));
+    }
+
+    /**
+     * Test Remainder method
+     */
+    public void testRemainder() {
+
+        assertEquals(4, calculator.remainder(46, 6));
+    }
+
+    @Stateless
+    @RunAs("Manager")
+    public static class ManagerBean {
+
+        public <V> V call(Callable<V> callable) {
+            try {
+                return callable.call();
+            } catch (Exception e) {
+                throw new RuntimeException(e);
+            }
+        }
+    }
+}
+----
+
+== Running
+
+----
+-------------------------------------------------------
+ T E S T S
+-------------------------------------------------------
+Running org.superbiz.cdi.decorators.CalculatorTest
+Apache OpenEJB 4.0.0-beta-1    build: 20111002-04:06
+http://tomee.apache.org/
+INFO - openejb.home = /Users/dblevins/examples/decorators
+INFO - openejb.base = /Users/dblevins/examples/decorators
+INFO - Using 'javax.ejb.embeddable.EJBContainer=true'
+INFO - Configuring Service(id=Default Security Service, type=SecurityService, provider-id=Default Security Service)
+INFO - Configuring Service(id=Default Transaction Manager, type=TransactionManager, provider-id=Default Transaction Manager)
+INFO - Found EjbModule in classpath: /Users/dblevins/examples/decorators/target/classes
+INFO - Found EjbModule in classpath: /Users/dblevins/examples/decorators/target/test-classes
+INFO - Beginning load: /Users/dblevins/examples/decorators/target/classes
+INFO - Beginning load: /Users/dblevins/examples/decorators/target/test-classes
+INFO - Configuring enterprise application: /Users/dblevins/examples/decorators
+WARN - Method 'lookup' is not available for 'javax.annotation.Resource'. Probably using an older Runtime.
+INFO - Configuring Service(id=Default Managed Container, type=Container, provider-id=Default Managed Container)
+INFO - Auto-creating a container for bean decorators.Comp: Container(type=MANAGED, id=Default Managed Container)
+INFO - Configuring Service(id=Default Stateless Container, type=Container, provider-id=Default Stateless Container)
+INFO - Auto-creating a container for bean CalculatorBean: Container(type=STATELESS, id=Default Stateless Container)
+INFO - Enterprise application "/Users/dblevins/examples/decorators" loaded.
+INFO - Assembling app: /Users/dblevins/examples/decorators
+INFO - Jndi(name="java:global/decorators/decorators.Comp!org.apache.openejb.BeanContext$Comp")
+INFO - Jndi(name="java:global/decorators/decorators.Comp")
+INFO - Jndi(name="java:global/decorators/CalculatorBean!org.superbiz.cdi.decorators.Calculator")
+INFO - Jndi(name="java:global/decorators/CalculatorBean")
+INFO - Jndi(name="java:global/decorators/ManagerBean!org.superbiz.cdi.decorators.CalculatorTest$ManagerBean")
+INFO - Jndi(name="java:global/decorators/ManagerBean")
+INFO - Jndi(name="java:global/EjbModule628834558/org.superbiz.cdi.decorators.CalculatorTest!org.superbiz.cdi.decorators.CalculatorTest")
+INFO - Jndi(name="java:global/EjbModule628834558/org.superbiz.cdi.decorators.CalculatorTest")
+INFO - Created Ejb(deployment-id=CalculatorBean, ejb-name=CalculatorBean, container=Default Stateless Container)
+INFO - Created Ejb(deployment-id=decorators.Comp, ejb-name=decorators.Comp, container=Default Managed Container)
+INFO - Created Ejb(deployment-id=ManagerBean, ejb-name=ManagerBean, container=Default Stateless Container)
+INFO - Created Ejb(deployment-id=org.superbiz.cdi.decorators.CalculatorTest, ejb-name=org.superbiz.cdi.decorators.CalculatorTest, container=Default Managed Container)
+INFO - Started Ejb(deployment-id=CalculatorBean, ejb-name=CalculatorBean, container=Default Stateless Container)
+INFO - Started Ejb(deployment-id=decorators.Comp, ejb-name=decorators.Comp, container=Default Managed Container)
+INFO - Started Ejb(deployment-id=ManagerBean, ejb-name=ManagerBean, container=Default Stateless Container)
+INFO - Started Ejb(deployment-id=org.superbiz.cdi.decorators.CalculatorTest, ejb-name=org.superbiz.cdi.decorators.CalculatorTest, container=Default Managed Container)
+INFO - Deployed Application(path=/Users/dblevins/examples/decorators)
+INFO - EJBContainer already initialized.  Call ejbContainer.close() to allow reinitialization
+Oct 29, 2011 11:41:04 AM org.apache.webbeans.decorator.DelegateHandler invoke
+SEVERE: Exception in calling method : [subtract] in decorator class : [org.superbiz.cdi.decorators.CalculatorSecurity]. Look in the log for target checked exception.
+org.superbiz.cdi.decorators.AccessDeniedException: guest
+    at org.superbiz.cdi.decorators.CalculatorSecurity.subtract(CalculatorSecurity.java:43)
+    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
+    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
+    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
+    at java.lang.reflect.Method.invoke(Method.java:597)
+    at org.apache.webbeans.decorator.DelegateHandler.invoke(DelegateHandler.java:98)
+    at org.apache.openejb.cdi.CdiInterceptor.invoke(CdiInterceptor.java:127)
+    at org.apache.openejb.cdi.CdiInterceptor.access$000(CdiInterceptor.java:45)
+    at org.apache.openejb.cdi.CdiInterceptor$1.call(CdiInterceptor.java:66)
+    at org.apache.openejb.cdi.CdiInterceptor.aroundInvoke(CdiInterceptor.java:72)
+    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
+    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
+    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
+    at java.lang.reflect.Method.invoke(Method.java:597)
+    at org.apache.openejb.core.interceptor.ReflectionInvocationContext$Invocation.invoke(ReflectionInvocationContext.java:181)
+    at org.apache.openejb.core.interceptor.ReflectionInvocationContext.proceed(ReflectionInvocationContext.java:163)
+    at org.apache.openejb.core.interceptor.InterceptorStack.invoke(InterceptorStack.java:130)
+    at org.apache.openejb.core.stateless.StatelessContainer._invoke(StatelessContainer.java:226)
+    at org.apache.openejb.core.stateless.StatelessContainer.invoke(StatelessContainer.java:178)
+    at org.apache.openejb.core.ivm.EjbObjectProxyHandler.synchronizedBusinessMethod(EjbObjectProxyHandler.java:255)
+    at org.apache.openejb.core.ivm.EjbObjectProxyHandler.businessMethod(EjbObjectProxyHandler.java:235)
+    at org.apache.openejb.core.ivm.EjbObjectProxyHandler._invoke(EjbObjectProxyHandler.java:92)
+    at org.apache.openejb.core.ivm.BaseEjbProxyHandler.invoke(BaseEjbProxyHandler.java:284)
+    at $Proxy44.subtract(Unknown Source)
+    at org.superbiz.cdi.decorators.CalculatorTest.testSubtract(CalculatorTest.java:59)
+    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
+    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
+    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
+    at java.lang.reflect.Method.invoke(Method.java:597)
+    at junit.framework.TestCase.runTest(TestCase.java:168)
+    at junit.framework.TestCase.runBare(TestCase.java:134)
+    at junit.framework.TestResult$1.protect(TestResult.java:110)
+    at junit.framework.TestResult.runProtected(TestResult.java:128)
+    at junit.framework.TestResult.run(TestResult.java:113)
+    at junit.framework.TestCase.run(TestCase.java:124)
+    at junit.framework.TestSuite.runTest(TestSuite.java:232)
+    at junit.framework.TestSuite.run(TestSuite.java:227)
+    at org.junit.internal.runners.JUnit38ClassRunner.run(JUnit38ClassRunner.java:83)
+    at org.apache.maven.surefire.junit4.JUnit4TestSet.execute(JUnit4TestSet.java:35)
+    at org.apache.maven.surefire.junit4.JUnit4Provider.executeTestSet(JUnit4Provider.java:115)
+    at org.apache.maven.surefire.junit4.JUnit4Provider.invoke(JUnit4Provider.java:97)
+    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
+    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
+    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
+    at java.lang.reflect.Method.invoke(Method.java:597)
+    at org.apache.maven.surefire.booter.ProviderFactory$ClassLoaderProxy.invoke(ProviderFactory.java:103)
+    at $Proxy0.invoke(Unknown Source)
+    at org.apache.maven.surefire.booter.SurefireStarter.invokeProvider(SurefireStarter.java:150)
+    at org.apache.maven.surefire.booter.SurefireStarter.runSuitesInProcess(SurefireStarter.java:91)
+    at org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:69)
+INFO - EJBContainer already initialized.  Call ejbContainer.close() to allow reinitialization
+INFO - EJBContainer already initialized.  Call ejbContainer.close() to allow reinitialization
+INFO - EJBContainer already initialized.  Call ejbContainer.close() to allow reinitialization
+Tests run: 5, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 1.338 sec
+
+Results :
+
+Tests run: 5, Failures: 0, Errors: 0, Skipped: 0
+....

http://git-wip-us.apache.org/repos/asf/tomee/blob/4d0c9b14/examples/decorators/README.md
----------------------------------------------------------------------
diff --git a/examples/decorators/README.md b/examples/decorators/README.md
deleted file mode 100644
index f548d80..0000000
--- a/examples/decorators/README.md
+++ /dev/null
@@ -1,393 +0,0 @@
-index-group=CDI
-type=page
-status=published
-title=Decorators
-~~~~~~
-
-*Help us document this example! Click the blue pencil icon in the upper right to edit this page.*
-
-## AccessDeniedException
-
-    package org.superbiz.cdi.decorators;
-    
-    import javax.ejb.ApplicationException;
-    
-    /**
-     * @version $Revision$ $Date$
-     */
-    @ApplicationException
-    public class AccessDeniedException extends RuntimeException {
-        public AccessDeniedException(String s) {
-            super(s);
-        }
-    }
-
-## Calculator
-
-    package org.superbiz.cdi.decorators;
-    
-    /**
-     * @version $Revision$ $Date$
-     */
-    public interface Calculator {
-    
-        public int add(int a, int b);
-    
-        public int subtract(int a, int b);
-    
-        public int multiply(int a, int b);
-    
-        public int divide(int a, int b);
-    
-        public int remainder(int a, int b);
-    }
-
-## CalculatorBean
-
-    package org.superbiz.cdi.decorators;
-    
-    import javax.annotation.Resource;
-    import javax.ejb.SessionContext;
-    import javax.ejb.Stateless;
-    import javax.enterprise.inject.Produces;
-    
-    @Stateless
-    public class CalculatorBean implements Calculator {
-    
-        @Produces
-        @Resource
-        private SessionContext sessionContext;
-    
-        public int add(int a, int b) {
-            return a + b;
-        }
-    
-        public int subtract(int a, int b) {
-            return a - b;
-        }
-    
-        public int multiply(int a, int b) {
-            return a * b;
-        }
-    
-        public int divide(int a, int b) {
-            return a / b;
-        }
-    
-        public int remainder(int a, int b) {
-            return a % b;
-        }
-    }
-
-## CalculatorLogging
-
-    package org.superbiz.cdi.decorators;
-    
-    import javax.decorator.Decorator;
-    import javax.decorator.Delegate;
-    import javax.inject.Inject;
-    import java.util.logging.Logger;
-    
-    @Decorator
-    public class CalculatorLogging implements Calculator {
-    
-        private Logger logger = Logger.getLogger("Calculator");
-    
-        @Inject
-        @Delegate
-        private Calculator calculator;
-    
-        @Override
-        public int add(int a, int b) {
-            logger.fine(String.format("add(%s, %s)", a, b));
-            return calculator.add(a, b);
-        }
-    
-        @Override
-        public int subtract(int a, int b) {
-            return calculator.subtract(a, b);
-        }
-    
-        @Override
-        public int multiply(int a, int b) {
-            logger.finest(String.format("multiply(%s, %s)", a, b));
-            return calculator.multiply(a, b);
-        }
-    
-        @Override
-        public int divide(int a, int b) {
-            return calculator.divide(a, b);
-        }
-    
-        @Override
-        public int remainder(int a, int b) {
-            logger.info(String.format("remainder(%s, %s)", a, b));
-            return calculator.remainder(a, b);
-        }
-    }
-
-## CalculatorSecurity
-
-    package org.superbiz.cdi.decorators;
-    
-    import javax.decorator.Decorator;
-    import javax.decorator.Delegate;
-    import javax.ejb.SessionContext;
-    import javax.inject.Inject;
-    
-    @Decorator
-    public class CalculatorSecurity implements Calculator {
-    
-        @Inject
-        @Delegate
-        private Calculator calculator;
-    
-        @Inject
-        private SessionContext sessionContext;
-    
-        @Override
-        public int add(int a, int b) {
-            return calculator.add(a, b);
-        }
-    
-        @Override
-        public int subtract(int a, int b) {
-            // Caller must pass a security check to call subtract
-            if (!sessionContext.isCallerInRole("Manager")) throw new AccessDeniedException(sessionContext.getCallerPrincipal().getName());
-    
-            return calculator.subtract(a, b);
-        }
-    
-        @Override
-        public int multiply(int a, int b) {
-            return calculator.multiply(a, b);
-        }
-    
-        @Override
-        public int divide(int a, int b) {
-            return calculator.divide(a, b);
-        }
-    
-        @Override
-        public int remainder(int a, int b) {
-            return calculator.remainder(a, b);
-        }
-    }
-
-## beans.xml
-
-    <beans>
-      <!--
-      Explicitly declaring decorators is required by the CDI specification.
-      The order decorators are listed in the xml is the order in which they are invoked.
-      -->
-      <decorators>
-        <class>org.superbiz.cdi.decorators.CalculatorSecurity</class>
-        <class>org.superbiz.cdi.decorators.CalculatorLogging</class>
-      </decorators>
-    </beans>
-    
-
-## CalculatorTest
-
-    package org.superbiz.cdi.decorators;
-    
-    import junit.framework.TestCase;
-    
-    import javax.annotation.security.RunAs;
-    import javax.ejb.EJB;
-    import javax.ejb.Stateless;
-    import javax.ejb.embeddable.EJBContainer;
-    import java.util.concurrent.Callable;
-    
-    public class CalculatorTest extends TestCase {
-    
-        @EJB
-        private Calculator calculator;
-    
-        @EJB
-        private ManagerBean manager;
-    
-        /**
-         * Bootstrap the Embedded EJB Container
-         *
-         * @throws Exception
-         */
-        protected void setUp() throws Exception {
-            EJBContainer.createEJBContainer().getContext().bind("inject", this);
-        }
-    
-        /**
-         * Test Add method
-         */
-        public void testAdd() {
-    
-            assertEquals(10, calculator.add(4, 6));
-        }
-    
-        /**
-         * Test Subtract method
-         */
-        public void testSubtract() {
-    
-            try {
-                calculator.subtract(4, 6);
-    
-                fail("AccessDeniedException should have been thrown for unauthenticated access");
-            } catch (AccessDeniedException expected) {
-                // pass
-            }
-    
-            final int result = manager.call(new Callable<Integer>() {
-                public Integer call() {
-                    return calculator.subtract(4, 6);
-                }
-            });
-    
-            assertEquals(-2, result);
-        }
-    
-        /**
-         * Test Multiply method
-         */
-        public void testMultiply() {
-    
-            assertEquals(24, calculator.multiply(4, 6));
-        }
-    
-        /**
-         * Test Divide method
-         */
-        public void testDivide() {
-    
-            assertEquals(2, calculator.divide(12, 6));
-        }
-    
-        /**
-         * Test Remainder method
-         */
-        public void testRemainder() {
-    
-            assertEquals(4, calculator.remainder(46, 6));
-        }
-    
-        @Stateless
-        @RunAs("Manager")
-        public static class ManagerBean {
-    
-            public <V> V call(Callable<V> callable) {
-                try {
-                    return callable.call();
-                } catch (Exception e) {
-                    throw new RuntimeException(e);
-                }
-            }
-        }
-    }
-
-# Running
-
-    
-    -------------------------------------------------------
-     T E S T S
-    -------------------------------------------------------
-    Running org.superbiz.cdi.decorators.CalculatorTest
-    Apache OpenEJB 4.0.0-beta-1    build: 20111002-04:06
-    http://tomee.apache.org/
-    INFO - openejb.home = /Users/dblevins/examples/decorators
-    INFO - openejb.base = /Users/dblevins/examples/decorators
-    INFO - Using 'javax.ejb.embeddable.EJBContainer=true'
-    INFO - Configuring Service(id=Default Security Service, type=SecurityService, provider-id=Default Security Service)
-    INFO - Configuring Service(id=Default Transaction Manager, type=TransactionManager, provider-id=Default Transaction Manager)
-    INFO - Found EjbModule in classpath: /Users/dblevins/examples/decorators/target/classes
-    INFO - Found EjbModule in classpath: /Users/dblevins/examples/decorators/target/test-classes
-    INFO - Beginning load: /Users/dblevins/examples/decorators/target/classes
-    INFO - Beginning load: /Users/dblevins/examples/decorators/target/test-classes
-    INFO - Configuring enterprise application: /Users/dblevins/examples/decorators
-    WARN - Method 'lookup' is not available for 'javax.annotation.Resource'. Probably using an older Runtime.
-    INFO - Configuring Service(id=Default Managed Container, type=Container, provider-id=Default Managed Container)
-    INFO - Auto-creating a container for bean decorators.Comp: Container(type=MANAGED, id=Default Managed Container)
-    INFO - Configuring Service(id=Default Stateless Container, type=Container, provider-id=Default Stateless Container)
-    INFO - Auto-creating a container for bean CalculatorBean: Container(type=STATELESS, id=Default Stateless Container)
-    INFO - Enterprise application "/Users/dblevins/examples/decorators" loaded.
-    INFO - Assembling app: /Users/dblevins/examples/decorators
-    INFO - Jndi(name="java:global/decorators/decorators.Comp!org.apache.openejb.BeanContext$Comp")
-    INFO - Jndi(name="java:global/decorators/decorators.Comp")
-    INFO - Jndi(name="java:global/decorators/CalculatorBean!org.superbiz.cdi.decorators.Calculator")
-    INFO - Jndi(name="java:global/decorators/CalculatorBean")
-    INFO - Jndi(name="java:global/decorators/ManagerBean!org.superbiz.cdi.decorators.CalculatorTest$ManagerBean")
-    INFO - Jndi(name="java:global/decorators/ManagerBean")
-    INFO - Jndi(name="java:global/EjbModule628834558/org.superbiz.cdi.decorators.CalculatorTest!org.superbiz.cdi.decorators.CalculatorTest")
-    INFO - Jndi(name="java:global/EjbModule628834558/org.superbiz.cdi.decorators.CalculatorTest")
-    INFO - Created Ejb(deployment-id=CalculatorBean, ejb-name=CalculatorBean, container=Default Stateless Container)
-    INFO - Created Ejb(deployment-id=decorators.Comp, ejb-name=decorators.Comp, container=Default Managed Container)
-    INFO - Created Ejb(deployment-id=ManagerBean, ejb-name=ManagerBean, container=Default Stateless Container)
-    INFO - Created Ejb(deployment-id=org.superbiz.cdi.decorators.CalculatorTest, ejb-name=org.superbiz.cdi.decorators.CalculatorTest, container=Default Managed Container)
-    INFO - Started Ejb(deployment-id=CalculatorBean, ejb-name=CalculatorBean, container=Default Stateless Container)
-    INFO - Started Ejb(deployment-id=decorators.Comp, ejb-name=decorators.Comp, container=Default Managed Container)
-    INFO - Started Ejb(deployment-id=ManagerBean, ejb-name=ManagerBean, container=Default Stateless Container)
-    INFO - Started Ejb(deployment-id=org.superbiz.cdi.decorators.CalculatorTest, ejb-name=org.superbiz.cdi.decorators.CalculatorTest, container=Default Managed Container)
-    INFO - Deployed Application(path=/Users/dblevins/examples/decorators)
-    INFO - EJBContainer already initialized.  Call ejbContainer.close() to allow reinitialization
-    Oct 29, 2011 11:41:04 AM org.apache.webbeans.decorator.DelegateHandler invoke
-    SEVERE: Exception in calling method : [subtract] in decorator class : [org.superbiz.cdi.decorators.CalculatorSecurity]. Look in the log for target checked exception.
-    org.superbiz.cdi.decorators.AccessDeniedException: guest
-    	at org.superbiz.cdi.decorators.CalculatorSecurity.subtract(CalculatorSecurity.java:43)
-    	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
-    	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
-    	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
-    	at java.lang.reflect.Method.invoke(Method.java:597)
-    	at org.apache.webbeans.decorator.DelegateHandler.invoke(DelegateHandler.java:98)
-    	at org.apache.openejb.cdi.CdiInterceptor.invoke(CdiInterceptor.java:127)
-    	at org.apache.openejb.cdi.CdiInterceptor.access$000(CdiInterceptor.java:45)
-    	at org.apache.openejb.cdi.CdiInterceptor$1.call(CdiInterceptor.java:66)
-    	at org.apache.openejb.cdi.CdiInterceptor.aroundInvoke(CdiInterceptor.java:72)
-    	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
-    	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
-    	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
-    	at java.lang.reflect.Method.invoke(Method.java:597)
-    	at org.apache.openejb.core.interceptor.ReflectionInvocationContext$Invocation.invoke(ReflectionInvocationContext.java:181)
-    	at org.apache.openejb.core.interceptor.ReflectionInvocationContext.proceed(ReflectionInvocationContext.java:163)
-    	at org.apache.openejb.core.interceptor.InterceptorStack.invoke(InterceptorStack.java:130)
-    	at org.apache.openejb.core.stateless.StatelessContainer._invoke(StatelessContainer.java:226)
-    	at org.apache.openejb.core.stateless.StatelessContainer.invoke(StatelessContainer.java:178)
-    	at org.apache.openejb.core.ivm.EjbObjectProxyHandler.synchronizedBusinessMethod(EjbObjectProxyHandler.java:255)
-    	at org.apache.openejb.core.ivm.EjbObjectProxyHandler.businessMethod(EjbObjectProxyHandler.java:235)
-    	at org.apache.openejb.core.ivm.EjbObjectProxyHandler._invoke(EjbObjectProxyHandler.java:92)
-    	at org.apache.openejb.core.ivm.BaseEjbProxyHandler.invoke(BaseEjbProxyHandler.java:284)
-    	at $Proxy44.subtract(Unknown Source)
-    	at org.superbiz.cdi.decorators.CalculatorTest.testSubtract(CalculatorTest.java:59)
-    	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
-    	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
-    	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
-    	at java.lang.reflect.Method.invoke(Method.java:597)
-    	at junit.framework.TestCase.runTest(TestCase.java:168)
-    	at junit.framework.TestCase.runBare(TestCase.java:134)
-    	at junit.framework.TestResult$1.protect(TestResult.java:110)
-    	at junit.framework.TestResult.runProtected(TestResult.java:128)
-    	at junit.framework.TestResult.run(TestResult.java:113)
-    	at junit.framework.TestCase.run(TestCase.java:124)
-    	at junit.framework.TestSuite.runTest(TestSuite.java:232)
-    	at junit.framework.TestSuite.run(TestSuite.java:227)
-    	at org.junit.internal.runners.JUnit38ClassRunner.run(JUnit38ClassRunner.java:83)
-    	at org.apache.maven.surefire.junit4.JUnit4TestSet.execute(JUnit4TestSet.java:35)
-    	at org.apache.maven.surefire.junit4.JUnit4Provider.executeTestSet(JUnit4Provider.java:115)
-    	at org.apache.maven.surefire.junit4.JUnit4Provider.invoke(JUnit4Provider.java:97)
-    	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
-    	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
-    	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
-    	at java.lang.reflect.Method.invoke(Method.java:597)
-    	at org.apache.maven.surefire.booter.ProviderFactory$ClassLoaderProxy.invoke(ProviderFactory.java:103)
-    	at $Proxy0.invoke(Unknown Source)
-    	at org.apache.maven.surefire.booter.SurefireStarter.invokeProvider(SurefireStarter.java:150)
-    	at org.apache.maven.surefire.booter.SurefireStarter.runSuitesInProcess(SurefireStarter.java:91)
-    	at org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:69)
-    INFO - EJBContainer already initialized.  Call ejbContainer.close() to allow reinitialization
-    INFO - EJBContainer already initialized.  Call ejbContainer.close() to allow reinitialization
-    INFO - EJBContainer already initialized.  Call ejbContainer.close() to allow reinitialization
-    Tests run: 5, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 1.338 sec
-    
-    Results :
-    
-    Tests run: 5, Failures: 0, Errors: 0, Skipped: 0
-    


[3/3] tomee git commit: Put in the Java EE Connectors index-group

Posted by db...@apache.org.
Put in the Java EE Connectors index-group


Project: http://git-wip-us.apache.org/repos/asf/tomee/repo
Commit: http://git-wip-us.apache.org/repos/asf/tomee/commit/01495dd6
Tree: http://git-wip-us.apache.org/repos/asf/tomee/tree/01495dd6
Diff: http://git-wip-us.apache.org/repos/asf/tomee/diff/01495dd6

Branch: refs/heads/master
Commit: 01495dd66d605718dbbada6541a2a5fbc1402ccf
Parents: cafa508
Author: David Blevins <da...@gmail.com>
Authored: Sun Dec 30 13:32:07 2018 -0800
Committer: David Blevins <da...@gmail.com>
Committed: Sun Dec 30 13:32:07 2018 -0800

----------------------------------------------------------------------
 examples/connector-war/README.adoc | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/tomee/blob/01495dd6/examples/connector-war/README.adoc
----------------------------------------------------------------------
diff --git a/examples/connector-war/README.adoc b/examples/connector-war/README.adoc
index b5d75e9..18c654e 100644
--- a/examples/connector-war/README.adoc
+++ b/examples/connector-war/README.adoc
@@ -1,8 +1,8 @@
-index-group=Unrevised 
+index-group=Java EE Connectors
 type=page 
 status=published 
 
-= Movies Complete
+= Connectors in WAR Files
 
 
 == AddInterceptor


[2/3] tomee git commit: Merge branch 'TOMEE-2433-migrating-md-to-adoc' of github.com:yenerm/tomee

Posted by db...@apache.org.
Merge branch 'TOMEE-2433-migrating-md-to-adoc' of github.com:yenerm/tomee


Project: http://git-wip-us.apache.org/repos/asf/tomee/repo
Commit: http://git-wip-us.apache.org/repos/asf/tomee/commit/cafa508b
Tree: http://git-wip-us.apache.org/repos/asf/tomee/tree/cafa508b
Diff: http://git-wip-us.apache.org/repos/asf/tomee/diff/cafa508b

Branch: refs/heads/master
Commit: cafa508b61a2efb4a4213d1735263ba193605cbf
Parents: 12c20b0 4d0c9b1
Author: David Blevins <da...@gmail.com>
Authored: Sun Dec 30 13:26:46 2018 -0800
Committer: David Blevins <da...@gmail.com>
Committed: Sun Dec 30 13:26:46 2018 -0800

----------------------------------------------------------------------
 examples/connector-war/README.adoc | 362 ++++++++++++++++++++++++++++
 examples/connector-war/README.md   | 344 --------------------------
 examples/decorators/README.adoc    | 411 ++++++++++++++++++++++++++++++++
 examples/decorators/README.md      | 393 ------------------------------
 4 files changed, 773 insertions(+), 737 deletions(-)
----------------------------------------------------------------------