Musico
Informace
- Webová aplikace vytvořená pomocí technologií EJB a JSF, s úmyslem nasazení na Glassfish serveru.
- Psaná jako semestrální práce pro předmět X33EJA.
-
Účelem bylo osvojit si:
- Návrh doménového modelu a jeho implementaci (alespoň jedna vazba M:N)
- Použití JPA pro persistenci
- Transakce
- Použití EJB (stateless i statefull)
- Lokalizaci do více jazyků
- Autorizaci uživatelů, rozdělení do rolí a zabezpečení přístupu k business vrstvě
- Webové rozhrání (servlety, jsp, nebo web framework)
Zdrojové kódy
-
musico-ejb
- setup
-
src
- conf
-
java
-
cz.cvut.x33eja.macosond
-
business
- music
- user
- util
- persistence
-
business
-
cz.cvut.x33eja.macosond
- build.xml
-
musico-war
-
src
-
java
-
cz.cvut.x33eja.macosond.web
- back
- converter
- resources
-
cz.cvut.x33eja.macosond.web
-
java
-
web
- WEB-INF
-
clientside
-
css
-
img
-
css
- common
- error
- login
- member
- bandList.jsp
- eventList.jsp
- index.jsp
- logout.jsp
- redirect.jsp
- build.xml
-
src
-
src
- conf
- build.xml
1: package cz.cvut.x33eja.macosond.web.converter; 2: 3: import cz.cvut.x33eja.macosond.persistence.entity.Musician; 4: import cz.cvut.x33eja.macosond.web.back.MusicianBack; 5: import javax.faces.component.UIComponent; 6: import javax.faces.context.FacesContext; 7: import javax.faces.convert.Converter; 8: 9: /** 10: * 11: * @author Ondrej Macoszek <macosond@fel.cvut.cz> 12: */ 13: public class MusicianConverter implements Converter 14: { 15: 16: public Object getAsObject(FacesContext context, UIComponent component, String value) 17: { 18: if (value == null || value.length() == 0) { 19: return null; 20: } 21: Integer id = new Integer(value); 22: MusicianBack musicianBack = (MusicianBack) context.getApplication().getELResolver().getValue(context.getELContext(), null, "musicianBack"); 23: return musicianBack.getMusicianBean().get(id); 24: } 25: 26: public String getAsString(FacesContext context, UIComponent component, Object value) 27: { 28: return ((Musician)value).getMusicianID().toString(); 29: } 30: 31: } 32:
