Author: jlmonteiro
Date: Mon May 3 11:08:59 2010
New Revision: 940417
URL: http://svn.apache.org/viewvc?rev=940417&view=rev
Log:
OPENEJB-1236: Provide JPA 2.0 support in addition to JPA 1.0
--> initial working version
Modified:
openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/assembler/classic/PersistenceBuilder.java
openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/assembler/classic/PersistenceUnitInfo.java
openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/config/AppInfoBuilder.java
openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/persistence/JtaEntityManager.java
openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/persistence/JtaQuery.java
openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/persistence/PersistenceUnitInfoImpl.java
openejb/trunk/openejb3/deps/javaee-api/pom.xml
openejb/trunk/openejb3/pom.xml
Modified:
openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/assembler/classic/PersistenceBuilder.java
URL:
http://svn.apache.org/viewvc/openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/assembler/classic/PersistenceBuilder.java?rev=940417&r1=940416&r2=940417&view=diff
==============================================================================
---
openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/assembler/classic/PersistenceBuilder.java
(original)
+++
openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/assembler/classic/PersistenceBuilder.java
Mon May 3 11:08:59 2010
@@ -16,11 +16,12 @@
*/
package org.apache.openejb.assembler.classic;
-import java.io.File;
import java.util.HashMap;
import javax.persistence.EntityManagerFactory;
import javax.persistence.spi.PersistenceProvider;
import javax.persistence.spi.PersistenceUnitTransactionType;
+import javax.persistence.SharedCacheMode;
+import javax.persistence.ValidationMode;
import javax.sql.DataSource;
import javax.naming.Context;
import javax.naming.NamingException;
@@ -133,7 +134,18 @@ public class PersistenceBuilder {
// Handle Properties
unitInfo.setProperties(info.properties);
-
+
+ // Schema version of the persistence.xml file
+
unitInfo.setPersistenceXMLSchemaVersion(info.persistenceXMLSchemaVersion);
+
+ // Second-level cache mode for the persistence unit
+ SharedCacheMode sharedCacheMode = Enum.valueOf(SharedCacheMode.class,
info.sharedCacheMode);
+ unitInfo.setSharedCacheMode(sharedCacheMode);
+
+ // The validation mode to be used for the persistence unit
+ ValidationMode validationMode = Enum.valueOf(ValidationMode.class,
info.validationMode);
+ unitInfo.setValidationMode(validationMode);
+
// Persistence Unit Transaction Type
if (transactionTypeEnv != null) {
try {
Modified:
openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/assembler/classic/PersistenceUnitInfo.java
URL:
http://svn.apache.org/viewvc/openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/assembler/classic/PersistenceUnitInfo.java?rev=940417&r1=940416&r2=940417&view=diff
==============================================================================
---
openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/assembler/classic/PersistenceUnitInfo.java
(original)
+++
openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/assembler/classic/PersistenceUnitInfo.java
Mon May 3 11:08:59 2010
@@ -36,4 +36,7 @@ public class PersistenceUnitInfo extends
public final Properties properties = new Properties();
public String persistenceUnitRootUrl;
public final Set<String> watchedResources = new TreeSet<String>();
+ public String persistenceXMLSchemaVersion;
+ public String sharedCacheMode;
+ public String validationMode;
}
Modified:
openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/config/AppInfoBuilder.java
URL:
http://svn.apache.org/viewvc/openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/config/AppInfoBuilder.java?rev=940417&r1=940416&r2=940417&view=diff
==============================================================================
---
openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/config/AppInfoBuilder.java
(original)
+++
openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/config/AppInfoBuilder.java
Mon May 3 11:08:59 2010
@@ -489,6 +489,10 @@ class AppInfoBuilder {
info.jarFiles.addAll(persistenceUnit.getJarFile());
info.classes.addAll(persistenceUnit.getClazz());
info.mappingFiles.addAll(persistenceUnit.getMappingFile());
+
+ info.persistenceXMLSchemaVersion = persistence.getVersion();
+ info.sharedCacheMode =
persistenceUnit.getSharedCacheMode().toString();
+ info.validationMode =
persistenceUnit.getValidationMode().toString();
// Handle Properties
org.apache.openejb.jee.jpa.unit.Properties puiProperties =
persistenceUnit.getProperties();
Modified:
openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/persistence/JtaEntityManager.java
URL:
http://svn.apache.org/viewvc/openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/persistence/JtaEntityManager.java?rev=940417&r1=940416&r2=940417&view=diff
==============================================================================
---
openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/persistence/JtaEntityManager.java
(original)
+++
openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/persistence/JtaEntityManager.java
Mon May 3 11:08:59 2010
@@ -18,6 +18,8 @@
package org.apache.openejb.persistence;
import java.util.Map;
+import java.util.Set;
+
import javax.persistence.FlushModeType;
import javax.persistence.LockModeType;
import javax.persistence.Query;
@@ -25,6 +27,10 @@ import javax.persistence.EntityTransacti
import javax.persistence.EntityManager;
import javax.persistence.EntityManagerFactory;
import javax.persistence.TransactionRequiredException;
+import javax.persistence.TypedQuery;
+import javax.persistence.criteria.CriteriaBuilder;
+import javax.persistence.criteria.CriteriaQuery;
+import javax.persistence.metamodel.Metamodel;
/**
* The JtaEntityManager is a wrapper around an entity manager that
automatically creates and closes entity managers
@@ -219,4 +225,199 @@ public class JtaEntityManager implements
public EntityTransaction getTransaction() {
throw new IllegalStateException("A JTA EntityManager can not use the
EntityTransaction API. See JPA 1.0 section 5.5");
}
+
+ // JPA 2.0
+ /* (non-Javadoc)
+ * @see javax.persistence.EntityManager#createNamedQuery(java.lang.String,
java.lang.Class)
+ */
+ public <T> TypedQuery<T> createNamedQuery(String name, Class<T>
resultClass) {
+ EntityManager entityManager = getEntityManager();
+ try {
+ return entityManager.createNamedQuery(name, resultClass);
+ } finally {
+ closeIfNoTx(entityManager);
+ }
+ }
+ /* (non-Javadoc)
+ * @see
javax.persistence.EntityManager#createQuery(javax.persistence.criteria.CriteriaQuery)
+ */
+ public <T> TypedQuery<T> createQuery(CriteriaQuery<T> criteriaQuery) {
+ EntityManager entityManager = getEntityManager();
+ try {
+ return entityManager.createQuery(criteriaQuery);
+ } finally {
+ closeIfNoTx(entityManager);
+ }
+ }
+ /* (non-Javadoc)
+ * @see javax.persistence.EntityManager#createQuery(java.lang.String,
java.lang.Class)
+ */
+ public <T> TypedQuery<T> createQuery(String qlString, Class<T>
resultClass) {
+ EntityManager entityManager = getEntityManager();
+ try {
+ return entityManager.createQuery(qlString, resultClass);
+ } finally {
+ closeIfNoTx(entityManager);
+ }
+ }
+ /* (non-Javadoc)
+ * @see javax.persistence.EntityManager#detach(java.lang.Object)
+ */
+ public void detach(Object entity) {
+ EntityManager entityManager = getEntityManager();
+ try {
+ entityManager.detach(entity);
+ } finally {
+ closeIfNoTx(entityManager);
+ }
+ }
+ /* (non-Javadoc)
+ * @see javax.persistence.EntityManager#find(java.lang.Class,
java.lang.Object, java.util.Map)
+ */
+ public <T> T find(Class<T> entityClass, Object primaryKey, Map<String,
Object> properties) {
+ EntityManager entityManager = getEntityManager();
+ try {
+ return entityManager.find(entityClass, primaryKey, properties);
+ } finally {
+ closeIfNoTx(entityManager);
+ }
+ }
+ /* (non-Javadoc)
+ * @see javax.persistence.EntityManager#find(java.lang.Class,
java.lang.Object, javax.persistence.LockModeType)
+ */
+ public <T> T find(Class<T> entityClass, Object primaryKey, LockModeType
lockMode) {
+ EntityManager entityManager = getEntityManager();
+ try {
+ return entityManager.find(entityClass, entityManager, lockMode);
+ } finally {
+ closeIfNoTx(entityManager);
+ }
+ }
+ /* (non-Javadoc)
+ * @see javax.persistence.EntityManager#find(java.lang.Class,
java.lang.Object, javax.persistence.LockModeType, java.util.Map)
+ */
+ public <T> T find(Class<T> entityClass, Object primaryKey, LockModeType
lockMode, Map<String, Object> properties) {
+ EntityManager entityManager = getEntityManager();
+ try {
+ return entityManager.find(entityClass, entityManager, lockMode,
properties);
+ } finally {
+ closeIfNoTx(entityManager);
+ }
+ }
+ /* (non-Javadoc)
+ * @see javax.persistence.EntityManager#getEntityManagerFactory()
+ */
+ public EntityManagerFactory getEntityManagerFactory() {
+ return entityManagerFactory;
+ }
+ /* (non-Javadoc)
+ * @see javax.persistence.EntityManager#getLockMode(java.lang.Object)
+ */
+ public LockModeType getLockMode(Object entity) {
+ EntityManager entityManager = getEntityManager();
+ try {
+ return entityManager.getLockMode(entity);
+ } finally {
+ closeIfNoTx(entityManager);
+ }
+ }
+ /* (non-Javadoc)
+ * @see javax.persistence.EntityManager#getMetamodel()
+ */
+ public Metamodel getMetamodel() {
+ EntityManager entityManager = getEntityManager();
+ try {
+ return entityManager.getMetamodel();
+ } finally {
+ closeIfNoTx(entityManager);
+ }
+ }
+ /* (non-Javadoc)
+ * @see javax.persistence.EntityManager#getProperties()
+ */
+ public Map<String, Object> getProperties() {
+ EntityManager entityManager = getEntityManager();
+ try {
+ return entityManager.getProperties();
+ } finally {
+ closeIfNoTx(entityManager);
+ }
+ }
+ /* (non-Javadoc)
+ * @see javax.persistence.EntityManager#getCriteriaBuilder()
+ */
+ public CriteriaBuilder getCriteriaBuilder() {
+ EntityManager entityManager = getEntityManager();
+ try {
+ return entityManager.getCriteriaBuilder();
+ } finally {
+ closeIfNoTx(entityManager);
+ }
+ }
+ /* (non-Javadoc)
+ * @see javax.persistence.EntityManager#lock(java.lang.Object,
javax.persistence.LockModeType, java.util.Map)
+ */
+ public void lock(Object entity, LockModeType lockMode, Map<String, Object>
properties) {
+ EntityManager entityManager = getEntityManager();
+ try {
+ entityManager.lock(entityManager, lockMode, properties);
+ } finally {
+ closeIfNoTx(entityManager);
+ }
+ }
+ /* (non-Javadoc)
+ * @see javax.persistence.EntityManager#refresh(java.lang.Object,
java.util.Map)
+ */
+ public void refresh(Object entity, Map<String, Object> properties) {
+ EntityManager entityManager = getEntityManager();
+ try {
+ entityManager.refresh(entityManager, properties);
+ } finally {
+ closeIfNoTx(entityManager);
+ }
+ }
+ /* (non-Javadoc)
+ * @see javax.persistence.EntityManager#refresh(java.lang.Object,
javax.persistence.LockModeType)
+ */
+ public void refresh(Object entity, LockModeType lockMode) {
+ EntityManager entityManager = getEntityManager();
+ try {
+ entityManager.refresh(entityManager, lockMode);
+ } finally {
+ closeIfNoTx(entityManager);
+ }
+ }
+ /* (non-Javadoc)
+ * @see javax.persistence.EntityManager#refresh(java.lang.Object,
javax.persistence.LockModeType, java.util.Map)
+ */
+ public void refresh(Object entity, LockModeType lockMode, Map<String,
Object> properties) {
+ EntityManager entityManager = getEntityManager();
+ try {
+ entityManager.refresh(entityManager, lockMode, properties);
+ } finally {
+ closeIfNoTx(entityManager);
+ }
+ }
+ /* (non-Javadoc)
+ * @see javax.persistence.EntityManager#setProperty(java.lang.String,
java.lang.Object)
+ */
+ public void setProperty(String name, Object value) {
+ EntityManager entityManager = getEntityManager();
+ try {
+ entityManager.setProperty(name, value);
+ } finally {
+ closeIfNoTx(entityManager);
+ }
+ }
+ /* (non-Javadoc)
+ * @see javax.persistence.EntityManager#unwrap(java.lang.Class)
+ */
+ public <T> T unwrap(Class<T> cls) {
+ EntityManager entityManager = getEntityManager();
+ try {
+ return entityManager.unwrap(cls);
+ } finally {
+ closeIfNoTx(entityManager);
+ }
+ }
}
Modified:
openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/persistence/JtaQuery.java
URL:
http://svn.apache.org/viewvc/openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/persistence/JtaQuery.java?rev=940417&r1=940416&r2=940417&view=diff
==============================================================================
---
openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/persistence/JtaQuery.java
(original)
+++
openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/persistence/JtaQuery.java
Mon May 3 11:08:59 2010
@@ -19,11 +19,15 @@ package org.apache.openejb.persistence;
import javax.persistence.EntityManager;
import javax.persistence.FlushModeType;
+import javax.persistence.LockModeType;
+import javax.persistence.Parameter;
import javax.persistence.Query;
import javax.persistence.TemporalType;
import java.util.Calendar;
import java.util.Date;
import java.util.List;
+import java.util.Map;
+import java.util.Set;
/**
* The JtaQuery is a wrapper around a query and and entity manager that
automatically closes the entity managers
@@ -111,4 +115,138 @@ public class JtaQuery implements Query {
query.setParameter(i, calendar, temporalType);
return this;
}
+
+ // JPA 2.0
+ /* (non-Javadoc)
+ * @see javax.persistence.Query#getFirstResult()
+ */
+ public int getFirstResult() {
+ return query.getFirstResult();
+ }
+
+ /* (non-Javadoc)
+ * @see javax.persistence.Query#getFlushMode()
+ */
+ public FlushModeType getFlushMode() {
+ return query.getFlushMode();
+ }
+
+ /* (non-Javadoc)
+ * @see javax.persistence.Query#getHints()
+ */
+ public Map<String, Object> getHints() {
+ return query.getHints();
+ }
+
+ /* (non-Javadoc)
+ * @see javax.persistence.Query#getLockMode()
+ */
+ public LockModeType getLockMode() {
+ return query.getLockMode();
+ }
+
+ /* (non-Javadoc)
+ * @see javax.persistence.Query#getMaxResults()
+ */
+ public int getMaxResults() {
+ return query.getMaxResults();
+ }
+
+ /* (non-Javadoc)
+ * @see javax.persistence.Query#getParameter(java.lang.String)
+ */
+ public Parameter<?> getParameter(String name) {
+ return query.getParameter(name);
+ }
+
+ /* (non-Javadoc)
+ * @see javax.persistence.Query#getParameter(int)
+ */
+ public Parameter<?> getParameter(int position) {
+ return query.getParameter(position);
+ }
+
+ /* (non-Javadoc)
+ * @see javax.persistence.Query#getParameter(java.lang.String,
java.lang.Class)
+ */
+ public <T> Parameter<T> getParameter(String name, Class<T> type) {
+ return query.getParameter(name, type);
+ }
+
+ /* (non-Javadoc)
+ * @see javax.persistence.Query#getParameter(int, java.lang.Class)
+ */
+ public <T> Parameter<T> getParameter(int position, Class<T> type) {
+ return query.getParameter(position, type);
+ }
+
+ /* (non-Javadoc)
+ * @see
javax.persistence.Query#getParameterValue(javax.persistence.Parameter)
+ */
+ public <T> T getParameterValue(Parameter<T> param) {
+ return query.getParameterValue(param);
+ }
+
+ /* (non-Javadoc)
+ * @see javax.persistence.Query#getParameterValue(java.lang.String)
+ */
+ public Object getParameterValue(String name) {
+ return query.getParameterValue(name);
+ }
+
+ /* (non-Javadoc)
+ * @see javax.persistence.Query#getParameterValue(int)
+ */
+ public Object getParameterValue(int position) {
+ return query.getParameterValue(position);
+ }
+
+ /* (non-Javadoc)
+ * @see javax.persistence.Query#getParameters()
+ */
+ public Set<Parameter<?>> getParameters() {
+ return query.getParameters();
+ }
+
+ /* (non-Javadoc)
+ * @see javax.persistence.Query#isBound(javax.persistence.Parameter)
+ */
+ public boolean isBound(Parameter<?> param) {
+ return query.isBound(param);
+ }
+
+ /* (non-Javadoc)
+ * @see javax.persistence.Query#setLockMode(javax.persistence.LockModeType)
+ */
+ public Query setLockMode(LockModeType lockMode) {
+ return query.setLockMode(lockMode);
+ }
+
+ /* (non-Javadoc)
+ * @see javax.persistence.Query#setParameter(javax.persistence.Parameter,
java.lang.Object)
+ */
+ public <T> Query setParameter(Parameter<T> param, T value) {
+ return query.setParameter(param, value);
+ }
+
+ /* (non-Javadoc)
+ * @see javax.persistence.Query#setParameter(javax.persistence.Parameter,
java.util.Calendar, javax.persistence.TemporalType)
+ */
+ public Query setParameter(Parameter<Calendar> param, Calendar value,
TemporalType temporalType) {
+ return query.setParameter(param, value, temporalType);
+ }
+
+ /* (non-Javadoc)
+ * @see javax.persistence.Query#setParameter(javax.persistence.Parameter,
java.util.Date, javax.persistence.TemporalType)
+ */
+ public Query setParameter(Parameter<Date> param, Date value, TemporalType
temporalType) {
+ return query.setParameter(param, value, temporalType);
+ }
+
+ /* (non-Javadoc)
+ * @see javax.persistence.Query#unwrap(java.lang.Class)
+ */
+ public <T> T unwrap(Class<T> cls) {
+ return query.unwrap(cls);
+ }
}
Modified:
openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/persistence/PersistenceUnitInfoImpl.java
URL:
http://svn.apache.org/viewvc/openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/persistence/PersistenceUnitInfoImpl.java?rev=940417&r1=940416&r2=940417&view=diff
==============================================================================
---
openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/persistence/PersistenceUnitInfoImpl.java
(original)
+++
openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/persistence/PersistenceUnitInfoImpl.java
Mon May 3 11:08:59 2010
@@ -16,16 +16,12 @@
*/
package org.apache.openejb.persistence;
-import org.apache.openejb.util.Join;
import java.lang.instrument.ClassFileTransformer;
import java.lang.instrument.IllegalClassFormatException;
import java.net.MalformedURLException;
import java.net.URL;
-import java.net.URI;
import java.net.URISyntaxException;
-import java.net.URLDecoder;
-import java.net.URLEncoder;
import java.security.ProtectionDomain;
import java.util.ArrayList;
import java.util.List;
@@ -35,6 +31,8 @@ import java.io.IOException;
import javax.persistence.spi.ClassTransformer;
import javax.persistence.spi.PersistenceUnitInfo;
import javax.persistence.spi.PersistenceUnitTransactionType;
+import javax.persistence.SharedCacheMode;
+import javax.persistence.ValidationMode;
import javax.sql.DataSource;
public class PersistenceUnitInfoImpl implements PersistenceUnitInfo {
@@ -111,6 +109,16 @@ public class PersistenceUnitInfoImpl imp
* Class loader used by JPA to load Entity classes.
*/
private ClassLoader classLoader;
+
+ // JPA 2.0
+ /** Schema version of the persistence.xml file */
+ private String persistenceXMLSchemaVersion;
+
+ /** Second-level cache mode for the persistence unit */
+ private SharedCacheMode sharedCacheMode;
+
+ /** The validation mode to be used for the persistence unit */
+ private ValidationMode validationMode;
public PersistenceUnitInfoImpl() {
this.persistenceClassLoaderHandler = null;
@@ -304,4 +312,48 @@ public class PersistenceUnitInfoImpl imp
return bytes;
}
}
+
+ // JPA 2.0
+ /* (non-Javadoc)
+ * @see
javax.persistence.spi.PersistenceUnitInfo#getPersistenceXMLSchemaVersion()
+ */
+ public String getPersistenceXMLSchemaVersion() {
+ return this.persistenceXMLSchemaVersion;
+ }
+
+ /**
+ * @param persistenceXMLSchemaVersion the persistenceXMLSchemaVersion to
set
+ */
+ public void setPersistenceXMLSchemaVersion(String
persistenceXMLSchemaVersion) {
+ this.persistenceXMLSchemaVersion = persistenceXMLSchemaVersion;
+ }
+
+ /* (non-Javadoc)
+ * @see javax.persistence.spi.PersistenceUnitInfo#getSharedCacheMode()
+ */
+ public SharedCacheMode getSharedCacheMode() {
+ return this.sharedCacheMode;
+ }
+
+ /**
+ * @param sharedCacheMode the sharedCacheMode to set
+ */
+ public void setSharedCacheMode(SharedCacheMode sharedCacheMode) {
+ this.sharedCacheMode = sharedCacheMode;
+ }
+
+ /* (non-Javadoc)
+ * @see javax.persistence.spi.PersistenceUnitInfo#getValidationMode()
+ */
+ public ValidationMode getValidationMode() {
+ return this.validationMode;
+ }
+
+ /**
+ * @param validationMode the validationMode to set
+ */
+ public void setValidationMode(ValidationMode validationMode) {
+ this.validationMode = validationMode;
+ }
+
}
Modified: openejb/trunk/openejb3/deps/javaee-api/pom.xml
URL:
http://svn.apache.org/viewvc/openejb/trunk/openejb3/deps/javaee-api/pom.xml?rev=940417&r1=940416&r2=940417&view=diff
==============================================================================
--- openejb/trunk/openejb3/deps/javaee-api/pom.xml (original)
+++ openejb/trunk/openejb3/deps/javaee-api/pom.xml Mon May 3 11:08:59 2010
@@ -294,11 +294,17 @@
<version>1.1</version>
</dependency>
<dependency>
- <groupId>org.apache.geronimo.specs</groupId>
- <artifactId>geronimo-jpa_3.0_spec</artifactId>
- <version>1.1</version>
+ <groupId>org.apache.geronimo.specs</groupId>
+ <artifactId>geronimo-jpa_2.0_spec</artifactId>
+ <version>1.0</version>
</dependency>
<dependency>
+ <groupId>org.apache.geronimo.specs</groupId>
+ <artifactId>geronimo-validation_1.0_spec</artifactId>
+ <version>1.0</version>
+ </dependency>
+
+ <dependency>
<groupId>org.apache.geronimo.specs</groupId>
<artifactId>geronimo-jta_1.1_spec</artifactId>
<version>1.1</version>
Modified: openejb/trunk/openejb3/pom.xml
URL:
http://svn.apache.org/viewvc/openejb/trunk/openejb3/pom.xml?rev=940417&r1=940416&r2=940417&view=diff
==============================================================================
--- openejb/trunk/openejb3/pom.xml (original)
+++ openejb/trunk/openejb3/pom.xml Mon May 3 11:08:59 2010
@@ -748,7 +748,7 @@
<dependency>
<groupId>org.apache.openjpa</groupId>
<artifactId>openjpa</artifactId>
- <version>1.2.1</version>
+ <version>2.0.0</version>
<exclusions>
<exclusion>
<groupId>org.apache.openjpa</groupId>