Então vamos à parte 2 deste tutorial.
Agora vamos criar algumas páginas JSP e Java, para começar a transformar nosso projeto em um “projeto”.
Mas primeiro, deixa eu explicar a finalidade destas páginas.
Vamos desenvolver um projetinho simples de JSF, para exemplificar a comunicação e configuração das páginas e do projeto em si, para isso iremos construir uma páginazinha index com uma opção de cadastro, ao clicar no link será aberta uma página de cadastro com 3 campos: Nome, e-mail e um “botão” submit, ao enviar este formulário os beans serão populados e estas informações serão exibidas em outra página, com um botão de voltar para a página inicial.
Ficará mais ou menos assim:
Página inicial / Menu:
Página de cadastro:
Página de Falha no cadastro (Caso não tenha sido digitado nada na tela):
Página de cadastro (Após clicar no botão “Tentar novamente” da página de erro):
Página de sucesso (Ao preencher os campos de cadastro corretamente):
Página principal (Ao clicar no botão “Voltar” da página de Sucesso.)
Agora que já sabemos como o projeto irá ficar no final, podemos começar a construir as páginas.
Aqui vale uma explicação sobre as páginas. Em JSF nenhuma tag especial consegue ser executada se a página não for chamada “página.jsf”, se você chamar em algum link “página.jsp”, por exemplo, o console irá acusar um erro, informando que as tags da página solicitada são inválidos. Não se esqueça disso!
Crie a seguinte estrutura de arquivos (dentro das pastas indicadas nas imagens, crie as pastas que não existirem):
Então teremos os seguintes arquivos criados:
testeBean dentro das pastas (pacote) br.com.projetox.view.bean;
messages.properties dentro das pastas (pacote) br.com.projetox.view.bundle;
index.jsp dentro da pasta WebContent;
falha.jsp dentro da pasta WebContent/pages;
inicio.jsp dentro da pasta WebContent/pages;
menu.jsp dentro da pasta WebContent/pages;
sucesso.jsp dentro da pasta WebContent/pages;
Agora que criamos todos os arquivos, vamos preenchê-los com códigos, começando do BEAN.
Abra o arquivo testeBean.java e crie duas váriáveis String, uma nome e outra email (exatamente com estes nomes) e faça os gets e sets das variáveis. Crie também um método testar(), para executar alguma ação e retornar algum “endereço” para a aplicação.
Segue o código:
//----INICIO DO CÓDIGO DA CLASSE testeBean.java
package br.com.projetox.view.bean;
/**
* @author codeerror.wordpress.com
*/
public class testeBean {
private String nome;
private String email;
public String testar(){
String retorno = "falhou";
if(!this.nome.equals("") && !this.email.equals("")){
retorno = "sucesso";
}
return retorno;
}
public String getNome() {
return nome;
}
public void setNome(String novoNome) {
this.nome = novoNome;
}
public String getEmail() {
return email;
}
public void setEmail(String novoEmail) {
this.email = novoEmail;
}
}
//----- FIM DO CÓDIGO DA CLASSE testeBean.java
Sim eu sei, falta JavaDoc, mas precisamos economizar linhas aqui no post…Deixa eu explicar o que significa cada coisa.
As variáveis são private String, por que queremos variáveis do tipo String, e private por que não é pra mais ninguém (nenhuma outra classe) acessar estas variáveis diretamente, isto é um padrão de desenvolvimento.
O método testar() verifica se os campos nome e e-mail possuem algum valor, se eles possuirem algum valor o método irá retornar “sucesso” caso eles estejam em branco, o método irá retornar “falha“, irei falar o significado destes retornos mais pra frente, mas já da pra se ter uma idéia.
Depois do método testar() estão os gets e sets das variáveis. Estes métodos são necessários (e muito) para praticamente tudo em java, eles que controlam a entrada e saida das variáveis, por exemplo o método getNome() retorna o valor contido na variável nome, o método setNome(String novoNome) copia o valor da variável novoNome para a variável nome do bean.
Agora vamos falar do arquivo messages.properties, mas a explicação deste arquivo é um pouco extensa, e este post já está bem grande, então continuarei no proximo post!
PRÓXIMO PASSO (PARTE 3).
Nenhum comentário:
Postar um comentário