You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@myfaces.apache.org by im...@apache.org on 2007/09/08 15:31:25 UTC

svn commit: r573837 - in /myfaces/orchestra/trunk/examples/src/main: java/org/apache/myfaces/examples/mops/dao/ProductDao.java webapp/WEB-INF/applicationContext.xml

Author: imario
Date: Sat Sep  8 06:31:24 2007
New Revision: 573837

URL: http://svn.apache.org/viewvc?rev=573837&view=rev
Log:
demonstrate use of Orchestra without annotations

Modified:
    myfaces/orchestra/trunk/examples/src/main/java/org/apache/myfaces/examples/mops/dao/ProductDao.java
    myfaces/orchestra/trunk/examples/src/main/webapp/WEB-INF/applicationContext.xml

Modified: myfaces/orchestra/trunk/examples/src/main/java/org/apache/myfaces/examples/mops/dao/ProductDao.java
URL: http://svn.apache.org/viewvc/myfaces/orchestra/trunk/examples/src/main/java/org/apache/myfaces/examples/mops/dao/ProductDao.java?rev=573837&r1=573836&r2=573837&view=diff
==============================================================================
--- myfaces/orchestra/trunk/examples/src/main/java/org/apache/myfaces/examples/mops/dao/ProductDao.java (original)
+++ myfaces/orchestra/trunk/examples/src/main/java/org/apache/myfaces/examples/mops/dao/ProductDao.java Sat Sep  8 06:31:24 2007
@@ -19,35 +19,49 @@
 package org.apache.myfaces.examples.mops.dao;
 
 import org.apache.myfaces.examples.mops.model.Product;
+import org.springframework.orm.jpa.JpaCallback;
+import org.springframework.orm.jpa.support.JpaDaoSupport;
 
-import javax.persistence.EntityManager;
-import javax.persistence.PersistenceContext;
 import javax.persistence.Query;
+import javax.persistence.EntityManager;
+import javax.persistence.PersistenceException;
 import java.util.List;
 
-public class ProductDao
+/**
+ * <p>
+ * Deals with PetStore products.
+ * </p>
+ * <p>
+ * Notice: This class uses Spring's JpaDaoSupport just to demonstrate that
+ * Orchestra is not bound to annotations.
+ * </p> 
+ */
+public class ProductDao extends JpaDaoSupport
 {
-	@PersistenceContext
-	private EntityManager entityManager;
-
 	public Product getByKey(Long productId)
 	{
-		return entityManager.find(Product.class, productId);
+        return getJpaTemplate().find(Product.class, productId);
 	}
 
 	public List<Product> getAll()
 	{
-		return entityManager.createNamedQuery("productsAll").getResultList();
+		return getJpaTemplate().findByNamedQuery("productsAll");
 	}
-	public List<Product> getProductsByFulltext(String text)
+	public List<Product> getProductsByFulltext(final String text)
 	{
-		Query query = entityManager.createNamedQuery("productByFulltext");
-		query.setParameter("description", "%" + text.toLowerCase() + "%");
-		return query.getResultList();
-	}
+        return (List<Product>) getJpaTemplate().execute(new JpaCallback()
+        {
+            public Object doInJpa(EntityManager entityManager) throws PersistenceException
+            {
+                Query query = entityManager.createNamedQuery("productByFulltext");
+                query.setParameter("description", "%" + text.toLowerCase() + "%");
+                return query.getResultList();
+            }
+        });
+    }
 
 	public void save(Product product)
 	{
-		entityManager.persist(product);
+		getJpaTemplate().persist(product);
 	}
 }

Modified: myfaces/orchestra/trunk/examples/src/main/webapp/WEB-INF/applicationContext.xml
URL: http://svn.apache.org/viewvc/myfaces/orchestra/trunk/examples/src/main/webapp/WEB-INF/applicationContext.xml?rev=573837&r1=573836&r2=573837&view=diff
==============================================================================
--- myfaces/orchestra/trunk/examples/src/main/webapp/WEB-INF/applicationContext.xml (original)
+++ myfaces/orchestra/trunk/examples/src/main/webapp/WEB-INF/applicationContext.xml Sat Sep  8 06:31:24 2007
@@ -333,9 +333,13 @@
 
 	<bean
 		name="productDao"
-		class="org.apache.myfaces.examples.mops.dao.ProductDao" />
+		class="org.apache.myfaces.examples.mops.dao.ProductDao">
 
-	<bean
+        <property name="entityManagerFactory" ref="entityManagerFactory"/>
+        
+    </bean>
+
+    <bean
 		name="productPriceDao"
 		class="org.apache.myfaces.examples.mops.dao.ProductPriceDao" />