Oddělení požadavku na registraci od samotného uživatele.
authorFrantišek Kučera <franta-hg@frantovo.cz>
Fri Mar 05 10:28:34 2010 +0100 (2010-03-05)
changeset 55079a3221355d
parent 54 793a89cba0f8
child 56 7021b32ce3d1
Oddělení požadavku na registraci od samotného uživatele.
Robustnější návrh.
java/nekurak.net-ejb/src/java/cz/frantovo/nekurak/ejb/UzivatelEJB.java
java/nekurak.net-lib/src/cz/frantovo/nekurak/dto/PozadavekNaRegistraciUzivatele.java
java/nekurak.net-lib/src/cz/frantovo/nekurak/ejb/UzivatelRemote.java
java/nekurak.net-web/src/java/cz/frantovo/nekurak/web/RegistraceUzivatele.java
java/nekurak.net-web/src/java/cz/frantovo/nekurak/web/UzivatelPredRegistraci.java
java/nekurak.net-web/web/WEB-INF/casti/registrovatUzivatele.jsp
java/nekurak.net-web/web/styl.css
     1.1 --- a/java/nekurak.net-ejb/src/java/cz/frantovo/nekurak/ejb/UzivatelEJB.java	Thu Mar 04 22:42:34 2010 +0100
     1.2 +++ b/java/nekurak.net-ejb/src/java/cz/frantovo/nekurak/ejb/UzivatelEJB.java	Fri Mar 05 10:28:34 2010 +0100
     1.3 @@ -1,6 +1,7 @@
     1.4  package cz.frantovo.nekurak.ejb;
     1.5  
     1.6  import cz.frantovo.nekurak.dao.UzivatelDAO;
     1.7 +import cz.frantovo.nekurak.dto.PozadavekNaRegistraciUzivatele;
     1.8  import cz.frantovo.nekurak.dto.Uzivatel;
     1.9  import cz.frantovo.nekurak.util.Hash;
    1.10  import cz.frantovo.nekurak.vyjimky.NecekanaVyjimka;
    1.11 @@ -21,8 +22,9 @@
    1.12      private UzivatelDAO uzivatelDao;
    1.13  
    1.14      /** Uživatele může zakládat kdokoli – uživatel se registruje sám. */
    1.15 -    public void zalozUzivatele(Uzivatel u) throws NekurakVyjimka {
    1.16 +    public void registrujUzivatele(PozadavekNaRegistraciUzivatele p) throws NekurakVyjimka {
    1.17  	try {
    1.18 +	    Uzivatel u = p.getUzivatel();
    1.19  	    /** Heslo musíme před uložení zahashovat, aby se uživatel mohl přihlásit. */
    1.20  	    u.setHeslo(Hash.hashuj(u.getHeslo()));
    1.21  	    uzivatelDao.uloz(u);
     2.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     2.2 +++ b/java/nekurak.net-lib/src/cz/frantovo/nekurak/dto/PozadavekNaRegistraciUzivatele.java	Fri Mar 05 10:28:34 2010 +0100
     2.3 @@ -0,0 +1,74 @@
     2.4 +package cz.frantovo.nekurak.dto;
     2.5 +
     2.6 +import java.io.Serializable;
     2.7 +
     2.8 +/**
     2.9 + * Uživatel se registruje na webu.
    2.10 + * Tato třída obsahuje jen ty údaje, které se vyplňují do registračního formuláře.
    2.11 + * Nakonec se převede na instanci třídy Uzivatel a uloží do databáze.
    2.12 + * @author fiki
    2.13 + */
    2.14 +public class PozadavekNaRegistraciUzivatele implements Serializable {
    2.15 +
    2.16 +    /** Uživatelské jméno */
    2.17 +    private String prezdivka;
    2.18 +    /** Heslo ve tvaru, v jakém má být uloženo do databáze */
    2.19 +    private String heslo;
    2.20 +    /** Křestní jméno */
    2.21 +    private String jmeno;
    2.22 +    private String prijmeni;
    2.23 +    private String email;
    2.24 +
    2.25 +    public String getPrezdivka() {
    2.26 +	return prezdivka;
    2.27 +    }
    2.28 +
    2.29 +    public void setPrezdivka(String prezdivka) {
    2.30 +	this.prezdivka = prezdivka;
    2.31 +    }
    2.32 +
    2.33 +    public String getHeslo() {
    2.34 +	return heslo;
    2.35 +    }
    2.36 +
    2.37 +    public void setHeslo(String heslo) {
    2.38 +	this.heslo = heslo;
    2.39 +    }
    2.40 +
    2.41 +    public String getJmeno() {
    2.42 +	return jmeno;
    2.43 +    }
    2.44 +
    2.45 +    public void setJmeno(String jmeno) {
    2.46 +	this.jmeno = jmeno;
    2.47 +    }
    2.48 +
    2.49 +    public String getPrijmeni() {
    2.50 +	return prijmeni;
    2.51 +    }
    2.52 +
    2.53 +    public void setPrijmeni(String prijmeni) {
    2.54 +	this.prijmeni = prijmeni;
    2.55 +    }
    2.56 +
    2.57 +    public String getEmail() {
    2.58 +	return email;
    2.59 +    }
    2.60 +
    2.61 +    public void setEmail(String email) {
    2.62 +	this.email = email;
    2.63 +    }
    2.64 +
    2.65 +    /** Převede údaje z registrace do instance třídy Uzivatel */
    2.66 +    public Uzivatel getUzivatel() {
    2.67 +	Uzivatel u = new Uzivatel();
    2.68 +
    2.69 +	u.setPrezdivka(prezdivka);
    2.70 +	u.setHeslo(heslo);
    2.71 +	u.setJmeno(jmeno);
    2.72 +	u.setPrijmeni(prijmeni);
    2.73 +	u.setEmail(email);
    2.74 +
    2.75 +	return u;
    2.76 +    }
    2.77 +}
     3.1 --- a/java/nekurak.net-lib/src/cz/frantovo/nekurak/ejb/UzivatelRemote.java	Thu Mar 04 22:42:34 2010 +0100
     3.2 +++ b/java/nekurak.net-lib/src/cz/frantovo/nekurak/ejb/UzivatelRemote.java	Fri Mar 05 10:28:34 2010 +0100
     3.3 @@ -1,6 +1,6 @@
     3.4  package cz.frantovo.nekurak.ejb;
     3.5  
     3.6 -import cz.frantovo.nekurak.dto.Uzivatel;
     3.7 +import cz.frantovo.nekurak.dto.PozadavekNaRegistraciUzivatele;
     3.8  import cz.frantovo.nekurak.vyjimky.NekurakVyjimka;
     3.9  import javax.ejb.Remote;
    3.10  
    3.11 @@ -11,5 +11,6 @@
    3.12  @Remote
    3.13  public interface UzivatelRemote {
    3.14  
    3.15 -    public void zalozUzivatele(Uzivatel u) throws NekurakVyjimka;
    3.16 +    /** Registrace nového uživatele */
    3.17 +    public void registrujUzivatele(PozadavekNaRegistraciUzivatele p) throws NekurakVyjimka;
    3.18  }
     4.1 --- a/java/nekurak.net-web/src/java/cz/frantovo/nekurak/web/RegistraceUzivatele.java	Thu Mar 04 22:42:34 2010 +0100
     4.2 +++ b/java/nekurak.net-web/src/java/cz/frantovo/nekurak/web/RegistraceUzivatele.java	Fri Mar 05 10:28:34 2010 +0100
     4.3 @@ -45,7 +45,7 @@
     4.4  	    return "registrace.vyjimka.token";
     4.5  	} else {
     4.6  	    try {
     4.7 -		hledac.getUzivatelEJB().zalozUzivatele(u.getUzivatel());
     4.8 +		hledac.getUzivatelEJB().registrujUzivatele(u.getUzivatel());
     4.9  	    } catch (Exception e) {
    4.10  		log.log(Level.WARNING, "Chyba při registraci uživatele.", e);
    4.11  		return "registrace.vyjimka";
     5.1 --- a/java/nekurak.net-web/src/java/cz/frantovo/nekurak/web/UzivatelPredRegistraci.java	Thu Mar 04 22:42:34 2010 +0100
     5.2 +++ b/java/nekurak.net-web/src/java/cz/frantovo/nekurak/web/UzivatelPredRegistraci.java	Fri Mar 05 10:28:34 2010 +0100
     5.3 @@ -1,6 +1,6 @@
     5.4  package cz.frantovo.nekurak.web;
     5.5  
     5.6 -import cz.frantovo.nekurak.dto.Uzivatel;
     5.7 +import cz.frantovo.nekurak.dto.PozadavekNaRegistraciUzivatele;
     5.8  import cz.frantovo.nekurak.util.Hash;
     5.9  import java.util.logging.Level;
    5.10  import java.util.logging.Logger;
    5.11 @@ -12,14 +12,14 @@
    5.12  public class UzivatelPredRegistraci {
    5.13  
    5.14      private static final Logger log = Logger.getLogger(UzivatelPredRegistraci.class.getSimpleName());
    5.15 -    private Uzivatel uzivatel;
    5.16 +    private PozadavekNaRegistraciUzivatele uzivatel;
    5.17      private final String token = generujToken();
    5.18  
    5.19 -    public Uzivatel getUzivatel() {
    5.20 +    public PozadavekNaRegistraciUzivatele getUzivatel() {
    5.21  	return uzivatel;
    5.22      }
    5.23  
    5.24 -    public void setUzivatel(Uzivatel uzivatel) {
    5.25 +    public void setUzivatel(PozadavekNaRegistraciUzivatele uzivatel) {
    5.26  	this.uzivatel = uzivatel;
    5.27      }
    5.28  
     6.1 --- a/java/nekurak.net-web/web/WEB-INF/casti/registrovatUzivatele.jsp	Thu Mar 04 22:42:34 2010 +0100
     6.2 +++ b/java/nekurak.net-web/web/WEB-INF/casti/registrovatUzivatele.jsp	Fri Mar 05 10:28:34 2010 +0100
     6.3 @@ -5,7 +5,7 @@
     6.4  	  xmlns:fn="http://java.sun.com/jsp/jstl/functions"
     6.5  	  version="2.0">
     6.6  
     6.7 -    <jsp:useBean id="uzivatel" class="cz.frantovo.nekurak.dto.Uzivatel" scope="request"/>
     6.8 +    <jsp:useBean id="uzivatel" class="cz.frantovo.nekurak.dto.PozadavekNaRegistraciUzivatele" scope="request"/>
     6.9      <jsp:useBean id="uzivatelPredRegistraci" class="cz.frantovo.nekurak.web.UzivatelPredRegistraci" scope="request"/>
    6.10      <jsp:useBean id="registraceUzivatele" class="cz.frantovo.nekurak.web.RegistraceUzivatele" scope="session"/>
    6.11  
     7.1 --- a/java/nekurak.net-web/web/styl.css	Thu Mar 04 22:42:34 2010 +0100
     7.2 +++ b/java/nekurak.net-web/web/styl.css	Fri Mar 05 10:28:34 2010 +0100
     7.3 @@ -144,4 +144,4 @@
     7.4  
     7.5  .registraceKontrolaUdaju {
     7.6      color: gray;
     7.7 -}
     7.8 \ No newline at end of file
     7.9 +}