Author: solomax
Date: Tue Jul  3 05:40:59 2012
New Revision: 1356574

URL: http://svn.apache.org/viewvc?rev=1356574&view=rev
Log:
OPENMEETINGS-299 eager fetch broke OM

Modified:
    
incubator/openmeetings/trunk/singlewebapp/src/org/openmeetings/app/data/basic/FieldLanguageDaoImpl.java
    
incubator/openmeetings/trunk/singlewebapp/src/org/openmeetings/app/persistence/beans/lang/FieldLanguage.java

Modified: 
incubator/openmeetings/trunk/singlewebapp/src/org/openmeetings/app/data/basic/FieldLanguageDaoImpl.java
URL: 
http://svn.apache.org/viewvc/incubator/openmeetings/trunk/singlewebapp/src/org/openmeetings/app/data/basic/FieldLanguageDaoImpl.java?rev=1356574&r1=1356573&r2=1356574&view=diff
==============================================================================
--- 
incubator/openmeetings/trunk/singlewebapp/src/org/openmeetings/app/data/basic/FieldLanguageDaoImpl.java
 (original)
+++ 
incubator/openmeetings/trunk/singlewebapp/src/org/openmeetings/app/data/basic/FieldLanguageDaoImpl.java
 Tue Jul  3 05:40:59 2012
@@ -48,7 +48,6 @@ public class FieldLanguageDaoImpl {
 
        public FieldLanguage addLanguage(int langId, String langName, Boolean 
langRtl, String code) {
                try {
-
                        FieldLanguage fl = new FieldLanguage();
                        fl.setLanguage_id((long)langId);
                        fl.setStarttime(new Date());
@@ -59,7 +58,12 @@ public class FieldLanguageDaoImpl {
 
                        fl = em.merge(fl);
 
-                       return fl;
+                       //Eagerly FETCH values list
+                       TypedQuery<FieldLanguage> q = em.createQuery("select fl 
from FieldLanguage fl LEFT JOIN FETCH fl.languageValues WHERE fl.language_id = 
:langId", FieldLanguage.class);
+                       q.setParameter("langId", langId);
+                       List<FieldLanguage> results = q.getResultList();
+                       
+                       return results != null && !results.isEmpty() ? 
results.get(0) : null;
                } catch (Exception ex2) {
                        log.error("[addLanguage]: ", ex2);
                }

Modified: 
incubator/openmeetings/trunk/singlewebapp/src/org/openmeetings/app/persistence/beans/lang/FieldLanguage.java
URL: 
http://svn.apache.org/viewvc/incubator/openmeetings/trunk/singlewebapp/src/org/openmeetings/app/persistence/beans/lang/FieldLanguage.java?rev=1356574&r1=1356573&r2=1356574&view=diff
==============================================================================
--- 
incubator/openmeetings/trunk/singlewebapp/src/org/openmeetings/app/persistence/beans/lang/FieldLanguage.java
 (original)
+++ 
incubator/openmeetings/trunk/singlewebapp/src/org/openmeetings/app/persistence/beans/lang/FieldLanguage.java
 Tue Jul  3 05:40:59 2012
@@ -54,7 +54,7 @@ public class FieldLanguage implements Se
        @Column(name="code")
        private String code;
        
-       @OneToMany(fetch = FetchType.EAGER, cascade = CascadeType.ALL)
+       @OneToMany(fetch = FetchType.LAZY, cascade = CascadeType.ALL)
        @JoinColumn(name = "language_id", insertable = true, updatable = true)
        private Collection<Fieldlanguagesvalues> languageValues;
        


Reply via email to