Os materiais didáticos aqui disponibilizados estão licenciados através de Creative Commons Atribuição-SemDerivações-SemDerivados CC BY-NC-ND. Você possui a permissão para visualizar e compartilhar, desde que atribua os créditos do autor. Não poderá alterá-los e nem utilizá-los para fins comerciais.
Atribuição-SemDerivações-SemDerivados
CC BY-NC-ND
Cursos / Informática para Internet / Desenvolvimento Web II / Aula
Na mesma ordem de criação das classes de domínio, vamos implementar o cadastro de cobradores. Começaremos com o controller CadastrarCobradorMBean, apresentado na Listagem 9, que deve ser incluído no pacote br.ufrn.imd.controllers e possuir os atributos: cobrador e cobradoresCadastrados.
package br.ufrn.imd.controllers;
import java.util.ArrayList;
import java.util.List;
import javax.faces.application.FacesMessage;
import javax.faces.bean.ManagedBean;
import javax.faces.bean.SessionScoped;
import javax.faces.context.FacesContext;
import br.ufrn.imd.model.Cobrador;
/**
* Controller para cadastrar cobradores.
* @author itamir.filho
*
*/
@ManagedBean
@SessionScoped
public class CadastrarCobradorMBean {
private Cobrador cobrador;
private List<Cobrador> cobradores;
public CadastrarCobradorMBean() {
cobrador = new Cobrador();
cobradores = new ArrayList<Cobrador>();
}
public String entrarCadastro(){
return "/form_cobrador.jsf";
}
public String voltar(){
return "/index.jsf";
}
public String cadastrar() {
cobradores.add(cobrador);
cobrador = new Cobrador();
FacesMessage msg = new FacesMessage("Cobrador cadastrado com sucesso!");
msg.setSeverity(FacesMessage.SEVERITY_INFO);
FacesContext.getCurrentInstance().addMessage("", msg);
return "/form_cobrador.jsf";
}
public Cobrador getCobrador() {
return cobrador;
}
public void setCobrador(Cobrador cobrador) {
this.cobrador = cobrador;
}
public List<Cobrador> getCobradores() {
return cobradores;
}
public void setCobradores(List<Cobrador> cobradores) {
this.cobradores = cobradores;
}
}
Vamos à view para cadastrar cobradores que é apresentada na Listagem 10. Essa página, denominada form_cobrador.xhtml, contém os atributos para inserção das informações de um cobrador e também deve ser incluída na pasta WebContent do seu projeto.
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:h="http://java.sun.com/jsf/html"
xmlns:f="http://java.sun.com/jsf/core">
<h:head>
<title>Cobrador</title>
</h:head>
<h:body>
<h:messages/>
<h1>Novo cobrador</h1>
<h:form>
<fieldset>
<p> Nome: <h:inputText value="#{cadastrarCobradorMBean.cobrador.nome}" size="50" required="true" requiredMessage="Nome: Campo obrigatório." /> </p>
<p> CPF: <h:inputText value="#{cadastrarCobradorMBean.cobrador.cpf}" size="20" required="true" requiredMessage="CPF: Campo obrigatório." /> </p>
<p> Matrícula: <h:inputText value="#{cadastrarCobradorMBean.cobrador.matricula}" size="20" required="true" requiredMessage="Matrícula: Campo obrigatório." /> </p>
<p> Endereço: <h:inputTextarea value="#{cadastrarCobradorMBean.cobrador.endereco}" size="50" required="true" requiredMessage="Endereço: Campo obrigatório." /> </p>
<p> <h:commandButton value="Cadastrar" action="#{cadastrarCobradorMBean.cadastrar}" />
<h:commandButton value="Voltar" action="#{cadastrarCobradorMBean.voltar}"
immediate="true"/> </p>
</fieldset>
</h:form>
</h:body>
</html>
Ao implementar as Listagens 9 e 10, podemos acessar esse formulário pelo endereço http://localhost:8080/SITURB/form_cobrador.jsf, onde obtemos a página apresentada na Figura 2.
Versão 5.3 - Todos os Direitos reservados