(no commit message)
[utils] / test / hibernate / src / main / java / org / wamblee / support / persistence / hibernate / HibernateJpaCustomizer.java
index 906752fcbf6362d9e7066f680c380a4604b41293..923d0c225106793f4c5fb2a7fb99ffadf3633f93 100644 (file)
@@ -1,7 +1,18 @@
 /*
- * SCJD assignment, URLyBird, Erik Brakkee.
- * Candidate ID: sr1399267.
- */
+ * Copyright 2005-2010 the original author or authors.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */ 
 package org.wamblee.support.persistence.hibernate;
 
 import org.dbunit.dataset.filter.ITableFilterSimple;
@@ -27,15 +38,20 @@ public class HibernateJpaCustomizer implements JpaCustomizer {
     @Override
     public void customize(PersistenceUnitDescription aPersistenceUnit,
         Map<String, String> aJpaProperties) {
-        // Hibernate: Override transaction type and datasource
-        aJpaProperties.put("javax.persistence.transactionType",
-            "RESOURCE_LOCAL");
-        aJpaProperties.put("javax.persistence.jtaDataSource", null);
-        aJpaProperties.put("javax.persistence.nonJtaDataSource",
-            aPersistenceUnit.getJndiName());
+        
+        System.setProperty("hibernate.temp.use_jdbc_metadata_defaults", "true");
+        
+        // Set non-JPA connection properties for older versions of hibernate
+        System.getProperties().remove("hibernate.connection.datasource");
+        if (System.getProperty("hibernate.connection.datasource") != null ) { 
+            throw new RuntimeException("ERROR");
+        }
+        System.setProperty("hibernate.connection.url", aJpaProperties.get("javax.persistence.jdbc.url"));
+        System.setProperty("hibernate.connection.username", aJpaProperties.get("javax.persistence.jdbc.user"));
+        System.setProperty("hibernate.connection.password", aJpaProperties.get("javax.persistence.jdbc.password"));
 
         // Hibernate schema generation
-        aJpaProperties.put("hibernate.hbm2ddl.auto", "create");
+        aJpaProperties.put("hibernate.hbm2ddl.auto", "create-drop");
     }
 
     @Override