258701 - [EclipseLink] persistence.xml transaction-type is not being read correctly
diff --git a/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/context/persistence/AbstractPersistenceUnit.java b/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/context/persistence/AbstractPersistenceUnit.java
index 62e1995..1a52f4d 100644
--- a/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/context/persistence/AbstractPersistenceUnit.java
+++ b/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/context/persistence/AbstractPersistenceUnit.java
@@ -710,11 +710,20 @@
 	/**
 	 * Concrete subclass must call this in the constructor, not called here
 	 */
+	//be careful changing the order of this method, bug 258701 is one reason.
 	protected void initialize(XmlPersistenceUnit xpu) {
 		this.xmlPersistenceUnit = xpu;
 		this.name = xpu.getName();
-		
+		this.specifiedExcludeUnlistedClasses = xpu.getExcludeUnlistedClasses();
+		this.specifiedTransactionType = specifiedTransactionType(xpu);
+		this.defaultTransactionType = defaultTransacationType();
+		this.description = xpu.getDescription();
+		this.provider = xpu.getProvider();
+		this.jtaDataSource = xpu.getJtaDataSource();
+		this.nonJtaDataSource = xpu.getNonJtaDataSource();
+		this.specifiedExcludeUnlistedClasses = xpu.getExcludeUnlistedClasses();
 		initializeProperties(xpu);
+		
 		//initialize specified classRefs before mappingFileRefs because of 
 		//JpaFile rootStructureNode, we want the mapping file to "win",
 		//as it would in a Jpa runtime implementation
@@ -724,14 +733,6 @@
 		//specified classRefs and mappingFileRefs
 		initializeImpliedClassRefs(xpu);
 		initializePersistenceUnitDefaults();
-		this.specifiedExcludeUnlistedClasses = xpu.getExcludeUnlistedClasses();
-		this.specifiedTransactionType = specifiedTransactionType(xpu);
-		this.defaultTransactionType = defaultTransacationType();
-		this.description = xpu.getDescription();
-		this.provider = xpu.getProvider();
-		this.jtaDataSource = xpu.getJtaDataSource();
-		this.nonJtaDataSource = xpu.getNonJtaDataSource();
-		this.specifiedExcludeUnlistedClasses = xpu.getExcludeUnlistedClasses();
 	}
 	
 	protected void initializeMappingFileRefs(XmlPersistenceUnit xpu) {