14 Replies Latest reply on Feb 26, 2009 6:39 PM by Tony Herstell

    Seam Email in 2.1.1.GA even worse...

    Tony Herstell Master

      I am trying to send a message out to our mailing list..
      This used to work ok (even inserting images etc.) synchronous.
      Never got it to work Asynch.


      Now it fails synch as well.


      It gets so far and tries to read an image and dies.



      2009-01-21 23:54:49,283 ERROR [org.hibernate.LazyInitializationException] could not initialize proxy - no Session
      org.hibernate.LazyInitializationException: could not initialize proxy - no Session
              at org.hibernate.proxy.AbstractLazyInitializer.initialize(AbstractLazyInitializer.java:57)
              at org.hibernate.proxy.AbstractLazyInitializer.getImplementation(AbstractLazyInitializer.java:111)
              at org.hibernate.proxy.pojo.javassist.JavassistLazyInitializer.invoke(JavassistLazyInitializer.java:166)
              at nz.co.selwynequestriancentre.model.entity.Image_$$_javassist_10.getImage(Image_$$_javassist_10.java)
              at sun.reflect.GeneratedMethodAccessor1569.invoke(Unknown Source)
              at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
              at java.lang.reflect.Method.invoke(Method.java:597)
              at javax.el.BeanELResolver.getValue(BeanELResolver.java:62)
      
      




      As this is inside the render call there is nothing I can do to make the code handle the exception and carry on as there are no ways to tell render to do this. There is nothing passed back so I can tell how far through the list of emails it got. Basically this now means the email is really broken and unusable.


      Mail has been broken for a long long time; please advise when mail might get prioritized please...


      :(

        • 1. Re: Seam Email in 2.1.1.GA even worse...
          Tony Herstell Master

          Next exception  in serverlog is this:



          
          2009-01-21 23:54:49,299 ERROR [nz.co.selwynequestriancentre.action.mailingList.MailingListControllerImpl] Mailing List Email(s) sending failed: javax.el.ELException: /WEB-INF/pages/mailingList/mailingListEmailWrapper.xhtml @34,32 value="": Error reading 'image' on type nz.co.selwynequestriancentre.model.entity.Image_$$_javassist_10
          2009-01-21 23:54:49,464 DEBUG [org.ajax4jsf.event.AjaxPhaseListener] Process after phase INVOKE_APPLICATION 5
          2009-01-21 23:54:49,472 WARN  [com.arjuna.ats.arjuna.logging.arjLoggerI18N] [com.arjuna.ats.arjuna.coordinator.BasicAction_40] - Abort called on already aborted atomic action 7f000001:b7ab:4976cbde:53f
          2009-01-21 23:54:49,473 WARN  [org.jboss.seam.jsf.SeamPhaseListener] uncaught exception, passing to exception handler
          java.lang.IllegalStateException: Could not commit transaction
                  at org.jboss.seam.jsf.SeamPhaseListener.commitOrRollback(SeamPhaseListener.java:626)
                  at org.jboss.seam.jsf.SeamPhaseListener.commitOrRollback(SeamPhaseListener.java:605)
                  at org.jboss.seam.jsf.SeamPhaseListener.handleTransactionsAfterPhase(SeamPhaseListener.java:343)
                  at org.jboss.seam.jsf.SeamPhaseListener.afterServletPhase(SeamPhaseListener.java:243)
                  at org.jboss.seam.jsf.SeamPhaseListener.afterPhase(SeamPhaseListener.java:194)
          


          • 2. Re: Seam Email in 2.1.1.GA even worse...
            Tony Herstell Master

            It unfortunately gets worse...


            About 5 of the 410 people in the mailing list have an associated avatar.


            The renderer goes till it finds a user with an image and then carries forward that Image to every user till it finds another user with an Avatar set.


            This is supposed to check if the user has an avatar...


            <s:fragment rendered="#{eachRecipient.avatar ne null}">
                 <td width="50%" align="center">
                      <m:attachment rendered="#{eachRecipient.avatar ne null}" value="#{eachRecipient.avatar.image}"
                           fileName="#{eachRecipient.avatar.name}" contentType="#{eachRecipient.avatar.type}"
                           status="avatar"     disposition="inline" />
                      <img src="cid:#{avatar.contentId}" />
                 </td>
            </s:fragment>



            All my users have just got some very odd pictures attached to their emails!





            • 3. Re: Seam Email in 2.1.1.GA even worse...
              Tony Herstell Master

              This may help...


              Jboss 4.2.1.GA


              RF 3.3.0.GA


              Dev MySQL 5.1.30-Community / mysql-connector-java-5.1.7


              Server MySQL 5.0.22 (IN Process of updating as this has bug with Images that I need to get through to upload lots of images for Events Management)


              PC Dev, Ubuntu LIve



              package nz.co.selwynequestriancentre.action.mailingList;
              
              import java.io.Serializable;
              import java.util.ArrayList;
              import java.util.List;
              
              import javax.ejb.Remove;
              import javax.ejb.Stateful;
              import javax.ejb.TransactionAttribute;
              import javax.ejb.TransactionAttributeType;
              import javax.persistence.EntityManager;
              import javax.persistence.PersistenceContext;
              
              import nz.co.selwynequestriancentre.model.entity.User;
              
              import org.jboss.seam.ScopeType;
              import org.jboss.seam.annotations.Begin;
              import org.jboss.seam.annotations.Conversational;
              import org.jboss.seam.annotations.Destroy;
              import org.jboss.seam.annotations.End;
              import org.jboss.seam.annotations.In;
              import org.jboss.seam.annotations.Logger;
              import org.jboss.seam.annotations.Name;
              import org.jboss.seam.annotations.Out;
              import org.jboss.seam.annotations.Scope;
              import org.jboss.seam.contexts.Contexts;
              import org.jboss.seam.faces.Renderer;
              import org.jboss.seam.international.StatusMessages;
              import org.jboss.seam.international.StatusMessage.Severity;
              import org.jboss.seam.log.Log;
              
              /**
               * @author Tony Herstell
               * @version $Revision: 1.13 $ $Date: 2008-12-29 03:19:08 $
               */
              @SuppressWarnings("serial")
              @Stateful
              @Name("mailingListController")
              @Conversational
              @Scope(value=ScopeType.CONVERSATION)
              public class MailingListControllerImpl implements MailingListController, Serializable {
              
                   /**
                    * Inject and leverage the Seam Logger.
                    */
                   @Logger
                   private Log log;
                   
                   @In(required=false)
                   @Out
                   private String subjectText;
                   
                   @In(required=false)
                   @Out
                   private String messageText;
              
                   @In(create = true)
                   private Renderer renderer;
                   
                   @In
                   private AsynchronousMailProcessor asynchronousMailProcessor;
                   
                   private boolean testOnly = false;
                   
                   private List<User> recipients;
                   
                   /**
                    * Inject the EJB3 Persistence.
                    */
                   @PersistenceContext
                   private EntityManager em;
                  
                  /**
                   * Inject the Status Messages component so that messages (errors and info) can be sent to the View
                   */
                  @In(create = true)
                  private transient StatusMessages statusMessages;
                  
                   @TransactionAttribute(TransactionAttributeType.NOT_SUPPORTED)
                   @Begin
                   public String enter() {
                        subjectText = "[Selwyn Equestrian Centre]";
                        messageText = "This is some text.";
                        testOnly = false;
                        return "mailingList";
                   }
                   
                   @TransactionAttribute(TransactionAttributeType.NOT_SUPPORTED)
                   public String preview() {
                        return null;
                  }
                   
                   @TransactionAttribute(TransactionAttributeType.REQUIRED)
                   @End
                   public String sendToMailingList() {
                        try {
                             recipients = new ArrayList<User>();
                             List<User> remainingRecipients = new ArrayList<User>();
                             if (testOnly) {
                                  User tony = (User) em.createQuery("from User u where u.email = :email").setParameter("email", "tony.herstell@selwynequestriancentre.co.nz").getSingleResult();
                                  recipients.add(tony);
                             } else {
                                  MailingListBuilder mailingListBuilder = new MailingListBuilder();
                                  recipients = mailingListBuilder.getMailingList(em);
                                  boolean okToAdd = false;
                                  for (User eachUser : recipients) {
                                       if (eachUser.getEmail().equalsIgnoreCase("stephloe07@gmail.com")) {
                                            okToAdd = true;
                                       }
                                       if (okToAdd) {
                                            remainingRecipients.add(eachUser);
                                       }
                                  }
                             }
                             
                             // Add these line to make sending of email non-asynch
                             Contexts.getEventContext().set("recipients", remainingRecipients);
                             renderer.render("/WEB-INF/pages/mailingList/mailingListEmailWrapper.xhtml");
                             
                             // Add this line to make sending of email asynch
                             //asynchronousMailProcessor.scheduleSend(3000, recipients);
                             
                             statusMessages.addFromResourceBundle(Severity.INFO,"mailing_list_emailed_successfully");
              
                            log.info("Mailing List Email(s) sent!");
                       } catch (Exception e) {
                            log.error("Mailing List Email(s) sending failed: "+e);
                       }
                       return "success";
                  }
                   
                   @TransactionAttribute(TransactionAttributeType.NOT_SUPPORTED)
                   public boolean isTestOnly() {
                       return testOnly;
                  }
              
                   @TransactionAttribute(TransactionAttributeType.NOT_SUPPORTED)
                   public void setTestOnly(boolean testOnly) {
                        this.testOnly = testOnly;         
                  }
                   
                   @TransactionAttribute(TransactionAttributeType.NOT_SUPPORTED)
                   @End
                   public String cancel() {
                        log.info(">cancel");
                        log.info("<cancel");
                        return "home";
                   }
              
                   @Remove
                   @Destroy
                   @TransactionAttribute(TransactionAttributeType.NOT_SUPPORTED)
                   public void destroy() {
                        log.info("> destory");
                        log.info("< destory");
                   }
              
              }
              






              <!DOCTYPE composition PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
              <ui:repeat value="#{recipients}" var="eachRecipient" xmlns="http://www.w3.org/1999/xhtml"
                   xmlns:m="http://jboss.com/products/seam/mail" xmlns:h="http://java.sun.com/jsf/html"
                   xmlns:s="http://jboss.com/products/seam/taglib" xmlns:ui="http://java.sun.com/jsf/facelets">
                   <m:message urlBase="http://www.selwynequestriancentre.co.nz">
              
                        <m:from name="Selwyn Equestrian Centre" address="tony.herstell@selwynequestriancentre.co.nz" />
              
                        <s:fragment rendered="#{(eachRecipient.firstname ne null)}">
                             <m:to name="#{eachRecipient.firstname} #{eachRecipient.surname}">#{eachRecipient.email}</m:to>
                        </s:fragment>
                        
                        <s:fragment rendered="#{(eachRecipient.firstname eq null)}">
                             <m:to>#{eachRecipient.email}</m:to>
                        </s:fragment>
              
                        <m:replyTo name="Selwyn Equestrian Centre" address="tony.herstell@selwynequestriancentre.co.nz" />
              
                        <m:subject>#{subjectText}</m:subject>
              
                        <m:body>
                             <table>
                                  <tr>
                                       <s:fragment rendered="#{!(eachRecipient.firstname eq null) or (eachRecipient.firstname eq '')}">
                                            <td width="50%" align="left">
                                                 <h:outputText value="Dear #{eachRecipient.firstname}" />
                                            </td>
                                       </s:fragment>
                                       <s:fragment rendered="#{eachRecipient.avatar ne null}">
                                            <td width="50%" align="center">
                                                 <m:attachment rendered="#{eachRecipient.avatar ne null}" value="#{eachRecipient.avatar.image}"
                                                      fileName="#{eachRecipient.avatar.name}" contentType="#{eachRecipient.avatar.type}"
                                                      status="avatar"
                                                      disposition="inline" />
                                                 <img src="cid:#{avatar.contentId}" />
                                            </td>
                                       </s:fragment>
                                  </tr>
                             </table>
                             
                             <p>
                                  <s:formattedText value="#{messageText}"/>
                             </p>
              
                             <p>
                                  <h:outputText value="#{messages.email_sec}" />
                             </p>
              
                             <center>
              
                                  <hr/>
                                            
                                  <p>
                                       <h:graphicImage url="http://www.selwynequestriancentre.co.nz/site/images/sec_logo_sm.gif" />
                                  </p>
                   
                                  <p>
                                       <h:outputText value="#{messages.email_website_sec}" />
                                  </p>
                                  
                                  <p>
                                       <i>
                                            <h:outputText value="#{messages.mailing_list_remove_from_list}" />
                                       </i>
                                  </p>
                                  
                                  <hr/>
              
                             </center>
              
              
                        </m:body>
                   </m:message>
              </ui:repeat>



              I added a quick hack to carry on from the last successful one as you can see.

              • 4. Re: Seam Email in 2.1.1.GA even worse...
                Tony Herstell Master

                When it did finally finish I got this...


                00:27:44,859 INFO  [MailSession] connected to mail server
                00:27:51,390 INFO  [STDOUT] Hibernate: select image0_.id as id12_0_, image0_.version4OptLock as version2_12_0_, image0_.name as name12_0_, image0_.type as type12_0_, image0_.image as image12_0_, image0_.mainImage as mainImage12_0_ from Image image0_ where image0_.id=?
                00:33:29,343 WARN  [arjLoggerI18N] [com.arjuna.ats.arjuna.coordinator.BasicAction_58] - Abort of action id -3f57fe38:12fc:49770101:128 invoked while multiple threads active within it.
                00:33:29,343 WARN  [arjLoggerI18N] [com.arjuna.ats.arjuna.coordinator.CheckedAction_2] - CheckedAction::check - atomic action -3f57fe38:12fc:49770101:128 aborting with 1 threads active!
                01:01:54,593 INFO  [MailingListControllerImpl] Mailing List Email(s) sent!
                01:01:54,750 WARN  [arjLoggerI18N] [com.arjuna.ats.arjuna.coordinator.BasicAction_40] - Abort called on already aborted atomic action -3f57fe38:12fc:49770101:128
                01:01:54,765 WARN  [SeamPhaseListener] uncaught exception, passing to exception handler
                java.lang.IllegalStateException: Could not commit transaction
                     at org.jboss.seam.jsf.SeamPhaseListener.commitOrRollback(SeamPhaseListener.java:626)
                     at org.jboss.seam.jsf.SeamPhaseListener.commitOrRollback(SeamPhaseListener.java:605)
                     at org.jboss.seam.jsf.SeamPhaseListener.handleTransactionsAfterPhase(SeamPhaseListener.java:343)
                     at org.jboss.seam.jsf.SeamPhaseListener.afterServletPhase(SeamPhaseListener.java:243)
                     at org.jboss.seam.jsf.SeamPhaseListener.afterPhase(SeamPhaseListener.java:194)
                     at com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:280)
                     at com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:117)
                     at javax.faces.webapp.FacesServlet.service(FacesServlet.java:244)
                     at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
                     at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
                     at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:83)
                     at org.jboss.seam.web.IdentityFilter.doFilter(IdentityFilter.java:40)
                     at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
                     at org.jboss.seam.web.MultipartFilter.doFilter(MultipartFilter.java:90)
                     at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
                     at org.jboss.seam.web.ExceptionFilter.doFilter(ExceptionFilter.java:64)
                     at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
                     at org.jboss.seam.web.RedirectFilter.doFilter(RedirectFilter.java:45)
                     at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
                     at org.ajax4jsf.webapp.BaseXMLFilter.doXmlFilter(BaseXMLFilter.java:178)
                     at org.ajax4jsf.webapp.BaseFilter.handleRequest(BaseFilter.java:290)
                     at org.ajax4jsf.webapp.BaseFilter.processUploadsAndHandleRequest(BaseFilter.java:390)
                     at org.ajax4jsf.webapp.BaseFilter.doFilter(BaseFilter.java:517)
                     at org.jboss.seam.web.Ajax4jsfFilter.doFilter(Ajax4jsfFilter.java:56)
                     at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
                     at org.jboss.seam.web.LoggingFilter.doFilter(LoggingFilter.java:58)
                     at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
                     at org.jboss.seam.servlet.SeamFilter.doFilter(SeamFilter.java:158)
                     at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
                     at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
                     at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
                     at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
                     at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
                     at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:230)
                     at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
                     at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:179)
                     at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:84)
                     at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
                     at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:104)
                     at org.jboss.web.tomcat.service.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:157)
                     at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
                     at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:241)
                     at org.apache.coyote.ajp.AjpProcessor.process(AjpProcessor.java:437)
                     at org.apache.coyote.ajp.AjpProtocol$AjpConnectionHandler.process(AjpProtocol.java:381)
                     at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
                     at java.lang.Thread.run(Thread.java:619)
                Caused by: java.lang.IllegalStateException: [com.arjuna.ats.internal.jta.transaction.arjunacore.inactive] [com.arjuna.ats.internal.jta.transaction.arjunacore.inactive] The transaction is not active!
                     at com.arjuna.ats.internal.jta.transaction.arjunacore.TransactionImple.rollbackAndDisassociate(TransactionImple.java:1466)
                     at com.arjuna.ats.internal.jta.transaction.arjunacore.BaseTransaction.rollback(BaseTransaction.java:163)
                     at com.arjuna.ats.jbossatx.BaseTransactionManagerDelegate.rollback(BaseTransactionManagerDelegate.java:126)
                     at org.jboss.tm.usertx.client.ServerVMClientUserTransaction.rollback(ServerVMClientUserTransaction.java:148)
                     at org.jboss.seam.transaction.UTTransaction.rollback(UTTransaction.java:66)
                     at org.jboss.seam.jsf.SeamPhaseListener.commitOrRollback(SeamPhaseListener.java:622)
                     ... 45 more
                01:01:54,796 INFO  [AsynchronousMailProcessorImpl] > destory




                Already my uses are asking:



                mmm Tony.... why is Sandy's picture attached???
                • 5. Re: Seam Email in 2.1.1.GA even worse...
                  Jason Long Novice

                  Seam mail is a very valuable feature.  I have users crying as well.


                  I do have to say that the upgrade from 2.0.2.GA to 2.1.1.GA went very smoothly.  It is now running in production.  I haven't seen much of a performance boost, but I have seen no new bugs in my application due to the upgrade.


                  Good work Seam team on stability.


                  I only had to tweak some log in code and everything else worked like a charm.


                  I appreciate all of the hard work the Seam developers are putting in and I hope Seam mail works stability in the 2.1.2.GA.


                  If async does not work, has anyone tried to use and async HttpUnit request or similar to a page with some parameters set that will fire the email?
                  I know this will not allow access to the seam contexts, or maybe it could if the conversation id was passed.


                  Even a hacky workaround like that would be greatly appreciated.  I could encapsulate this and fix easily once this has been repaired properly.


                  • 6. Re: Seam Email in 2.1.1.GA even worse...
                    Tony Herstell Master

                    Oops... having re-read my post it appears harsh and that was NOT the intent!


                    I can drop my images in the next email I send out till a fix is found.


                    Seam mail is great for sending out a single email like welcome ot forgot password etc.


                    Let us hope the Seamsters get it fixed up to the quality of other seam stuff!

                    • 7. Re: Seam Email in 2.1.1.GA even worse...
                      David Salter Novice

                      I've not noticed any problems with Mail in Seam 2.1.1 - I can still send email.


                      Is it possible that your SLSB is timing out during sending the email and then aborting and attempting to rollback the transaction?


                      If you try to send an email to a handful of people does it work?

                      • 8. Re: Seam Email in 2.1.1.GA even worse...
                        Tony Herstell Master

                        There are multiple problems:



                        1. Seam Mail doesnt work in Asynch mode as per the manual.

                        2. Seam Mail crashes when its a long list of messages and the crash is hidden in render so you cant actually do much about it.

                        3. Seam Mail when rendering seems to re-use objects from a previous loop iteration (in the case above it was Entity Image)




                        As for timing out; this is why I was trying to make it work Asynch as you would expect this to keep the required scope alive as long as it needed it...




                        Getting tonnes of interest so thrilled about that! Must be heaps of people who log into your site.

                        This is how useful seam mail is (our mailing list is over 400)!

                        • 9. Re: Seam Email in 2.1.1.GA even worse...
                          Juan Miguel Bernal Gonzalez Newbie

                          I´ve an example with en EJB that it works in Seam 2.0.3.CR1 but doesn´t work in Seam 2.1.1.GA. If I convert the EJB to POJO, this example work well in Seam 2.1.1.GA.


                          package action.session;
                          
                          ...
                          
                          @Stateless
                          @Name("generadorEmail")
                          public class GeneradorEmailAction implements GeneradorEmail {
                          
                            @Logger 
                             Log log;
                          
                            @In(create=true)
                            private Renderer renderer;
                               
                            @In
                            FacesMessages facesMessages;
                           
                            ...
                          
                            public void enviarEmail() {
                              try {
                                log.info("Envio de EMAIL (Seam 2.1): nuevo");
                                    
                                if (mailSession == null) {
                                   log.info("No tenemos Sesion Mail");
                                   return;
                                }
                                log.info("Tenemos Sesion Mail");       
                                     
                                if ((fileName == null) || (fileName.length() == 0) ) {
                                  log.info("Fichero vacio");
                                  return;
                                }
                                      
                                log.info("Estableciendo PasswordAuthentication ... ");
                                URLName url = new URLName("smtp://@smtp.um.es");
                                log.info("... ");
                                mailSession.setPasswordAuthentication(url, 
                                            new PasswordAuthentication(usuario, contraseña));
                                      
                                   log.info("Establecido PasswordAuthentication.");      
                          
                                   log.info("----- TEST Renderer --------");
                                renderer.render("/pruebaEmail.xhtml");
                                      
                                facesMessages.add("Email enviado correctamente.");
                          
                                log.info("Email enviado correctamente.");
                                } catch (Exception ex) {
                                log.error("Email fallo en el envio: " + ex.getMessage());
                                log.error("Email fallo en el envio: ", ex);
                                facesMessages.add("Email fallo en el envio:"+
                                                     ex.getMessage());
                                }
                            }
                          }
                          



                          That is the trace error:




                          23 ene 2009 14:57:22,875  INFO GeneradorEmailAction:26 - Ejecutando PostConstruct.
                          23 ene 2009 14:57:22,890  INFO MailSession:93 - Creating JavaMail Session (smtp.um.es:25)
                          23 ene 2009 14:57:22,890  INFO MailSession:182 - connected to mail server
                          23 ene 2009 14:57:47,921  INFO GeneradorEmailAction:149 - Envio de EMAIL (Seam 2.1): nuevo
                          23 ene 2009 14:57:47,921  INFO GeneradorEmailAction:155 - Tenemos Sesion Mail
                          23 ene 2009 14:57:47,937  INFO GeneradorEmailAction:162 - Estableciendo PasswordAuthentication ... 
                          23 ene 2009 14:57:47,937  INFO GeneradorEmailAction:164 - ... 
                          23 ene 2009 14:57:47,953  INFO GeneradorEmailAction:166 - Establecido PasswordAuthentication.
                          23 ene 2009 14:57:48,703  INFO GeneradorEmailAction:180 - ----- TEST Renderer --------
                          23 ene 2009 14:57:48,796  INFO GeneradorEmailAction:188 - Email enviado correctamente.
                          23 ene 2009 14:57:53,750  INFO EmailService:22 - Entra en sendMessage
                          23 ene 2009 14:57:53,781 ERROR EmailService:28 - Error en sendMessage
                          *org.jboss.seam.InstantiationException: Could not instantiate Seam component: org.jboss.seam.ui.facelet.facesContextFactory*
                               at org.jboss.seam.Component.newInstance(Component.java:2106)
                               at org.jboss.seam.Component.getInstance(Component.java:1988)
                               at org.jboss.seam.Component.getInstance(Component.java:1967)
                               at org.jboss.seam.Component.getInstance(Component.java:1961)
                               at org.jboss.seam.Component.getInstance(Component.java:1934)
                               at org.jboss.seam.Component.getInstance(Component.java:1929)
                               at org.jboss.seam.ui.facelet.RendererFacesContextFactory.instance(RendererFacesContextFactory.java:72)
                               at org.jboss.seam.ui.facelet.RendererRequest.init(RendererRequest.java:45)
                               at org.jboss.seam.ui.facelet.RendererRequest.run(RendererRequest.java:72)
                               at org.jboss.seam.ui.facelet.FaceletsRenderer.render(FaceletsRenderer.java:43)
                               at service.EmailService.sendMessage(EmailService.java:25)
                               at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
                               at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
                               at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
                               at java.lang.reflect.Method.invoke(Method.java:585)
                               at org.jboss.seam.util.Reflections.invoke(Reflections.java:22)
                               at org.jboss.seam.intercept.RootInvocationContext.proceed(RootInvocationContext.java:31)
                               at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:56)
                               at org.jboss.seam.transaction.RollbackInterceptor.aroundInvoke(RollbackInterceptor.java:28)
                               at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:68)
                               at org.jboss.seam.core.BijectionInterceptor.aroundInvoke(BijectionInterceptor.java:77)
                               at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:68)
                               at org.jboss.seam.core.MethodContextInterceptor.aroundInvoke(MethodContextInterceptor.java:44)
                               at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:68)
                               at org.jboss.seam.async.AsynchronousInterceptor.aroundInvoke(AsynchronousInterceptor.java:52)
                               at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:68)
                               at org.jboss.seam.intercept.RootInterceptor.invoke(RootInterceptor.java:107)
                               at org.jboss.seam.intercept.JavaBeanInterceptor.interceptInvocation(JavaBeanInterceptor.java:185)
                               at org.jboss.seam.intercept.JavaBeanInterceptor.invoke(JavaBeanInterceptor.java:103)
                               at service.EmailService_$$_javassist_3.sendMessage(EmailService_$$_javassist_3.java)
                               at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
                               at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
                               at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
                               at java.lang.reflect.Method.invoke(Method.java:585)
                               at org.jboss.seam.util.Reflections.invoke(Reflections.java:22)
                               at org.jboss.seam.util.Reflections.invokeAndWrap(Reflections.java:144)
                               at org.jboss.seam.async.AsynchronousInvocation$1.process(AsynchronousInvocation.java:62)
                               at org.jboss.seam.async.Asynchronous$ContextualAsynchronousRequest.run(Asynchronous.java:80)
                               at org.jboss.seam.async.AsynchronousInvocation.execute(AsynchronousInvocation.java:44)
                               at org.jboss.seam.async.ThreadPoolDispatcher$RunnableAsynchronous.run(ThreadPoolDispatcher.java:136)
                               at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:417)
                               at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:269)
                               at java.util.concurrent.FutureTask.run(FutureTask.java:123)
                               at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$301(ScheduledThreadPoolExecutor.java:65)
                               at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:168)
                               at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:650)
                               at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:675)
                               at java.lang.Thread.run(Thread.java:595)
                          *Caused by: java.lang.IllegalStateException: Application was not properly initialized at startup, could not find Factory: javax.faces.context.FacesContextFactory*
                               at javax.faces.FactoryFinder.getFactory(FactoryFinder.java:267)
                               at org.jboss.seam.ui.facelet.RendererFacesContextFactory.create(RendererFacesContextFactory.java:47)
                               at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
                               at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
                               at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
                               at java.lang.reflect.Method.invoke(Method.java:585)
                               at org.jboss.seam.util.Reflections.invoke(Reflections.java:22)
                               at org.jboss.seam.util.Reflections.invokeAndWrap(Reflections.java:144)
                               at org.jboss.seam.Component.callComponentMethod(Component.java:2211)
                               at org.jboss.seam.Component.callCreateMethod(Component.java:2134)
                               at org.jboss.seam.Component.newInstance(Component.java:2094)
                               ... 47 more
                          






                          • 10. Re: Seam Email in 2.1.1.GA even worse...
                            Tony Herstell Master

                            Still happening...
                            No ideas anyone?


                            12:28:00,203 INFO  [STDOUT] Hibernate: select image0_.id as id12_0_, image0_.version4OptLock as version2_12_0_, image0_.name as name12_0_, image0_.type as type12_0_, image0_.image as image12_0_, image0_.mainImage as mainImage12_0_ from Image image0_ where image0_.id=?
                            12:29:38,921 WARN  [arjLoggerI18N] [com.arjuna.ats.arjuna.coordinator.BasicAction_58] - Abort of action id -3f57fe38:dd1:497f9702:71 invoked while multiple threads active within it.
                            12:29:38,921 WARN  [arjLoggerI18N] [com.arjuna.ats.arjuna.coordinator.CheckedAction_2] - CheckedAction::check - atomic action -3f57fe38:dd1:497f9702:71 aborting with 1 threads active!
                            12:29:46,140 ERROR [LazyInitializationException] could not initialize proxy - no Session
                            org.hibernate.LazyInitializationException: could not initialize proxy - no Session
                                 at org.hibernate.proxy.AbstractLazyInitializer.initialize(AbstractLazyInitializer.java:57)
                                 at org.hibernate.proxy.AbstractLazyInitializer.getImplementation(AbstractLazyInitializer.java:111)
                                 at org.hibernate.proxy.pojo.javassist.JavassistLazyInitializer.invoke(JavassistLazyInitializer.java:166)
                                 at nz.co.selwynequestriancentre.model.entity.Image_$$_javassist_10.getImage(Image_$$_javassist_10.java)
                                 at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
                                 at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
                                 at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
                                 at java.lang.reflect.Method.invoke(Method.java:597)
                                 at javax.el.BeanELResolver.getValue(BeanELResolver.java:62)
                                 at javax.el.CompositeELResolver.getValue(CompositeELResolver.java:53)
                                 at com.sun.faces.el.FacesCompositeELResolver.getValue(FacesCompositeELResolver.java:64)
                                 at org.jboss.el.parser.AstPropertySuffix.getValue(AstPropertySuffix.java:53)
                                 at org.jboss.el.parser.AstValue.getValue(AstValue.java:67)
                                 at org.jboss.el.ValueExpressionImpl.getValue(ValueExpressionImpl.java:186)
                                 at com.sun.facelets.el.TagValueExpression.getValue(TagValueExpression.java:71)
                                 at org.jboss.seam.mail.ui.MailComponent.getValue(MailComponent.java:179)
                                 at org.jboss.seam.mail.ui.UIAttachment.getValue(UIAttachment.java:65)
                                 at org.jboss.seam.mail.ui.UIAttachment.encodeEnd(UIAttachment.java:109)
                                 at org.jboss.seam.ui.util.cdk.RendererBase.renderChild(RendererBase.java:190)
                                 at org.jboss.seam.ui.util.cdk.RendererBase.renderChildren(RendererBase.java:166)
                                 at org.jboss.seam.ui.renderkit.FragmentRendererBase.doEncodeChildren(FragmentRendererBase.java:29)
                                 at org.jboss.seam.ui.util.cdk.RendererBase.encodeChildren(RendererBase.java:92)
                                 at javax.faces.component.UIComponentBase.encodeChildren(UIComponentBase.java:812)
                                 at org.jboss.seam.ui.util.JSF.renderChild(JSF.java:175)
                                 at org.jboss.seam.ui.util.JSF.renderChildren(JSF.java:163)
                                 at org.jboss.seam.mail.ui.MailComponent.encode(MailComponent.java:85)
                                 at org.jboss.seam.mail.ui.MailComponent.encode(MailComponent.java:59)
                                 at org.jboss.seam.mail.ui.UIBody.encodeChildren(UIBody.java:44)
                                 at org.jboss.seam.ui.util.JSF.renderChild(JSF.java:175)
                                 at org.jboss.seam.ui.util.JSF.renderChildren(JSF.java:163)
                                 at org.jboss.seam.mail.ui.UIMessage.encodeChildren(UIMessage.java:192)
                                 at javax.faces.component.UIComponent.encodeAll(UIComponent.java:886)
                                 at com.sun.facelets.component.RepeatRenderer.encodeChildren(RepeatRenderer.java:50)
                                 at com.sun.facelets.component.UIRepeat.process(UIRepeat.java:357)
                                 at com.sun.facelets.component.UIRepeat.encodeChildren(UIRepeat.java:617)
                                 at org.jboss.seam.ui.util.JSF.renderChild(JSF.java:175)
                                 at org.jboss.seam.ui.util.JSF.renderChildren(JSF.java:163)
                                 at org.jboss.seam.ui.facelet.RendererRequest.renderFacelet(RendererRequest.java:103)
                                 at org.jboss.seam.ui.facelet.RendererRequest.run(RendererRequest.java:73)
                                 at org.jboss.seam.ui.facelet.FaceletsRenderer.render(FaceletsRenderer.java:43)
                                 at nz.co.selwynequestriancentre.action.mailingList.MailingListControllerImpl.sendToMailingList(MailingListControllerImpl.java:118)
                                 at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
                                 at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
                                 at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
                                 at java.lang.reflect.Method.invoke(Method.java:597)
                                 at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:112)
                                 at org.jboss.ejb3.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:166)
                                 at org.jboss.seam.intercept.EJBInvocationContext.proceed(EJBInvocationContext.java:44)
                                 at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:56)
                                 at org.jboss.seam.transaction.RollbackInterceptor.aroundInvoke(RollbackInterceptor.java:28)
                                 at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:68)
                                 at org.jboss.seam.core.BijectionInterceptor.aroundInvoke(BijectionInterceptor.java:77)
                                 at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:68)
                                 at org.jboss.seam.core.ConversationInterceptor.aroundInvoke(ConversationInterceptor.java:56)
                                 at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:68)
                                 at org.jboss.seam.core.ConversationalInterceptor.aroundInvoke(ConversationalInterceptor.java:43)
                                 at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:68)
                                 at org.jboss.seam.core.MethodContextInterceptor.aroundInvoke(MethodContextInterceptor.java:44)
                                 at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:68)
                                 at org.jboss.seam.persistence.EntityManagerProxyInterceptor.aroundInvoke(EntityManagerProxyInterceptor.java:29)
                                 at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:68)
                                 at org.jboss.seam.persistence.HibernateSessionProxyInterceptor.aroundInvoke(HibernateSessionProxyInterceptor.java:31)
                                 at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:68)
                                 at org.jboss.seam.intercept.RootInterceptor.invoke(RootInterceptor.java:107)
                                 at org.jboss.seam.intercept.SessionBeanInterceptor.aroundInvoke(SessionBeanInterceptor.java:50)
                                 at sun.reflect.GeneratedMethodAccessor166.invoke(Unknown Source)
                                 at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
                                 at java.lang.reflect.Method.invoke(Method.java:597)
                                 at org.jboss.ejb3.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:118)
                                 at org.jboss.ejb3.interceptor.EJB3InterceptorsInterceptor.invoke(EJB3InterceptorsInterceptor.java:63)
                                 at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
                                 at org.jboss.ejb3.entity.ExtendedPersistenceContextPropagationInterceptor.invoke(ExtendedPersistenceContextPropagationInterceptor.java:57)
                                 at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
                                 at org.jboss.ejb3.entity.TransactionScopedEntityManagerInterceptor.invoke(TransactionScopedEntityManagerInterceptor.java:54)
                                 at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
                                 at org.jboss.ejb3.AllowedOperationsInterceptor.invoke(AllowedOperationsInterceptor.java:47)
                                 at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
                                 at org.jboss.aspects.tx.TxPolicy.invokeInCallerTx(TxPolicy.java:126)
                                 at org.jboss.aspects.tx.TxInterceptor$Required.invoke(TxInterceptor.java:195)
                                 at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
                                 at org.jboss.aspects.tx.TxPropagationInterceptor.invoke(TxPropagationInterceptor.java:76)
                                 at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
                                 at org.jboss.ejb3.stateful.StatefulInstanceInterceptor.invoke(StatefulInstanceInterceptor.java:83)
                                 at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
                                 at org.jboss.aspects.security.AuthenticationInterceptor.invoke(AuthenticationInterceptor.java:77)
                                 at org.jboss.ejb3.security.Ejb3AuthenticationInterceptor.invoke(Ejb3AuthenticationInterceptor.java:106)
                                 at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
                                 at org.jboss.ejb3.ENCPropagationInterceptor.invoke(ENCPropagationInterceptor.java:46)
                                 at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
                                 at org.jboss.ejb3.asynchronous.AsynchronousInterceptor.invoke(AsynchronousInterceptor.java:106)
                                 at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
                                 at org.jboss.ejb3.stateful.StatefulContainer.localInvoke(StatefulContainer.java:204)
                                 at org.jboss.ejb3.stateful.StatefulLocalProxy.invoke(StatefulLocalProxy.java:100)
                                 at $Proxy138.sendToMailingList(Unknown Source)
                                 at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
                                 at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
                                 at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
                                 at java.lang.reflect.Method.invoke(Method.java:597)
                                 at org.jboss.seam.util.Reflections.invoke(Reflections.java:22)
                                 at org.jboss.seam.intercept.RootInvocationContext.proceed(RootInvocationContext.java:31)
                                 at org.jboss.seam.intercept.ClientSideInterceptor$1.proceed(ClientSideInterceptor.java:76)
                                 at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:56)
                                 at org.jboss.seam.ejb.RemoveInterceptor.aroundInvoke(RemoveInterceptor.java:43)
                                 at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:68)
                                 at org.jboss.seam.intercept.RootInterceptor.invoke(RootInterceptor.java:107)
                                 at org.jboss.seam.intercept.ClientSideInterceptor.invoke(ClientSideInterceptor.java:54)
                                 at org.javassist.tmp.java.lang.Object_$$_javassist_9.sendToMailingList(Object_$$_javassist_9.java)
                                 at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
                                 at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
                                 at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
                                 at java.lang.reflect.Method.invoke(Method.java:597)
                                 at org.jboss.el.util.ReflectionUtil.invokeMethod(ReflectionUtil.java:329)
                                 at org.jboss.el.util.ReflectionUtil.invokeMethod(ReflectionUtil.java:342)
                                 at org.jboss.el.parser.AstPropertySuffix.invoke(AstPropertySuffix.java:58)
                                 at org.jboss.el.parser.AstValue.invoke(AstValue.java:96)
                                 at org.jboss.el.MethodExpressionImpl.invoke(MethodExpressionImpl.java:276)
                                 at com.sun.facelets.el.TagMethodExpression.invoke(TagMethodExpression.java:68)
                                 at javax.faces.component.MethodBindingMethodExpressionAdapter.invoke(MethodBindingMethodExpressionAdapter.java:77)
                                 at com.sun.faces.application.ActionListenerImpl.processAction(ActionListenerImpl.java:91)
                                 at javax.faces.component.UICommand.broadcast(UICommand.java:383)
                                 at org.ajax4jsf.component.AjaxActionComponent.broadcast(AjaxActionComponent.java:55)
                                 at org.ajax4jsf.component.AjaxViewRoot.processEvents(AjaxViewRoot.java:321)
                                 at org.ajax4jsf.component.AjaxViewRoot.broadcastEvents(AjaxViewRoot.java:296)
                                 at org.ajax4jsf.component.AjaxViewRoot.processPhase(AjaxViewRoot.java:253)
                                 at org.ajax4jsf.component.AjaxViewRoot.processApplication(AjaxViewRoot.java:466)
                                 at com.sun.faces.lifecycle.InvokeApplicationPhase.execute(InvokeApplicationPhase.java:97)
                                 at com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:251)
                                 at com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:117)
                                 at javax.faces.webapp.FacesServlet.service(FacesServlet.java:244)
                                 at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
                                 at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
                                 at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:83)
                                 at org.jboss.seam.web.IdentityFilter.doFilter(IdentityFilter.java:40)
                                 at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
                                 at org.jboss.seam.web.MultipartFilter.doFilter(MultipartFilter.java:90)
                                 at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
                                 at org.jboss.seam.web.ExceptionFilter.doFilter(ExceptionFilter.java:64)
                                 at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
                                 at org.jboss.seam.web.RedirectFilter.doFilter(RedirectFilter.java:45)
                                 at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
                                 at org.ajax4jsf.webapp.BaseXMLFilter.doXmlFilter(BaseXMLFilter.java:178)
                                 at org.ajax4jsf.webapp.BaseFilter.handleRequest(BaseFilter.java:290)
                                 at org.ajax4jsf.webapp.BaseFilter.processUploadsAndHandleRequest(BaseFilter.java:390)
                                 at org.ajax4jsf.webapp.BaseFilter.doFilter(BaseFilter.java:517)
                                 at org.jboss.seam.web.Ajax4jsfFilter.doFilter(Ajax4jsfFilter.java:56)
                                 at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
                                 at org.jboss.seam.web.LoggingFilter.doFilter(LoggingFilter.java:58)
                                 at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
                                 at org.jboss.seam.servlet.SeamFilter.doFilter(SeamFilter.java:158)
                                 at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
                                 at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
                                 at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
                                 at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
                                 at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
                                 at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:230)
                                 at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
                                 at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:179)
                                 at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:84)
                                 at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
                                 at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:104)
                                 at org.jboss.web.tomcat.service.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:157)
                                 at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
                                 at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:241)
                                 at org.apache.coyote.ajp.AjpProcessor.process(AjpProcessor.java:437)
                                 at org.apache.coyote.ajp.AjpProtocol$AjpConnectionHandler.process(AjpProtocol.java:381)
                                 at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
                                 at java.lang.Thread.run(Thread.java:619)
                            12:29:46,171 ERROR [MailingListControllerImpl] Mailing List Email(s) sending failed: javax.el.ELException: /WEB-INF/pages/mailingList/mailingListEmailWrapper.xhtml @34,32 value="": Error reading 'image' on type nz.co.selwynequestriancentre.model.entity.Image_$$_javassist_10
                            12:29:46,171 WARN  [arjLoggerI18N] [com.arjuna.ats.arjuna.coordinator.BasicAction_40] - Abort called on already aborted atomic action -3f57fe38:dd1:497f9702:71
                            12:29:46,171 WARN  [SeamPhaseListener] uncaught exception, passing to exception handler
                            java.lang.IllegalStateException: Could not commit transaction
                                 at org.jboss.seam.jsf.SeamPhaseListener.commitOrRollback(SeamPhaseListener.java:626)
                                 at org.jboss.seam.jsf.SeamPhaseListener.commitOrRollback(SeamPhaseListener.java:605)
                                 at org.jboss.seam.jsf.SeamPhaseListener.handleTransactionsAfterPhase(SeamPhaseListener.java:343)
                                 at org.jboss.seam.jsf.SeamPhaseListener.afterServletPhase(SeamPhaseListener.java:243)
                                 at org.jboss.seam.jsf.SeamPhaseListener.afterPhase(SeamPhaseListener.java:194)
                                 at com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:280)
                                 at com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:117)
                                 at javax.faces.webapp.FacesServlet.service(FacesServlet.java:244)
                                 at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
                                 at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
                                 at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:83)
                                 at org.jboss.seam.web.IdentityFilter.doFilter(IdentityFilter.java:40)
                                 at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
                                 at org.jboss.seam.web.MultipartFilter.doFilter(MultipartFilter.java:90)
                                 at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
                                 at org.jboss.seam.web.ExceptionFilter.doFilter(ExceptionFilter.java:64)
                                 at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
                                 at org.jboss.seam.web.RedirectFilter.doFilter(RedirectFilter.java:45)
                                 at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
                                 at org.ajax4jsf.webapp.BaseXMLFilter.doXmlFilter(BaseXMLFilter.java:178)
                                 at org.ajax4jsf.webapp.BaseFilter.handleRequest(BaseFilter.java:290)
                                 at org.ajax4jsf.webapp.BaseFilter.processUploadsAndHandleRequest(BaseFilter.java:390)
                                 at org.ajax4jsf.webapp.BaseFilter.doFilter(BaseFilter.java:517)
                                 at org.jboss.seam.web.Ajax4jsfFilter.doFilter(Ajax4jsfFilter.java:56)
                                 at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
                                 at org.jboss.seam.web.LoggingFilter.doFilter(LoggingFilter.java:58)
                                 at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
                                 at org.jboss.seam.servlet.SeamFilter.doFilter(SeamFilter.java:158)
                                 at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
                                 at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
                                 at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
                                 at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
                                 at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
                                 at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:230)
                                 at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
                                 at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:179)
                                 at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:84)
                                 at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
                                 at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:104)
                                 at org.jboss.web.tomcat.service.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:157)
                                 at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
                                 at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:241)
                                 at org.apache.coyote.ajp.AjpProcessor.process(AjpProcessor.java:437)
                                 at org.apache.coyote.ajp.AjpProtocol$AjpConnectionHandler.process(AjpProtocol.java:381)
                                 at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
                                 at java.lang.Thread.run(Thread.java:619)
                            Caused by: java.lang.IllegalStateException: [com.arjuna.ats.internal.jta.transaction.arjunacore.inactive] [com.arjuna.ats.internal.jta.transaction.arjunacore.inactive] The transaction is not active!
                                 at com.arjuna.ats.internal.jta.transaction.arjunacore.TransactionImple.rollbackAndDisassociate(TransactionImple.java:1466)
                                 at com.arjuna.ats.internal.jta.transaction.arjunacore.BaseTransaction.rollback(BaseTransaction.java:163)
                                 at com.arjuna.ats.jbossatx.BaseTransactionManagerDelegate.rollback(BaseTransactionManagerDelegate.java:126)
                                 at org.jboss.tm.usertx.client.ServerVMClientUserTransaction.rollback(ServerVMClientUserTransaction.java:148)
                                 at org.jboss.seam.transaction.UTTransaction.rollback(UTTransaction.java:66)
                                 at org.jboss.seam.jsf.SeamPhaseListener.commitOrRollback(SeamPhaseListener.java:622)
                                 ... 45 more
                            


                            • 11. Re: Seam Email in 2.1.1.GA even worse...
                              Tony Herstell Master

                              And more..


                              13:43:38,937 WARN  [arjLoggerI18N] [com.arjuna.ats.arjuna.coordinator.BasicAction_58] - Abort of action id -3f57fe38:dd1:497f9702:149 invoked while multiple threads active within it.
                              13:43:38,937 WARN  [arjLoggerI18N] [com.arjuna.ats.arjuna.coordinator.CheckedAction_2] - CheckedAction::check - atomic action
                              -3f57fe38:dd1:497f9702:149 aborting with 1 threads active!



                              • 12. Re: Seam Email in 2.1.1.GA even worse...
                                Daniele Gariboldi Newbie

                                Just an hint: check for exception you could get from a seam component and cought outside (see Seam reference 6.12.1. Exceptions and transactions).

                                Note that: A system exception is any unchecked exception without an @ApplicationException annotation, so it is NullpointerException ;-) .

                                Once I had a class calling a method on another (seam component) class. Sometimes the called method threw an exception I caught in the calling class, but Seam marked the transaction as to-be-rolled-back.

                                If this is the case, the stacktrace you get take you nowhere because you shouldn't use an hibernate  session when an error occured, and the first flush hibernate has to do (as for example before a query) shows up an error.

                                Just to check try to add at certain points explicit flush calls. This should cause the error condition emerge at the exact point it happens.

                                As for other tips, I wrote something about Seam and asynchronous email at my blog.


                                Hope this helps




                                • 13. Re: Seam Email in 2.1.1.GA even worse...
                                  Tony Herstell Master

                                  The re-using of objects, the image fetched from the Dbase, during the email rendering where I have multiple emails to send (ui loop) means I have to turn off inserting images... is there any solution to this problem? is it a known problem?