[jboss-user] [JBoss Seam] - Re: Seam Email - IllegalStateException: No Factories configu

KoniKoni do-not-reply at jboss.com
Mon Apr 16 10:49:45 EDT 2007


No,


code:


Session:

import kk.rentform.session.mailprocessor.AsynchronousMailProcessor;
  | 
  | @Name("regist")
  | @Scope(ScopeType.CONVERSATION)
  | @Stateless
  | public class Regist implements RegistInterface{
  |     @In 
  |     private Usr usr;
  |     
  |     @PersistenceContext
  |     private EntityManager em;
  |     
  |     @In
  |     private FacesMessages facesMessages;
  |     
  |     @Logger
  |     private Log log;
  |     
  |     @In
  |     private AsynchronousMailProcessor asynchronousMailProcessor;
  |     
  |     @In
  |    private  Crypt crypt;
  |     
  |     public String regist(){
  |         if ( ! usr.getPasswort().equals(usr.getPasswort1()) ){
  |             facesMessages.add("Passwörter sind nicht gleich!");
  |             return null;
  |         }
  |         
  |         
  |         
  |         List ls  =   em.createQuery("select u.email from Usr u where u.email = :email")
  |         .setParameter("email",usr.getEmail())
  |         .getResultList();
  |         
  |         if ( !ls.isEmpty() ){
  |             facesMessages.add("Email Adresse existiert bereits!");
  |             return null;
  |         }
  |         
  |         List lsb  =   em.createQuery("select u.bname from Usr u where u.bname = :bname")
  |         .setParameter("bname",usr.getBname())
  |         .getResultList();
  |         if ( !lsb.isEmpty() ){
  |             facesMessages.add("Benutzername existiert bereits!");
  |             return null;
  |         }
  |         usr.setActive(false);
  |         usr.setSperr(false);
  |         String zf = crypt.generate();
  |         usr.setGennumber(zf);
  |         usr.setRoles("user");
  |         try{
  |             em.persist(usr);
  |             asynchronousMailProcessor.scheduleSend(3000, usr);
  |             return "/registok.xhtml";
  |             
  |         }catch(Exception e){
  |             log.error("---------------- Error : " + e.getMessage());
  |             log.error(e.getStackTrace());
  |             facesMessages.add("Registrierung fehlgeschlagen, versuchen es später nochmal.");
  |             return null;
  |         }
  | 
  |         
  |     }
  |     
  | }
  |         


I use this a class from example:



  | import kk.rentform.entity.Usr;
  | import org.jboss.seam.annotations.Asynchronous;
  | import org.jboss.seam.annotations.AutoCreate;
  | import org.jboss.seam.annotations.Name;
  | import org.jboss.seam.annotations.timer.Duration;
  | import org.jboss.seam.contexts.Contexts;
  | import org.jboss.seam.core.Events;
  | import org.jboss.seam.core.Renderer;
  | 
  | @Name("asynchronousMailProcessor")
  | @AutoCreate
  | public class AsynchronousMailProcessor
  | {
  |    @Asynchronous
  |    public void scheduleSend(@Duration long delay,Usr usr) {
  |       try {
  |          Contexts.getEventContext().set("usr", usr);
  |          Renderer.instance().render("/emailtemplates/registmsg.xhtml");
  |       } catch (Exception e) {
  |          e.printStackTrace();
  |       }
  |    }
  | }
  | 

  | 
  | <m:message xmlns="http://www.w3.org/1999/xhtml"
  |            xmlns:m="http://jboss.com/products/seam/mail"
  |            xmlns:h="http://java.sun.com/jsf/html">
  |     
  |           <m:from name="xxx" address="xxx" />
  |           <m:to name="#{usr.firma}"> #{usr.email}</m:to>
  |           <m:subject>Registrierung</m:subject>
  |           <m:body>
  |               <p>Sehr geehrte Damen und Herren,</p>
  |             
  |               <p>Um Ihre Registrierung bei rentform.de vervollständigen zu können, ist es notwendig Ihren Account freizuschalten.</p>
  |                 <p>Klicken Sie auf den folgenden Link: </p>
  |                 
  |                  <p>Klicken Sie auf den folgenden Link: </p>
  |                 
  |         <p>Peter</p>
  |     </m:body>
  | </m:message>

View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4037584#4037584

Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4037584




More information about the jboss-user mailing list