Author: kmorin Date: 2015-01-06 16:59:33 +0000 (Tue, 06 Jan 2015) New Revision: 738 Url: http://forge.codelutin.com/projects/faxtomail/repository/revisions/738 Log: throw lazy initialisation excpetion Modified: trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/demande/DemandeUIModel.java Modified: trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/demande/DemandeUIModel.java =================================================================== --- trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/demande/DemandeUIModel.java 2015-01-06 16:50:05 UTC (rev 737) +++ trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/demande/DemandeUIModel.java 2015-01-06 16:59:33 UTC (rev 738) @@ -22,41 +22,6 @@ * #L% */ -import static org.nuiton.i18n.I18n.t; - -import java.beans.PropertyChangeEvent; -import java.beans.PropertyChangeListener; -import java.io.ByteArrayInputStream; -import java.nio.charset.Charset; -import java.nio.charset.StandardCharsets; -import java.util.ArrayList; -import java.util.Collection; -import java.util.Date; -import java.util.List; -import java.util.Set; - -import javax.activation.DataSource; -import javax.mail.Address; -import javax.mail.BodyPart; -import javax.mail.Message; -import javax.mail.Part; -import javax.mail.internet.MimeMessage; -import javax.mail.internet.MimeMultipart; -import javax.mail.internet.MimeUtility; - -import com.franciaflex.faxtomail.persistence.entities.OriginalEmail; -import com.google.common.collect.Lists; -import com.sun.mail.util.MimeUtil; -import org.apache.commons.collections4.CollectionUtils; -import org.apache.commons.io.IOUtils; -import org.apache.commons.lang3.StringUtils; -import org.apache.commons.logging.Log; -import org.apache.commons.logging.LogFactory; -import org.apache.commons.mail.util.MimeMessageUtils; -import org.nuiton.jaxx.application.swing.tab.TabContentModel; -import org.nuiton.util.beans.Binder; -import org.nuiton.util.beans.BinderFactory; - import com.franciaflex.faxtomail.persistence.entities.Attachment; import com.franciaflex.faxtomail.persistence.entities.AttachmentImpl; import com.franciaflex.faxtomail.persistence.entities.Client; @@ -67,9 +32,9 @@ import com.franciaflex.faxtomail.persistence.entities.EmailImpl; import com.franciaflex.faxtomail.persistence.entities.FaxToMailUser; import com.franciaflex.faxtomail.persistence.entities.History; -import com.franciaflex.faxtomail.persistence.entities.HistoryType; import com.franciaflex.faxtomail.persistence.entities.MailField; import com.franciaflex.faxtomail.persistence.entities.MailFolder; +import com.franciaflex.faxtomail.persistence.entities.OriginalEmail; import com.franciaflex.faxtomail.persistence.entities.Priority; import com.franciaflex.faxtomail.persistence.entities.RangeRow; import com.franciaflex.faxtomail.persistence.entities.Reply; @@ -78,11 +43,35 @@ import com.franciaflex.faxtomail.services.FaxToMailServiceUtils; import com.franciaflex.faxtomail.ui.swing.content.attachment.AttachmentModelAware; import com.franciaflex.faxtomail.ui.swing.util.AbstractFaxToMailBeanUIModel; -import com.google.common.base.Function; -import com.google.common.base.Predicate; -import com.google.common.base.Strings; -import com.google.common.collect.Collections2; +import com.google.common.collect.Lists; +import org.apache.commons.collections4.CollectionUtils; +import org.apache.commons.io.IOUtils; +import org.apache.commons.lang3.StringUtils; +import org.apache.commons.logging.Log; +import org.apache.commons.logging.LogFactory; +import org.apache.commons.mail.util.MimeMessageUtils; +import org.nuiton.jaxx.application.swing.tab.TabContentModel; +import org.nuiton.util.beans.Binder; +import org.nuiton.util.beans.BinderFactory; +import javax.activation.DataSource; +import javax.mail.Address; +import javax.mail.BodyPart; +import javax.mail.Message; +import javax.mail.Part; +import javax.mail.internet.MimeMultipart; +import javax.mail.internet.MimeUtility; +import java.beans.PropertyChangeEvent; +import java.beans.PropertyChangeListener; +import java.nio.charset.Charset; +import java.util.ArrayList; +import java.util.Collection; +import java.util.Date; +import java.util.List; +import java.util.Set; + +import static org.nuiton.i18n.I18n.t; + /** * @author kmorin - kmorin@codelutin.com * @@ -136,11 +125,11 @@ protected boolean closeable; - protected static Binder<DemandeUIModel, Email> toBeanBinder = + protected static final Binder<DemandeUIModel, Email> toBeanBinder = BinderFactory.newBinder(DemandeUIModel.class, Email.class); - protected static Binder<Email, DemandeUIModel> fromBeanBinder = + protected static final Binder<Email, DemandeUIModel> fromBeanBinder = BinderFactory.newBinder(Email.class, DemandeUIModel.class); protected static Binder<Attachment, Attachment> fromAttachmentBinder = @@ -659,6 +648,8 @@ public void setMailFolder(MailFolder mailFolder) { Object oldValue = getMailFolder(); editObject.setMailFolder(mailFolder); + //throw an lazy initialisation exception as soon as you can if the mailfolder is not initialized (cf #6345 and #6346) + mailFolder.getTopiaId(); firePropertyChanged(Email.PROPERTY_MAIL_FOLDER, oldValue, mailFolder); }