Author: dain
Date: Mon Sep 24 13:56:25 2007
New Revision: 578962

URL: http://svn.apache.org/viewvc?rev=578962&view=rev
Log:
Merging 578939 from trunk
Fixed persistence units in Tomcat plugin
Aded persistence unit example to ejb-examples.war

Added:
    
openejb/branches/3.0-beta-1/examples/ejb-examples/src/main/java/org/apache/openejb/examples/servlet/JpaBean.java
      - copied unchanged from r578939, 
openejb/trunk/openejb3/examples/ejb-examples/src/main/java/org/apache/openejb/examples/servlet/JpaBean.java
    
openejb/branches/3.0-beta-1/examples/ejb-examples/src/main/java/org/apache/openejb/examples/servlet/JpaServlet.java
      - copied unchanged from r578939, 
openejb/trunk/openejb3/examples/ejb-examples/src/main/java/org/apache/openejb/examples/servlet/JpaServlet.java
    
openejb/branches/3.0-beta-1/examples/ejb-examples/src/main/resources/META-INF/
      - copied from r578939, 
openejb/trunk/openejb3/examples/ejb-examples/src/main/resources/META-INF/
    
openejb/branches/3.0-beta-1/examples/ejb-examples/src/main/resources/META-INF/persistence.xml
      - copied unchanged from r578939, 
openejb/trunk/openejb3/examples/ejb-examples/src/main/resources/META-INF/persistence.xml
Modified:
    openejb/branches/3.0-beta-1/assembly/openejb-tomcat/maven.xml
    
openejb/branches/3.0-beta-1/assembly/openejb-tomcat/src/main/java/org/apache/openejb/tomcat/TomcatWebAppBuilder.java
    
openejb/branches/3.0-beta-1/container/openejb-core/src/main/java/org/apache/openejb/assembler/classic/Assembler.java
    
openejb/branches/3.0-beta-1/container/openejb-core/src/main/java/org/apache/openejb/assembler/classic/JndiEncBuilder.java
    
openejb/branches/3.0-beta-1/container/openejb-core/src/main/java/org/apache/openejb/assembler/classic/WebAppBuilder.java
    
openejb/branches/3.0-beta-1/examples/ejb-examples/src/main/webapp/WEB-INF/web.xml

Modified: openejb/branches/3.0-beta-1/assembly/openejb-tomcat/maven.xml
URL: 
http://svn.apache.org/viewvc/openejb/branches/3.0-beta-1/assembly/openejb-tomcat/maven.xml?rev=578962&r1=578961&r2=578962&view=diff
==============================================================================
--- openejb/branches/3.0-beta-1/assembly/openejb-tomcat/maven.xml (original)
+++ openejb/branches/3.0-beta-1/assembly/openejb-tomcat/maven.xml Mon Sep 24 
13:56:25 2007
@@ -208,7 +208,7 @@
 
     <goal name="setup:ejb-examples">
       <mkdir dir="${tomcat.home}/webapps/ejb-examples"/>
-      <unjar 
src="${user.home}/.m2/repository/org/apache/openejb/servlet-samples/1.0-SNAPSHOT/servlet-samples-1.0-SNAPSHOT.war"
 dest="${tomcat.home}/webapps/ejb-examples"/>
+      <unjar 
src="${user.home}/.m2/repository/org/apache/openejb/ejb-examples/1.0-SNAPSHOT/ejb-examples-1.0-SNAPSHOT.war"
 dest="${tomcat.home}/webapps/ejb-examples"/>
     </goal>
 
     <!--======================-->
@@ -219,7 +219,7 @@
       <attainGoal name="tomcat6"/>
       <attainGoal name="setup:tomcat"/>
       <attainGoal name="setup:loader-webapp"/>
-      <attainGoal name="setup:itests-war"/>
+      <!--<attainGoal name="setup:itests-war"/>-->
       <attainGoal name="setup:ejb-examples"/>
       <attainGoal name="start:tomcat"/>
     </goal>
@@ -228,7 +228,7 @@
       <attainGoal name="tomcat6"/>
       <attainGoal name="setup:tomcat"/>
       <attainGoal name="setup:loader-webapp"/>
-      <attainGoal name="setup:itests-war"/>
+      <!--<attainGoal name="setup:itests-war"/>-->
       <attainGoal name="setup:ejb-examples"/>
       <attainGoal name="start:tomcat-debug"/>
     </goal>

Modified: 
openejb/branches/3.0-beta-1/assembly/openejb-tomcat/src/main/java/org/apache/openejb/tomcat/TomcatWebAppBuilder.java
URL: 
http://svn.apache.org/viewvc/openejb/branches/3.0-beta-1/assembly/openejb-tomcat/src/main/java/org/apache/openejb/tomcat/TomcatWebAppBuilder.java?rev=578962&r1=578961&r2=578962&view=diff
==============================================================================
--- 
openejb/branches/3.0-beta-1/assembly/openejb-tomcat/src/main/java/org/apache/openejb/tomcat/TomcatWebAppBuilder.java
 (original)
+++ 
openejb/branches/3.0-beta-1/assembly/openejb-tomcat/src/main/java/org/apache/openejb/tomcat/TomcatWebAppBuilder.java
 Mon Sep 24 13:56:25 2007
@@ -30,6 +30,7 @@
 import org.apache.openejb.assembler.classic.JndiEncBuilder;
 import org.apache.openejb.assembler.classic.WebAppBuilder;
 import org.apache.openejb.assembler.classic.WebAppInfo;
+import org.apache.openejb.assembler.classic.LinkResolver;
 import org.apache.openejb.config.AppModule;
 import org.apache.openejb.config.ConfigurationFactory;
 import org.apache.openejb.config.DeploymentLoader;
@@ -48,6 +49,7 @@
 import javax.naming.Context;
 import javax.naming.NamingException;
 import javax.servlet.ServletContext;
+import javax.persistence.EntityManagerFactory;
 import java.io.File;
 import java.io.IOException;
 import java.net.URL;
@@ -95,11 +97,11 @@
     // OpenEJB WebAppBuilder
     //
 
-    public void deploy(WebAppInfo webAppInfo) throws Exception {
+    public void deploy(WebAppInfo webAppInfo, 
LinkResolver<EntityManagerFactory> emfLinkResolver) throws Exception {
         StandardContext standardContext = 
getContextInfo(webAppInfo.moduleId).standardContext;
 
         if (standardContext != null) {
-            JndiEncBuilder jndiEncBuilder = new 
JndiEncBuilder(webAppInfo.jndiEnc, webAppInfo.moduleId);
+            JndiEncBuilder jndiEncBuilder = new 
JndiEncBuilder(webAppInfo.jndiEnc, "Bean", emfLinkResolver, 
webAppInfo.moduleId);
             jndiEncBuilder.setUseCrossClassLoaderRef(false);
             Context enc = (Context) jndiEncBuilder.build().lookup("env");
             bindEnc(standardContext, enc);

Modified: 
openejb/branches/3.0-beta-1/container/openejb-core/src/main/java/org/apache/openejb/assembler/classic/Assembler.java
URL: 
http://svn.apache.org/viewvc/openejb/branches/3.0-beta-1/container/openejb-core/src/main/java/org/apache/openejb/assembler/classic/Assembler.java?rev=578962&r1=578961&r2=578962&view=diff
==============================================================================
--- 
openejb/branches/3.0-beta-1/container/openejb-core/src/main/java/org/apache/openejb/assembler/classic/Assembler.java
 (original)
+++ 
openejb/branches/3.0-beta-1/container/openejb-core/src/main/java/org/apache/openejb/assembler/classic/Assembler.java
 Mon Sep 24 13:56:25 2007
@@ -542,7 +542,7 @@
             WebAppBuilder webAppBuilder = 
SystemInstance.get().getComponent(WebAppBuilder.class);
             if (webAppBuilder != null) {
                 for (WebAppInfo webAppInfo : appInfo.webApps) {
-                    webAppBuilder.deploy(webAppInfo);
+                    webAppBuilder.deploy(webAppInfo, emfLinkResolver);
                 }
             }
 

Modified: 
openejb/branches/3.0-beta-1/container/openejb-core/src/main/java/org/apache/openejb/assembler/classic/JndiEncBuilder.java
URL: 
http://svn.apache.org/viewvc/openejb/branches/3.0-beta-1/container/openejb-core/src/main/java/org/apache/openejb/assembler/classic/JndiEncBuilder.java?rev=578962&r1=578961&r2=578962&view=diff
==============================================================================
--- 
openejb/branches/3.0-beta-1/container/openejb-core/src/main/java/org/apache/openejb/assembler/classic/JndiEncBuilder.java
 (original)
+++ 
openejb/branches/3.0-beta-1/container/openejb-core/src/main/java/org/apache/openejb/assembler/classic/JndiEncBuilder.java
 Mon Sep 24 13:56:25 2007
@@ -272,39 +272,41 @@
             }
         }
 
-        for (PersistenceUnitReferenceInfo referenceInfo : 
jndiEnc.persistenceUnitRefs) {
-            if (referenceInfo.location != null){
-                Reference reference = 
buildReferenceLocation(referenceInfo.location);
+        if (emfLinkResolver != null) {
+            for (PersistenceUnitReferenceInfo referenceInfo : 
jndiEnc.persistenceUnitRefs) {
+                if (referenceInfo.location != null){
+                    Reference reference = 
buildReferenceLocation(referenceInfo.location);
+                    bindings.put(normalize(referenceInfo.referenceName), 
reference);
+                    continue;
+                }
+
+                EntityManagerFactory factory = 
emfLinkResolver.resolveLink(referenceInfo.persistenceUnitName, moduleUri);
+                if (factory == null) {
+                    throw new IllegalArgumentException("Persistence unit " + 
referenceInfo.persistenceUnitName + " for persistence-unit-ref " +
+                            referenceInfo.referenceName + " not found");
+                }
+
+                Reference reference = new PersistenceUnitReference(factory);
                 bindings.put(normalize(referenceInfo.referenceName), 
reference);
-                continue;
             }
 
-            EntityManagerFactory factory = 
emfLinkResolver.resolveLink(referenceInfo.persistenceUnitName, moduleUri);
-            if (factory == null) {
-                throw new IllegalArgumentException("Persistence unit " + 
referenceInfo.persistenceUnitName + " for persistence-unit-ref " +
-                        referenceInfo.referenceName + " not found");
-            }
+            for (PersistenceContextReferenceInfo contextInfo : 
jndiEnc.persistenceContextRefs) {
+                if (contextInfo.location != null){
+                    Reference reference = 
buildReferenceLocation(contextInfo.location);
+                    bindings.put(normalize(contextInfo.referenceName), 
reference);
+                    continue;
+                }
 
-            Reference reference = new PersistenceUnitReference(factory);
-            bindings.put(normalize(referenceInfo.referenceName), reference);
-        }
+                EntityManagerFactory factory = 
emfLinkResolver.resolveLink(contextInfo.persistenceUnitName, moduleUri);
+                if (factory == null) {
+                    throw new IllegalArgumentException("Persistence unit " + 
contextInfo.persistenceUnitName + " for persistence-context-ref " +
+                            contextInfo.referenceName + " not found");
+                }
 
-        for (PersistenceContextReferenceInfo contextInfo : 
jndiEnc.persistenceContextRefs) {
-            if (contextInfo.location != null){
-                Reference reference = 
buildReferenceLocation(contextInfo.location);
+                JtaEntityManager jtaEntityManager = new 
JtaEntityManager(jtaEntityManagerRegistry, factory, contextInfo.properties, 
contextInfo.extended);
+                Reference reference = new 
PersistenceContextReference(jtaEntityManager);
                 bindings.put(normalize(contextInfo.referenceName), reference);
-                continue;
             }
-
-            EntityManagerFactory factory = 
emfLinkResolver.resolveLink(contextInfo.persistenceUnitName, moduleUri);
-            if (factory == null) {
-                throw new IllegalArgumentException("Persistence unit " + 
contextInfo.persistenceUnitName + " for persistence-context-ref " +
-                        contextInfo.referenceName + " not found");
-            }
-
-            JtaEntityManager jtaEntityManager = new 
JtaEntityManager(jtaEntityManagerRegistry, factory, contextInfo.properties, 
contextInfo.extended);
-            Reference reference = new 
PersistenceContextReference(jtaEntityManager);
-            bindings.put(normalize(contextInfo.referenceName), reference);
         }
 
         for (ServiceReferenceInfo referenceInfo : jndiEnc.serviceRefs) {

Modified: 
openejb/branches/3.0-beta-1/container/openejb-core/src/main/java/org/apache/openejb/assembler/classic/WebAppBuilder.java
URL: 
http://svn.apache.org/viewvc/openejb/branches/3.0-beta-1/container/openejb-core/src/main/java/org/apache/openejb/assembler/classic/WebAppBuilder.java?rev=578962&r1=578961&r2=578962&view=diff
==============================================================================
--- 
openejb/branches/3.0-beta-1/container/openejb-core/src/main/java/org/apache/openejb/assembler/classic/WebAppBuilder.java
 (original)
+++ 
openejb/branches/3.0-beta-1/container/openejb-core/src/main/java/org/apache/openejb/assembler/classic/WebAppBuilder.java
 Mon Sep 24 13:56:25 2007
@@ -17,7 +17,9 @@
  */
 package org.apache.openejb.assembler.classic;
 
+import javax.persistence.EntityManagerFactory;
+
 public interface WebAppBuilder {
-    void deploy(WebAppInfo webAppInfo) throws Exception;
+    void deploy(WebAppInfo webAppInfo, LinkResolver<EntityManagerFactory> 
emfLinkResolver) throws Exception;
     void undeploy(WebAppInfo webAppInfo) throws Exception;
 }

Modified: 
openejb/branches/3.0-beta-1/examples/ejb-examples/src/main/webapp/WEB-INF/web.xml
URL: 
http://svn.apache.org/viewvc/openejb/branches/3.0-beta-1/examples/ejb-examples/src/main/webapp/WEB-INF/web.xml?rev=578962&r1=578961&r2=578962&view=diff
==============================================================================
--- 
openejb/branches/3.0-beta-1/examples/ejb-examples/src/main/webapp/WEB-INF/web.xml
 (original)
+++ 
openejb/branches/3.0-beta-1/examples/ejb-examples/src/main/webapp/WEB-INF/web.xml
 Mon Sep 24 13:56:25 2007
@@ -32,4 +32,14 @@
     <servlet-name>AnnotatedServlet</servlet-name>
     <url-pattern>/annotated/*</url-pattern>
   </servlet-mapping>
+
+  <servlet>
+    <servlet-name>JpaServlet</servlet-name>
+    
<servlet-class>org.apache.openejb.examples.servlet.JpaServlet</servlet-class>
+  </servlet>
+
+  <servlet-mapping>
+    <servlet-name>JpaServlet</servlet-name>
+    <url-pattern>/jpa/*</url-pattern>
+  </servlet-mapping>
 </web-app>


Reply via email to