Escolar Documentos
Profissional Documentos
Cultura Documentos
1) Vamos criar uma aplicao que faz realiza as funcionalidades CRUD de todas as entidades
especificadas pelo diagrama de classes abaixo.
<!persistence-unit> <!persistence>
4) Dentro da pasta src do !ro"eto$Crud vamos criar 6 pacotes5 modelo& fac#ada& converters e
beansgerenciados. !ara criar um novo pacote dentro da pasta src& basta clicar com o boto direito do mouse sobre a pasta src e ir em 3e7 8 9t#er.. 8 !ac:age.
6) -gora& vamos criar as classes em 'ava que representam esse diagrama. !ara isso& devemos
criar 6 classes dentro do pacote modelo5 !essoa& -luno& Curso e Disciplina. 0odas devem conter os atributos especificados no diagrama e as anota;es para realizar a persist<ncia em banco de dados. (egue abaixo o c4digo fonte das 6 classes5
Pessoa.java
package modelo" import java.io.#eriali$able" import javax.persistence.%" import java.util.&ate" '(ntity ')nheritance*strategy = )nheritance+ype.3,45+2, '+able*name = -pessoa-,
public class
private static final long serial6ersionU42 = /L" ')d '0olumn*name = -0 1-2 nullable=false, private #tring cp3" '4asic*optional = false, '0olumn*name = -567(-2 nullable=false, private #tring nome" '4asic*optional = false, '0olumn*name = -&8+858#0)7(5+6-2 nullable=false, private &ate data5ascimento" '4asic*optional = false, '0olumn*name = -+(L(165(-2 nullable=true, private #tring tele3one" public 9 essoa*, .
public #tring get0p3*, . return cp3" 9 public void set0p3*#tring cp3, . this.cp3 = cp3" 9 public #tring get5ome*, . return nome" 9 public void set5ome*#tring nome, . this.nome = nome" 9 public &ate get&ata5ascimento*, . return data5ascimento" 9 public void set&ata5ascimento*&ate data5ascimento, . this.data5ascimento = data5ascimento" 9 public #tring get+ele3one*, . return tele3one" 9 public void set+ele3one*#tring tele3one, . this.tele3one = tele3one" 9 '6verride public boolean e:uals*6bject object, . !! TODO: ;arning - this method <on=t <or> in the case the id 3ields are not set if *?*object instanceof essoa,, . return false" 9 essoa other = * essoa, object" if *?*this.get0p3*,.e:uals*other.get0p3*,,,, . return false" 9 return true" 9 9
Aluno.java
package modelo" import java.io.#eriali$able" import javax.persistence.%" '(ntity '+able*name = -aluno-, public class 8luno extends
private static final long serial6ersionU42 = /L" '4asic*optional = false, '0olumn*name = -@8-2 nullable=false, private int ra" '4asic*optional = false, '0olumn*name = -(78)L-2 nullable=false, private #tring email" '4asic*optional = false, '0olumn*name = -(#06L8@)&8&(-2 nullable=true, private #tring escolaridade" 'Aoin0olumn*name = -0B@#6C)&-2 re3erenced0olumn5ame = -)&-2 nullable=false, '7any+o6ne private 0urso curso" public 8luno*, . 9 public int get@a*, . return ra" 9 public void set@a*int ra, . this.ra = ra" 9 public #tring get(mail*, . return email" 9 public void set(mail*#tring email, . this.email = email" 9 public #tring get(scolaridade*, . return escolaridade" 9 public void set(scolaridade*#tring escolaridade, . this.escolaridade = escolaridade" 9 public 0urso get0urso*, . return curso" 9 public void set0urso*0urso curso, . this.curso = curso" 9 '6verride public boolean e:uals*6bject object, . !! TODO: ;arning - this method <on=t <or> in the case the id 3ields are not set if *?*object instanceof 8luno,, . return false" 9 8luno other = *8luno, object" if *?*this.get0p3*,.e:uals*other.get0p3*,,,, . return false" 9 return true" 9 9
Curso.java
'+able*name = -curso-, public class 0urso implements #eriali$able . private static final long serial6ersionU42 = /L" ')d 'DeneratedEalue*strategy = Deneration+ype.42+5T4T7, '0olumn*name = -)&-2 nullable=false, private int id" '4asic*optional = false, '0olumn*name = -567(-2 nullable=false, private #tring nome" '4asic*optional = false, '0olumn*name = -567(&( 8@+87(5+6-2 nullable=false, private #tring nome&epartamento" '4asic*optional = false, '0olumn*name = -08@D8H6@8@)8-2 nullable=true, private int cargaHoraria" public 0urso*, . 9 public int get)d*, . return id" 9 public void set)d*int id, . this.id = id" 9 public #tring get5ome*, . return nome" 9 public void set5ome*#tring nome, . this.nome = nome" 9 public #tring get5ome&epartamento*, . return nome&epartamento" 9 public void set5ome&epartamento*#tring nome&epartamento, . this.nome&epartamento = nome&epartamento" 9 public int get0argaHoraria*, . return cargaHoraria" 9 public void set0argaHoraria*int cargaHoraria, . this.cargaHoraria = cargaHoraria" 9 '6verride public boolean e:uals*6bject object, . !! TODO: ;arning - this method <on=t <or> in the case the id 3ields are not set if *?*object instanceof 0urso,, . return false" 9 0urso other = *0urso, object" if *?*this.get)d*, == other.get)d*,,, . return false" 9 return true" 9 9
Disciplina.java
package modelo" import java.io.#eriali$able"
import javax.persistence.%" import modelo.0urso" '(ntity '+able*name = -disciplina-, public class &isciplina implements #eriali$able . private static final long serial6ersionU42 = /L" ')d 'DeneratedEalue*strategy = Deneration+ype.42+5T4T7, '0olumn*name = -)&-2 nullable=false, private int id" '4asic*optional = false, '0olumn*name = -567(-2 nullable=false, private #tring nome" '4asic*optional = false, '0olumn*name = -FB85+)&8&(0@(&)+6#-2 nullable=true, private int :uantidade0reditos" '4asic*optional = false, '0olumn*name = -567( @61(##6@-2 nullable=true, private #tring nome ro3essor" 'Aoin0olumn*name = -0B@#6C)&-2 re3erenced0olumn5ame = -)&-2 nullable=false, '7any+o6ne private 0urso curso" public &isciplina*, . 9 public int get)d*, . return id" 9 public void set)d*int id, . this.id = id" 9 public #tring get5ome*, . return nome" 9 public void set5ome*#tring nome, . this.nome = nome" 9 public int getFuantidade0reditos*, . return :uantidade0reditos" 9 public void setFuantidade0reditos*int :uantidade0reditos, . this.:uantidade0reditos = :uantidade0reditos" 9 public #tring get5ome ro3essor*, . return nome ro3essor" 9 public void set5ome ro3essor*#tring nome ro3essor, . this.nome ro3essor = nome ro3essor" 9 public 0urso get0urso*, . return curso" 9 public void set0urso*0urso curso, . this.curso = curso" 9 '6verride public boolean e:uals*6bject object, . !! TODO: ;arning - this method <on=t <or> in the case the id 3ields are not set if *?*object instanceof &isciplina,, . return false" 9 &isciplina other = *&isciplina, object" if *?*this.get)d*, == other.get)d*,,, . return false" 9
return true" 9 9
7)
-gora& vamos criar as classes no padro )ac#ada para acesso das classes !essoa& -luno& Disciplina e Curso ao banco de Dados. 2remos criar = novas classes dentro do pacote fac#ada& sendo5 -bstract)acade& !essoa)acade& -luno)acade& Curso)acade e Disciplina)acade. (egue abaixo o c4digo de cada uma dessas classes5 AbstractFacade.java
pac>age 3achada" import import import import java.util.List" javax.persistence.(ntity7anager" javax.persistence.(ntity7anager1actory" javax.persistence. ersistence"
public abstract class 8bstract1acade<+> . private 0lass<+> entity0lass" protected static (ntity7anager1actory em3 = ersistence.create(ntity7anager1actory*- rojetoC0rud-," public 8bstract1acade*0lass<+> entity0lass, . this.entity0lass = entity0lass" 9 protected abstract (ntity7anager get(ntity7anager*," public void create*+ entity, . try . get(ntity7anager*,.get+ransaction*,.begin*," get(ntity7anager*,.persist*entity," get(ntity7anager*,.get+ransaction*,.commit*," 9 catch *(xception e, . e.print#tac>+race*," 9 9 public void edit*+ entity, . try . get(ntity7anager*,.get+ransaction*,.begin*," get(ntity7anager*,.merge*entity," get(ntity7anager*,.get+ransaction*,.commit*," 9 catch *(xception e, . e.print#tac>+race*," 9 9 public void remove*+ entity, . try . get(ntity7anager*,.get+ransaction*,.begin*," get(ntity7anager*,.remove*get(ntity7anager*,.merge*entity,," get(ntity7anager*,.get+ransaction*,.commit*," 9 catch *(xception e, . e.print#tac>+race*," 9 9 public + 3ind*6bject id, . return get(ntity7anager*,.3ind*entity0lass2 id," 9
'#uppress;arnings*. -unchec>ed-2 -ra<types- 9, public List<+> 3ind8ll*, . javax.persistence.criteria.0riteriaFuery c: = get(ntity7anager*,.get0riteria4uilder*,.createFuery*," c:.select*c:.3rom*entity0lass,," return get(ntity7anager*,.createFuery*c:,.get@esultList*," 9 '#uppress;arnings*. -unchec>ed-2 -ra<types- 9, public List<+> 3ind@ange*intGH range, . javax.persistence.criteria.0riteriaFuery c: = get(ntity7anager*,.get0riteria4uilder*,.createFuery*," c:.select*c:.3rom*entity0lass,," javax.persistence.Fuery : = get(ntity7anager*,.createFuery*c:," :.set7ax@esults*rangeG/H - rangeGIH," :.set1irst@esult*rangeGIH," return :.get@esultList*," 9 '#uppress;arnings*. -unchec>ed-2 -ra<types- 9, public int count*, . javax.persistence.criteria.0riteriaFuery c: = get(ntity7anager*,.get0riteria4uilder*,.createFuery*," javax.persistence.criteria.@oot<+> rt = c:.3rom*entity0lass," c:.select*get(ntity7anager*,.get0riteria4uilder*,.count*rt,," javax.persistence.Fuery : = get(ntity7anager*,.createFuery*c:," return **Long, :.get#ingle@esult*,,.intEalue*," 9 9
PessoaFacade.java
pac>age 3achada" import javax.persistence.(ntity7anager" import modelo. essoa" public class essoa1acade extends 8bstract1acade< essoa> . private (ntity7anager em = 8bstract1acade.em3.create(ntity7anager*," protected (ntity7anager get(ntity7anager*, . return em" 9 public essoa1acade*, . super* essoa.class," 9 9
AlunoFacade.java
pac>age 3achada" import javax.persistence.(ntity7anager" import modelo.8luno" public class 8luno1acade extends 8bstract1acade<8luno> . private (ntity7anager em = 8bstract1acade.em3.create(ntity7anager*," protected (ntity7anager get(ntity7anager*, . return em" 9
CursoFacade.java
pac>age 3achada" import javax.persistence.(ntity7anager" import modelo.0urso" public class 0urso1acade extends 8bstract1acade<0urso> . private (ntity7anager em = 8bstract1acade.em3.create(ntity7anager*," protected (ntity7anager get(ntity7anager*, . return em" 9 public 0urso1acade*, . super*0urso.class," 9 9
DisciplinaFacade.java
pac>age 3achada" import javax.persistence.(ntity7anager" import modelo.&isciplina" public class &isciplina1acade extends 8bstract1acade<&isciplina> . private (ntity7anager em = 8bstract1acade.em3.create(ntity7anager*," protected (ntity7anager get(ntity7anager*, . return em" 9 public &isciplina1acade*, . super*&isciplina.class," 9 9
8)
-gora& vamos criar os >eans ?erenciados que vo receber as requisi;es das p@ginas eb da aplicao. Vamos criar 6 beans gerenciados dentro do pacote beansgerenciados5 !essoa*anaged>ean& -luno*anaged>ean& Curso*anaged>ean e Disciplina*anaged>ean. 9s c4digos desses beans gerenciados seguem abaixo5 PessoaManaged ean.java
pac>age beansgerenciados" import import import import import import import import java.util.8rrayList" java.util.List" javax.3aces.model.#elect)tem" javax.3aces.event.8ction(vent" javax.3aces.bean.7anaged4ean" javax.3aces.bean.@e:uest#coped" 3achada. essoa1acade" modelo. essoa"
essoa1acade*,"
public essoa get essoa*, . return pessoa" 9 public void set essoa* essoa pessoa, . this.pessoa = pessoa" 9 public #tring ne< essoa*, . this.pessoa1acade.create*this.pessoa," return -ne<#uccess-" 9 public #tring edit essoa*, . this.pessoa1acade.edit*this.pessoa," return -edit#uccess-" 9 public void remove essoa*8ction(vent e, . #tring id = *#tring, e.get0omponent*,.get8ttributes*,.get*-cod essoa-," this.pessoa1acade.remove*this.pessoa1acade.3ind*id,," 9 public void 3ind essoa*8ction(vent e, . #tring id = *#tring, e.get0omponent*,.get8ttributes*,.get*-cod essoa-," this.pessoa = this.pessoa1acade.3ind*id," 9 public List< essoa> getLista essoas*, . return this.pessoa1acade.3ind8ll*," 9 public List<#elect)tem> get essoas*, . List<#elect)tem> list = ne< 8rrayList<#elect)tem>*," List< essoa> it = getLista essoas*," 3or *int i = I" i < it.si$e*," iJJ, . essoa pessoa = it.get*i," list.add*ne< #elect)tem*pessoa2 pessoa.get0p3*,J--,," 9 return list" 9 9
AlunoManaged ean.java
pac>age beansgerenciados" import import import import import import import import java.util.8rrayList" java.util.List" javax.3aces.model.#elect)tem" javax.3aces.event.8ction(vent" javax.3aces.bean.7anaged4ean" javax.3aces.bean.@e:uest#coped" 3achada.8luno1acade" modelo.8luno"
'7anaged4ean*name=-8luno7anaged4ean-, '@e:uest#coped public class 8luno7anaged4ean . private 8luno aluno = ne< 8luno*,"
private 8luno1acade aluno1acade = ne< 8luno1acade*," public 8luno7anaged4ean*, . 9 public 8luno get8luno*, . return aluno" 9 public void set8luno*8luno aluno, . this.aluno = aluno" 9 public #tring ne<8luno*, . this.aluno1acade.create*this.aluno," return -ne<#uccess-" 9 public #tring edit8luno*, . this.aluno1acade.edit*this.aluno," return -edit#uccess-" 9 public void remove8luno*8ction(vent e, . #tring id = *#tring, e.get0omponent*,.get8ttributes*,.get*-cod8luno-," this.aluno1acade.remove*this.aluno1acade.3ind*id,," 9 public void 3ind8luno*8ction(vent e, . #tring id = *#tring, e.get0omponent*,.get8ttributes*,.get*-cod8luno-," this.aluno = this.aluno1acade.3ind*id," 9 public List<8luno> getLista8lunos*, . return this.aluno1acade.3ind8ll*," 9 public List<#elect)tem> get8lunos*, . List<#elect)tem> list = ne< 8rrayList<#elect)tem>*," List<8luno> it = getLista8lunos*," 3or *int i = I" i < it.si$e*," iJJ, . 8luno aluno = it.get*i," list.add*ne< #elect)tem*aluno2 aluno.get0p3*,J--,," 9 return list" 9 9
CursoManaged ean.java
pac>age beansgerenciados" import import import import import import import import java.util.8rrayList" java.util.List" javax.3aces.model.#elect)tem" javax.3aces.event.8ction(vent" javax.3aces.bean.7anaged4ean" javax.3aces.bean.@e:uest#coped" 3achada.0urso1acade" modelo.0urso"
'7anaged4ean*name=-0urso7anaged4ean-, '@e:uest#coped public class 0urso7anaged4ean . private 0urso curso = ne< 0urso*," private 0urso1acade curso1acade = ne< 0urso1acade*,"
public 0urso7anaged4ean*, . 9 public 0urso get0urso*, . return curso" 9 public void set0urso*0urso curso, . this.curso = curso" 9 public #tring ne<0urso*, . this.curso1acade.create*this.curso," return -ne<#uccess-" 9 public #tring edit0urso*, . this.curso1acade.edit*this.curso," return -edit#uccess-" 9 public void remove0urso*8ction(vent e, . )nteger id = *)nteger, e.get0omponent*,.get8ttributes*,.get*-cod0urso-," this.curso1acade.remove*this.curso1acade.3ind*id,," 9 public void 3ind0urso*8ction(vent e, . )nteger id = *)nteger, e.get0omponent*,.get8ttributes*,.get*-cod0urso-," this.curso = this.curso1acade.3ind*id," 9 public List<0urso> getLista0ursos*, . return this.curso1acade.3ind8ll*," 9 public List<#elect)tem> get0ursos*, . List<#elect)tem> list = ne< 8rrayList<#elect)tem>*," List<0urso> it = getLista0ursos*," 3or *int i = I" i < it.si$e*," iJJ, . 0urso curso = it.get*i," list.add*ne< #elect)tem*curso2 curso.get)d*,J--,," 9 return list" 9 9
DisciplinaManaged ean.java
pac>age beansgerenciados" import import import import import import import import java.util.8rrayList" java.util.List" javax.3aces.model.#elect)tem" javax.3aces.event.8ction(vent" javax.3aces.bean.7anaged4ean" javax.3aces.bean.@e:uest#coped" 3achada.&isciplina1acade" modelo.&isciplina"
'7anaged4ean*name=-&isciplina7anaged4ean-, '@e:uest#coped public class &isciplina7anaged4ean . private &isciplina disciplina = ne< &isciplina*," private &isciplina1acade disciplina1acade = ne< &isciplina1acade*,"
public &isciplina7anaged4ean*, . 9 public &isciplina get&isciplina*, . return disciplina" 9 public void set&isciplina*&isciplina disciplina, . this.disciplina = disciplina" 9 public #tring ne<&isciplina*, . this.disciplina1acade.create*this.disciplina," return -ne<#uccess-" 9 public #tring edit&isciplina*, . this.disciplina1acade.edit*this.disciplina," return -edit#uccess-" 9 public void remove&isciplina*8ction(vent e, . )nteger id = *)nteger, e.get0omponent*,.get8ttributes*,.get*-cod&isciplina-," this.disciplina1acade.remove*this.disciplina1acade.3ind*id,," 9 public void 3ind&isciplina*8ction(vent e, . )nteger id = *)nteger, e.get0omponent*,.get8ttributes*,.get*-cod&isciplina-," this.disciplina = this.disciplina1acade.3ind*id," 9 public List<&isciplina> getLista&isciplinas*, . return this.disciplina1acade.3ind8ll*," 9 public List<#elect)tem> get&isciplinas*, . List<#elect)tem> list = ne< 8rrayList<#elect)tem>*," List<&isciplina> it = getLista&isciplinas*," 3or *int i = I" i < it.si$e*," iJJ, . &isciplina disciplina = it.get*i," list.add*ne< #elect)tem*disciplina2 disciplina.get)d*,J--,," 9 return list" 9 9
9) -gora& vamos criar uma classe Converter para a classe Curso. 2sso A necess@rio& pois na
interface eb #aver@ um combobox para selecionar um curso no cadastro de -luno e no cadastro de Disciplina. /ssa classe converter facilita a converso do texto escrito no combobox para o ob"eto referete aquele texto. Desta forma& vamos criar a classe CursoConverter dentro do pacote converters. CursoConverter.java
pac>age converters" import import import import import import javax.3aces.component.B)0omponent" javax.3aces.context.1aces0ontext" javax.3aces.convert.0onverter" javax.3aces.convert.1aces0onverter" 3achada.0urso1acade" modelo.0urso"
'1aces0onverter*-0urso0onverter-, public class 0urso0onverter implements 0onverter . public 6bject get8s6bject*1aces0ontext context2 B)0omponent component2 #tring value, . return ne< 0urso1acade*,.3ind*ne< )nteger*value,," 9 public #tring get8s#tring*1aces0ontext context2 B)0omponent component2 6bject value, . 0urso curso = *0urso, value" return curso.get)d*,J--" 9 9
10) -gora vamos criar as p@ginas eb utilizando o frame7or: '(). !ara cada uma das classes do
pacote modelo B!essoa& -luno& Curso& DisciplinaC devero ser criadas D p@ginas Bcadastrar& editar e listarC e uma p@gina index Bp@gina inicialC. eb
11) Dentro da pasta ebContent crie 6 novas pastas5 !essoa& -luno& Curso e Disciplina. !ara criar
uma nova pasta dentro da pasta ebContent& clique com o boto direito do mouse em cima da pasta ebContent& v@ em 3e7 8 )older. Digite o nome da nova pasta e clique em 9E.
12) Criada as 6 pastas& vamos criar as p@ginas eb referente a !essoa& dentro da pasta !essoa.
!ara criar uma nova p@gina eb v@ em 3e7 8 9t#er.. / procure por '(! )ile.
ne!Pessoa.jsp
<K'page content+ype="text/html" page(ncoding="UTF-8"K> <K'taglib pre3ix="8" uri="http://java.sun.com/js8/core"K> <K'taglib pre3ix="h" uri="http://java.sun.com/js8/html"K> <3:vie<>
<html> <head> <meta http-e:uiv=")ontent-T/pe" content="text/html9% charset:UTF-8"!> <title>5e< essoa<!title> <!head> <body> <div class="line-separator"><!div> <div style=-text-align:center-> <h/ class="title">5e< essoa<!h/> <!div> <div class="line-separator"><!div> <br> <h:3orm> <h:panelDrid columns="2" style0lass="ta.le"> <h:output+ext value="cp8"!> <h:input+ext re:uired="true" label="cp8" value="L. essoa7anaged4ean.pessoa.cp39"!> <h:output+ext value="nome"!> <h:input+ext re:uired="true" label="nome" value="L. essoa7anaged4ean.pessoa.nome9"!> <h:output+ext value="'ata5ascimento"!> <h:input+ext re:uired="true" label="'ata5ascimento" value="L. essoa7anaged4ean.pessoa.data5ascimento9"> <3:convert&ate+ime pattern="''/""/////"!> <!h:input+ext> <h:output+ext value="tele8one"!> <h:input+ext label="tele8one" value="L. essoa7anaged4ean.pessoa.tele3one9"!> <!h:panelDrid> <br> <h:messages error0lass="error"><!h:messages> <div style=-text-align:center-> <h:command4utton value="$ave" action="L. essoa7anaged4ean.ne< essoa9" style0lass="save"!> <h:command4utton value=")ancel" immediate="true" action="list(essoa" style0lass="cancel"!> <!div> <!h:3orm> <!body> <!html> <!3:vie<>
editPessoa.jsp
<K'page content+ype="text/html" page(ncoding="UTF-8"K> <K'taglib pre3ix="8" uri="http://java.sun.com/js8/core"K> <K'taglib pre3ix="h" uri="http://java.sun.com/js8/html"K> <3:vie<> <html> <head> <meta http-e:uiv=")ontent-T/pe" content="text/html9% charset:UTF-8"!> <title>(dit essoa<!title> <!head> <body> <div class="line-separator"><!div> <div style=-text-align:center-> <h/ class="title">(dit essoa<!h/> <!div> <div class="line-separator"><!div> <br> <h:3orm>
<table class="ta.le"> <tr> <td>cp3<!td> <td> <h:inputHidden value="L. essoa7anaged4ean.pessoa.cp39"!> <h:input+ext disabled="true" value="L. essoa7anaged4ean.pessoa.cp39"!> <!td> <!tr> <tr> <td>nome<!td> <td> <h:input+ext re:uired="true" label="nome" value="L. essoa7anaged4ean.pessoa.nome9"!> <!td> <!tr> <tr> <td>data5ascimento<!td> <td> <h:input+ext re:uired="true" label="'ata5ascimento" value="L. essoa7anaged4ean.pessoa.data5ascimento9"> <3:convert&ate+ime pattern="''/""/////"!> <!h:input+ext> <!td> <!tr> <tr> <td>tele3one<!td> <td> <h:input+ext label="tele8one" value="L. essoa7anaged4ean.pessoa.tele3one9"!> <!td> <!tr> <!table> <br> <h:messages error0lass="error"><!h:messages> <div style=-text-align:center-> <h:command4utton value="$ave" action="L. essoa7anaged4ean.edit essoa9" style0lass="save"!> <h:command4utton value=")ancel" immediate="true" action="list(essoa" style0lass="cancel"!> <!div> <!h:3orm> <!body> <!html> <!3:vie<>
listPessoa.jsp
<K'page content+ype="text/html" page(ncoding="UTF-8"K> <K'taglib pre3ix="8" uri="http://java.sun.com/js8/core"K> <K'taglib pre3ix="h" uri="http://java.sun.com/js8/html"K> <3:vie<> <html> <head> <meta http-e:uiv=")ontent-T/pe" content="text/html9% charset:UTF-8"!> <title>List o3 essoa<!title> <!head> <body> <div class="line-separator"><!div> <div style=-text-align:center->
<h/ class="title">List o3 essoa<!h/> <!div> <div class="line-separator"><!div> <br> <h:3orm> <h:data+able value="L. essoa7anaged4ean.lista essoas9" var="item" style0lass="list&ta.le" header0lass="hea'er" ro<0lasses="row1;row2"> <h:column> <3:3acet name="hea'er" > <h:output+ext value="cp8"!> <!3:3acet> <h:output+ext value="L.item.cp39"!> <!h:column> <h:column> <3:3acet name="hea'er" > <h:output+ext value="nome"!> <!3:3acet> <h:output+ext value="L.item.nome9"!> <!h:column> <h:column> <3:3acet name="hea'er" > <h:output+ext value="'ata5ascimento"!> <!3:3acet> <h:output+ext value="L.item.data5ascimento9"> <3:convert&ate+ime pattern="''/""/////"!> <!h:output+ext> <!h:column> <h:column> <3:3acet name="hea'er" > <h:output+ext value="tele8one"!> <!3:3acet> <h:output+ext value="L.item.tele3one9"!> <!h:column> <h:column> <3:3acet name="hea'er" > <h:output+ext value="+'itar"!> <!3:3acet> <h:commandLin> value="e'itar" type="su.mit" action="e'it(essoa" actionListener="L. essoa7anaged4ean.3ind essoa9" > <3:attribute name="co'(essoa" value="L.item.cp39"!> <!h:commandLin>> <!h:column> <h:column> <3:3acet name="hea'er" > <h:output+ext value="*emover"!> <!3:3acet> <h:commandLin> value="remover" type="su.mit"% actionListener="L. essoa7anaged4ean.remove essoa9" > <3:attribute name="co'(essoa" value="L.item.cp39"!> <!h:commandLin>> <!h:column> <!h:data+able> <br> <div style=-text-align:center-> <h:command4utton value="<ac=%to%4n'ex" immediate="true" action="in'ex" style0lass=".utton"!> <h:command4utton value="5ew%(essoa" immediate="true" action="new(essoa" style0lass=".utton"!> <!div> <!h:3orm>
>?@pa e%contentT/pe:"text/html"%pa e+nco'in :"UTF-8"?A <K'taglib pre3ix="8" uri="http://java.sun.com/js8/core"K> <K'taglib pre3ix="h" uri="http://java.sun.com/js8/html"K> <3:vie<> <html> <head> <meta http-e:uiv=")ontent-T/pe" content="text/html9% charset:UTF-8"!> <title>5e< 8luno<!title> <!head> <body> <div class="line-separator"><!div> <div style=-text-align:center-> <h/ class="title">5e< 8luno<!h/> <!div> <div class="line-separator"><!div> <br> <h:3orm> <h:panelDrid columns="2" style0lass="ta.le"> <h:output+ext value="cp8"!> <h:input+ext re:uired="true" label="cp8" value="L.8luno7anaged4ean.aluno.cp39"!> <h:output+ext value="nome"!> <h:input+ext re:uired="true" label="nome" value="L.8luno7anaged4ean.aluno.nome9"!> <h:output+ext value="'ata5ascimento"!> <h:input+ext re:uired="true" label="'ata5ascimento" value="L.8luno7anaged4ean.aluno.data5ascimento9"> <3:convert&ate+ime pattern="''/""/////"!> <!h:input+ext> <h:output+ext value="tele8one"!> <h:input+ext label="tele8one" value="L.8luno7anaged4ean.aluno.tele3one9"!> <h:output+ext value="ra"!> <h:input+ext re:uired="true" label="ra" value="L.8luno7anaged4ean.aluno.ra9"!> <h:output+ext value="email"!> <h:input+ext re:uired="true" label="email" value="L.8luno7anaged4ean.aluno.email9"!> <h:output+ext value="escolari'a'e"!> <h:input+ext label="escolari'a'e" value="L.8luno7anaged4ean.aluno.escolaridade9"!> <h:output+ext value="curso"!> <h:select6ne7enu re:uired="true" label="curso" value="L.8luno7anaged4ean.aluno.curso9"> <3:select)tems value="L.0urso7anaged4ean.cursos9"% !> <3:converter converter)d=")urso)onverter"!> <!h:select6ne7enu> <!h:panelDrid> <br> <h:messages error0lass="error"><!h:messages>
<div style=-text-align:center-> <h:command4utton value="$ave" action="L.8luno7anaged4ean.ne<8luno9" style0lass="save"!> <h:command4utton value=")ancel" immediate="true" action="list-luno" style0lass="cancel"!> <!div> <!h:3orm> <!body> <!html> <!3:vie<>
editAluno.jsp
<K'page content+ype="text/html" page(ncoding="UTF-8"K> <K'taglib pre3ix="8" uri="http://java.sun.com/js8/core"K> <K'taglib pre3ix="h" uri="http://java.sun.com/js8/html"K> <3:vie<> <html> <head> <meta http-e:uiv=")ontent-T/pe" content="text/html9% charset:UTF-8"!> <title>(dit 8luno<!title> <!head> <body> <div class="line-separator"><!div> <div style=-text-align:center-> <h/ class="title">(dit 8luno<!h/> <!div> <div class="line-separator"><!div> <br> <h:3orm> <table class="ta.le"> <tr> <td>cp3<!td> <td> <h:inputHidden value="L.8luno7anaged4ean.aluno.cp39"!> <h:input+ext disabled="true" value="L.8luno7anaged4ean.aluno.cp39"!> <!td> <!tr> <tr> <td>nome<!td> <td> <h:input+ext re:uired="true" label="nome" value="L.8luno7anaged4ean.aluno.nome9"!> <!td> <!tr> <tr> <td>data5ascimento<!td> <td> <h:input+ext re:uired="true" label="'ata5ascimento" value="L.8luno7anaged4ean.aluno.data5ascimento9"> <3:convert&ate+ime pattern="''/""/////"!> <!h:input+ext> <!td> <!tr> <tr> <td>tele3one<!td> <td> <h:input+ext label="tele8one"
value="L.8luno7anaged4ean.aluno.tele3one9"!> <!td> <!tr> <tr> <td>ra<!td> <td> <h:input+ext re:uired="true" label="ra" value="L.8luno7anaged4ean.aluno.ra9"!> <!td> <!tr> <tr> <td>email<!td> <td> <h:input+ext re:uired="true" label="email" value="L.8luno7anaged4ean.aluno.email9"!> <!td> <!tr> <tr> <td>escolaridade<!td> <td> <h:input+ext label="escolari'a'e" value="L.8luno7anaged4ean.aluno.escolaridade9"!> <!td> <!tr> <tr> <td>curso<!td> <td> <h:select6ne7enu re:uired="true" label="curso" value="L.8luno7anaged4ean.aluno.curso9"> <3:select)tems value="L.0urso7anaged4ean.cursos9" !> <3:converter converter)d=")urso)onverter"!> <!h:select6ne7enu> <!td> <!tr> <!table> <br> <h:messages error0lass="error"><!h:messages> <div style=-text-align:center-> <h:command4utton value="$ave" action="L.8luno7anaged4ean.edit8luno9" style0lass="save"!> <h:command4utton value=")ancel" immediate="true" action="list-luno" style0lass="cancel"!> <!div> <!h:3orm> <!body> <!html> <!3:vie<>
listAluno.jsp
<K'page content+ype="text/html" page(ncoding="UTF-8"K> <K'taglib pre3ix="8" uri="http://java.sun.com/js8/core"K> <K'taglib pre3ix="h" uri="http://java.sun.com/js8/html"K> <3:vie<> <html> <head> <meta http-e:uiv=")ontent-T/pe" content="text/html9% charset:UTF-8"!> <title>List o3 8luno<!title> <!head> <body>
<div class="line-separator"><!div> <div style=-text-align:center-> <h/ class="title">List o3 8luno<!h/> <!div> <div class="line-separator"><!div> <br> <h:3orm> <h:data+able value="L.8luno7anaged4ean.lista8lunos9" var="item" style0lass="list&ta.le" header0lass="hea'er" ro<0lasses="row1;row2"> <h:column> <3:3acet name="hea'er" > <h:output+ext value="cp8"!> <!3:3acet> <h:output+ext value="L.item.cp39"!> <!h:column> <h:column> <3:3acet name="hea'er" > <h:output+ext value="nome"!> <!3:3acet> <h:output+ext value="L.item.nome9"!> <!h:column> <h:column> <3:3acet name="hea'er" > <h:output+ext value="'ata5ascimento"!> <!3:3acet> <h:output+ext value="L.item.data5ascimento9"> <3:convert&ate+ime pattern="''/""/////"!> <!h:output+ext> <!h:column> <h:column> <3:3acet name="hea'er" > <h:output+ext value="tele8one"!> <!3:3acet> <h:output+ext value="L.item.tele3one9"!> <!h:column> <h:column> <3:3acet name="hea'er" > <h:output+ext value="ra"!> <!3:3acet> <h:output+ext value="L.item.ra9"!> <!h:column> <h:column> <3:3acet name="hea'er" > <h:output+ext value="email"!> <!3:3acet> <h:output+ext value="L.item.email9"!> <!h:column> <h:column> <3:3acet name="hea'er" > <h:output+ext value="escolari'a'e"!> <!3:3acet> <h:output+ext value="L.item.escolaridade9"!> <!h:column> <h:column> <3:3acet name="hea'er" > <h:output+ext value="curso"!> <!3:3acet> <h:output+ext value="L.item.curso9"> <3:converter converter)d=")urso)onverter"!> <!h:output+ext> <!h:column>
<h:column> <3:3acet name="hea'er" > <h:output+ext value="+'itar"!> <!3:3acet> <h:commandLin> value="e'itar" type="su.mit" action="e'it-luno" actionListener="L.8luno7anaged4ean.3ind8luno9" > <3:attribute name="co'-luno" value="L.item.cp39"!> <!h:commandLin>> <!h:column> <h:column> <3:3acet name="hea'er" > <h:output+ext value="*emover"!> <!3:3acet> <h:commandLin> value="remover" type="su.mit"% actionListener="L.8luno7anaged4ean.remove8luno9" > <3:attribute name="co'-luno" value="L.item.cp39"!> <!h:commandLin>> <!h:column> <!h:data+able> <br> <div style=-text-align:center-> <h:command4utton value="<ac=%to%4n'ex" immediate="true" action="in'ex" style0lass=".utton"!> <h:command4utton value="5ew%-luno" immediate="true" action="new-luno" style0lass=".utton"!> <!div> <!h:3orm> <!body> <!html> <!3:vie<>
<h:input+ext re:uired="true" label="nome2epartamento" value="L.0urso7anaged4ean.curso.nome&epartamento9"!> <h:output+ext value="car aBoraria"!> <h:input+ext label="car aBoraria" value="L.0urso7anaged4ean.curso.cargaHoraria9"!> <!h:panelDrid> <br> <h:messages error0lass="error"><!h:messages> <div style=-text-align:center-> <h:command4utton value="$ave" action="L.0urso7anaged4ean.ne<0urso9" style0lass="save"!> <h:command4utton value=")ancel" immediate="true" action="list)urso" style0lass="cancel"!> <!div> <!h:3orm> <!body> <!html> <!3:vie<>
editCurso.jsp
<K'page content+ype="text/html" page(ncoding="UTF-8"K> <K'taglib pre3ix="8" uri="http://java.sun.com/js8/core"K> <K'taglib pre3ix="h" uri="http://java.sun.com/js8/html"K> <3:vie<> <html> <head> <meta http-e:uiv=")ontent-T/pe" content="text/html9% charset:UTF-8"!> <title>(dit 0urso<!title> <!head> <body> <div class="line-separator"><!div> <div style=-text-align:center-> <h/ class="title">(dit 0urso<!h/> <!div> <div class="line-separator"><!div> <br> <h:3orm> <table class="ta.le"> <h:inputHidden value="L.0urso7anaged4ean.curso.id9"!> <tr> <td>nome<!td> <td> <h:input+ext re:uired="true" label="nome" value="L.0urso7anaged4ean.curso.nome9"!> <!td> <!tr> <tr> <td>nome&epartamento<!td> <td> <h:input+ext re:uired="true" label="nome2epartamento" value="L.0urso7anaged4ean.curso.nome&epartamento9"!> <!td> <!tr> <tr> <td>cargaHoraria<!td> <td> <h:input+ext label="car aBoraria" value="L.0urso7anaged4ean.curso.cargaHoraria9"!> <!td>
<!tr> <!table> <br> <h:messages error0lass="error"><!h:messages> <div style=-text-align:center-> <h:command4utton value="$ave" action="L.0urso7anaged4ean.edit0urso9" style0lass="save"!> <h:command4utton value=")ancel" immediate="true" action="list)urso" style0lass="cancel"!> <!div> <!h:3orm> <!body> <!html> <!3:vie<>
listCurso.jsp
<K'page content+ype="text/html" page(ncoding="UTF-8"K> <K'taglib pre3ix="8" uri="http://java.sun.com/js8/core"K> <K'taglib pre3ix="h" uri="http://java.sun.com/js8/html"K> <3:vie<> <html> <head> <meta http-e:uiv=")ontent-T/pe" content="text/html9% charset:UTF-8"!> <title>List o3 0urso<!title> <!head> <body> <div class="line-separator"><!div> <div style=-text-align:center-> <h/ class="title">List o3 0urso<!h/> <!div> <div class="line-separator"><!div> <br> <h:3orm> <h:data+able value="L.0urso7anaged4ean.lista0ursos9" var="item" style0lass="list&ta.le" header0lass="hea'er" ro<0lasses="row1;row2"> <h:column> <3:3acet name="hea'er" > <h:output+ext value="i'"!> <!3:3acet> <h:output+ext value="L.item.id9"!> <!h:column> <h:column> <3:3acet name="hea'er" > <h:output+ext value="nome"!> <!3:3acet> <h:output+ext value="L.item.nome9"!> <!h:column> <h:column> <3:3acet name="hea'er" > <h:output+ext value="nome2epartamento"!> <!3:3acet> <h:output+ext value="L.item.nome&epartamento9"!> <!h:column> <h:column> <3:3acet name="hea'er" > <h:output+ext value="car aBoraria"!> <!3:3acet> <h:output+ext value="L.item.cargaHoraria9"!> <!h:column>
<h:column> <3:3acet name="hea'er" > <h:output+ext value="+'itar"!> <!3:3acet> <h:commandLin> value="e'itar" type="su.mit" action="e'it)urso" actionListener="L.0urso7anaged4ean.3ind0urso9" > <3:attribute name="co')urso" value="L.item.id9"!> <!h:commandLin>> <!h:column> <h:column> <3:3acet name="hea'er" > <h:output+ext value="*emover"!> <!3:3acet> <h:commandLin> value="remover" type="su.mit"% actionListener="L.0urso7anaged4ean.remove0urso9" > <3:attribute name="co')urso" value="L.item.id9"!> <!h:commandLin>> <!h:column> <!h:data+able> <br> <div style=-text-align:center-> <h:command4utton value="<ac=%to%4n'ex" immediate="true" action="in'ex" style0lass=".utton"!> <h:command4utton value="5ew%)urso" immediate="true" action="new)urso" style0lass=".utton"!> <!div> <!h:3orm> <!body> <!html> <!3:vie<>
"#$page%contentT&pe'"text/html"%page(ncoding'"UTF-8"#) <K'taglib pre3ix="8" uri="http://java.sun.com/js8/core"K> <K'taglib pre3ix="h" uri="http://java.sun.com/js8/html"K> <3:vie<> <html> <head> <meta http-e:uiv=")ontent-T/pe" content="text/html9% charset:UTF-8"!> <title>5e< &isciplina<!title> <!head> <body> <div class="line-separator"><!div> <div style=-text-align:center-> <h/ class="title">5e< &isciplina<!h/> <!div> <div class="line-separator"><!div> <br> <h:3orm> <h:panelDrid columns="2" style0lass="ta.le"> <h:output+ext value="nome"!> <h:input+ext re:uired="true" label="nome"
value="L.&isciplina7anaged4ean.disciplina.nome9"!> <h:output+ext value="0uanti'a'e)re'itos"!> <h:input+ext label="0uanti'a'e)re'itos" value="L.&isciplina7anaged4ean.disciplina.:uantidade0reditos9"!> <h:output+ext value="nome(ro8essor"!> <h:input+ext label="nome(ro8essor" value="L.&isciplina7anaged4ean.disciplina.nome ro3essor9"!> <h:output+ext value="curso"!> <h:select6ne7enu re:uired="true" label="curso" value="L.&isciplina7anaged4ean.disciplina.curso9"> <3:select)tems value="L.0urso7anaged4ean.cursos9"% !> <3:converter converter)d=")urso)onverter"!> <!h:select6ne7enu> <!h:panelDrid> <br> <h:messages error0lass="error"><!h:messages> <div style=-text-align:center-> <h:command4utton value="$ave" action="L.&isciplina7anaged4ean.ne<&isciplina9" style0lass="save"!> <h:command4utton value=")ancel" immediate="true" action="list2isciplina" style0lass="cancel"!> <!div> <!h:3orm> <!body> <!html> <!3:vie<>
editDisciplina.jsp
"#$page%contentT&pe'"text/html"%page(ncoding'"UTF-8"#) <K'taglib pre3ix="8" uri="http://java.sun.com/js8/core"K> <K'taglib pre3ix="h" uri="http://java.sun.com/js8/html"K> <3:vie<> <html> <head> <meta http-e:uiv=")ontent-T/pe" content="text/html9% charset:UTF-8"!> <title>(dit &isciplina<!title> <!head> <body> <div class="line-separator"><!div> <div style=-text-align:center-> <h/ class="title">(dit &isciplina<!h/> <!div> <div class="line-separator"><!div> <br> <h:3orm> <table class="ta.le"> <h:inputHidden value="L.&isciplina7anaged4ean.disciplina.id9"!> <tr> <td>nome<!td> <td> <h:input+ext re:uired="true" label="nome" value="L.&isciplina7anaged4ean.disciplina.nome9"!> <!td> <!tr> <tr> <td>:uantidade0reditos<!td> <td> <h:input+ext label="0uanti'a'e)re'itos"
value="L.&isciplina7anaged4ean.disciplina.:uantidade0reditos9"!> <!td> <!tr> <tr> <td>nome ro3essor<!td> <td> <h:input+ext label="nome(ro8essor" value="L.&isciplina7anaged4ean.disciplina.nome ro3essor9"!> <!td> <!tr> <tr> <td>curso<!td> <td> <h:select6ne7enu re:uired="true" label="curso" value="L.&isciplina7anaged4ean.disciplina.curso9"> <3:select)tems value="L.0urso7anaged4ean.cursos9" !> <3:converter converter)d=")urso)onverter"!> <!h:select6ne7enu> <!td> <!tr> <!table> <br> <h:messages error0lass="error"><!h:messages> <div style=-text-align:center-> <h:command4utton value="$ave" action="L.&isciplina7anaged4ean.edit&isciplina9" style0lass="save"!> <h:command4utton value=")ancel" immediate="true" action="list2isciplina" style0lass="cancel"!> <!div> <!h:3orm> <!body> <!html> <!3:vie<>
listDisciplina.jsp
"#$page%contentT&pe'"text/html"%page(ncoding'"UTF-8"#) <K'taglib pre3ix="8" uri="http://java.sun.com/js8/core"K> <K'taglib pre3ix="h" uri="http://java.sun.com/js8/html"K> <3:vie<> <html> <head> <meta http-e:uiv=")ontent-T/pe" content="text/html9% charset:UTF-8"!> <title>List o3 &isciplina<!title> <!head> <body> <div class="line-separator"><!div> <div style=-text-align:center-> <h/ class="title">List o3 &isciplina<!h/> <!div> <div class="line-separator"><!div> <br> <h:3orm> <h:data+able value="L.&isciplina7anaged4ean.lista&isciplinas9" var="item" style0lass="list&ta.le" header0lass="hea'er" ro<0lasses="row1;row2"> <h:column> <3:3acet name="hea'er" > <h:output+ext value="i'"!> <!3:3acet>
value="0uanti'a'e)re'itos"!>
<h:output+ext value="L.item.id9"!> <!h:column> <h:column> <3:3acet name="hea'er" > <h:output+ext value="nome"!> <!3:3acet> <h:output+ext value="L.item.nome9"!> <!h:column> <h:column> <3:3acet name="hea'er" > <h:output+ext
<!3:3acet> <h:output+ext value="L.item.:uantidade0reditos9"!> <!h:column> <h:column> <3:3acet name="hea'er" > <h:output+ext value="nome(ro8essor"!> <!3:3acet> <h:output+ext value="L.item.nome ro3essor9"!> <!h:column> <h:column> <3:3acet name="hea'er" > <h:output+ext value="curso"!> <!3:3acet> <h:output+ext value="L.item.curso9"> <3:converter converter)d=")urso)onverter"!> <!h:output+ext> <!h:column> <h:column> <3:3acet name="hea'er" > <h:output+ext value="+'itar"!> <!3:3acet> <h:commandLin> value="e'itar" type="su.mit" action="e'it2isciplina" actionListener="L.&isciplina7anaged4ean.3ind&isciplina9"% > <3:attribute name="co'2isciplina" value="L.item.id9"!> <!h:commandLin>> <!h:column> <h:column> <3:3acet name="hea'er" > <h:output+ext value="*emover"!> <!3:3acet> <h:commandLin> value="remover" type="su.mit"% actionListener="L.&isciplina7anaged4ean.remove&isciplina9" > <3:attribute name="co'2isciplina" value="L.item.id9"!> <!h:commandLin>> <!h:column> <!h:data+able> <br> <div style=-text-align:center-> <h:command4utton value="<ac=%to%4n'ex" immediate="true" action="in'ex" style0lass=".utton"!> <h:command4utton value="5ew%2isciplina" immediate="true" action="new2isciplina" style0lass=".utton"!> <!div> <!h:3orm> <!body> <!html>
<!3:vie<>
17) Vamos adicionar as regras de navegao no arquivo faces1config.xml que est@ na pasta
ebContent. />123). 9 c4digo final do arquivo segue abaixo5 faces*config.xml
"+xml%version''1.0'%encoding''UTF-8'+) <3aces-con3ig version="2.0" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.or /2001/!"#$chema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee% http://java.sun.com/xml/ns/javaee/we.-8acescon8i &2&0.xs'"> <converter> <converter-id>0urso0onverter<!converter-id> <converter-class>converters.0urso0onverter<!converter-class> <!converter> <navigation-rule> <3rom-vie<-id>%<!3rom-vie<-id> <navigation-case> <3rom-outcome>ne<&isciplina<!3rom-outcome>
<to-vie<-id>!&isciplina!ne<&isciplina.jsp<!to-vie<-id> <redirect!> <!navigation-case> <navigation-case> <3rom-outcome>edit&isciplina<!3rom-outcome> <to-vie<-id>!&isciplina!edit&isciplina.jsp<!to-vie<-id> <!navigation-case> <navigation-case> <3rom-outcome>list&isciplina<!3rom-outcome> <to-vie<-id>!&isciplina!list&isciplina.jsp<!to-vie<-id> <redirect!> <!navigation-case> <navigation-case> <3rom-outcome>index<!3rom-outcome> <to-vie<-id>!index.jsp<!to-vie<-id> <redirect!> <!navigation-case> <!navigation-rule> <navigation-rule> <3rom-vie<-id>!&isciplina!ne<&isciplina.jsp<!3rom-vie<-id> <navigation-case> <3rom-outcome>ne<#uccess<!3rom-outcome> <to-vie<-id>!&isciplina!list&isciplina.jsp<!to-vie<-id> <redirect!> <!navigation-case> <!navigation-rule> <navigation-rule> <3rom-vie<-id>!&isciplina!edit&isciplina.jsp<!3rom-vie<-id> <navigation-case> <3rom-outcome>edit#uccess<!3rom-outcome> <to-vie<-id>!&isciplina!list&isciplina.jsp<!to-vie<-id> <redirect!> <!navigation-case> <!navigation-rule> <navigation-rule> <3rom-vie<-id>%<!3rom-vie<-id> <navigation-case> <3rom-outcome>ne< essoa<!3rom-outcome> <to-vie<-id>! essoa!ne< essoa.jsp<!to-vie<-id> <redirect!> <!navigation-case> <navigation-case> <3rom-outcome>edit essoa<!3rom-outcome> <to-vie<-id>! essoa!edit essoa.jsp<!to-vie<-id> <!navigation-case> <navigation-case> <3rom-outcome>list essoa<!3rom-outcome> <to-vie<-id>! essoa!list essoa.jsp<!to-vie<-id> <redirect!> <!navigation-case> <navigation-case> <3rom-outcome>index<!3rom-outcome> <to-vie<-id>!index.jsp<!to-vie<-id> <redirect!> <!navigation-case> <!navigation-rule> <navigation-rule> <3rom-vie<-id>! essoa!ne< essoa.jsp<!3rom-vie<-id> <navigation-case>
<3rom-outcome>ne<#uccess<!3rom-outcome> <to-vie<-id>! essoa!list essoa.jsp<!to-vie<-id> <redirect!> <!navigation-case> <!navigation-rule> <navigation-rule> <3rom-vie<-id>! essoa!edit essoa.jsp<!3rom-vie<-id> <navigation-case> <3rom-outcome>edit#uccess<!3rom-outcome> <to-vie<-id>! essoa!list essoa.jsp<!to-vie<-id> <redirect!> <!navigation-case> <!navigation-rule> <navigation-rule> <3rom-vie<-id>%<!3rom-vie<-id> <navigation-case> <3rom-outcome>ne<8luno<!3rom-outcome> <to-vie<-id>!8luno!ne<8luno.jsp<!to-vie<-id> <redirect!> <!navigation-case> <navigation-case> <3rom-outcome>edit8luno<!3rom-outcome> <to-vie<-id>!8luno!edit8luno.jsp<!to-vie<-id> <!navigation-case> <navigation-case> <3rom-outcome>list8luno<!3rom-outcome> <to-vie<-id>!8luno!list8luno.jsp<!to-vie<-id> <redirect!> <!navigation-case> <navigation-case> <3rom-outcome>index<!3rom-outcome> <to-vie<-id>!index.jsp<!to-vie<-id> <redirect!> <!navigation-case> <!navigation-rule> <navigation-rule> <3rom-vie<-id>!8luno!ne<8luno.jsp<!3rom-vie<-id> <navigation-case> <3rom-outcome>ne<#uccess<!3rom-outcome> <to-vie<-id>!8luno!list8luno.jsp<!to-vie<-id> <redirect!> <!navigation-case> <!navigation-rule> <navigation-rule> <3rom-vie<-id>!8luno!edit8luno.jsp<!3rom-vie<-id> <navigation-case> <3rom-outcome>edit#uccess<!3rom-outcome> <to-vie<-id>!8luno!list8luno.jsp<!to-vie<-id> <redirect!> <!navigation-case> <!navigation-rule> <navigation-rule> <3rom-vie<-id>%<!3rom-vie<-id> <navigation-case> <3rom-outcome>ne<0urso<!3rom-outcome> <to-vie<-id>!0urso!ne<0urso.jsp<!to-vie<-id> <redirect!> <!navigation-case>
<navigation-case> <3rom-outcome>edit0urso<!3rom-outcome> <to-vie<-id>!0urso!edit0urso.jsp<!to-vie<-id> <!navigation-case> <navigation-case> <3rom-outcome>list0urso<!3rom-outcome> <to-vie<-id>!0urso!list0urso.jsp<!to-vie<-id> <redirect!> <!navigation-case> <navigation-case> <3rom-outcome>index<!3rom-outcome> <to-vie<-id>!index.jsp<!to-vie<-id> <redirect!> <!navigation-case> <!navigation-rule> <navigation-rule> <3rom-vie<-id>!0urso!ne<0urso.jsp<!3rom-vie<-id> <navigation-case> <3rom-outcome>ne<#uccess<!3rom-outcome> <to-vie<-id>!0urso!list0urso.jsp<!to-vie<-id> <redirect!> <!navigation-case> <!navigation-rule> <navigation-rule> <3rom-vie<-id>!0urso!edit0urso.jsp<!3rom-vie<-id> <navigation-case> <3rom-outcome>edit#uccess<!3rom-outcome> <to-vie<-id>!0urso!list0urso.jsp<!to-vie<-id> <redirect!> <!navigation-case> <!navigation-rule> <!3aces-con3ig>