Blog

Série 2 JSF: Criando um newsLetter -NB

programmer 

Ae! pessoal nesse post vou mostrar uma funcionalidade com JSF. A criação de um newsletter com o recurso de campos required. Em outro post sobre JSF apresentei o framework e como esse facilita a criação de formulário com validação de dados. Nessa vamos ver a utilidade dentro de algo bem comum em paginas web os newsletters. Para não ficar um post muito grande não envolvi armazenar os dados em BD usando JSF. Mas, JSF + DB fica para um outro momento. Do not worry guy! 🙂

 Lets go...

 Outros Posts

  1. Primeiramente crie um projeto no seu Netbeans e chame esse de Newsletter.

  2. Clique em next e diga que vai usar o JavaServer Face como framework.

  3. Na proxima tela altere a imagem como abaixo:

    jsf1

  4. Agora vamos criar nossa classe JavaBean então clique com o botão direito no projeto e escolha Java Class e dê o nome NewsletterBean e no package coloque br.news.bean

  5. Precisamos criar as variáveis que tem relação com os campos do formulário, então temos que criar a variável nome e email e permitir o acesso via get/set.
    codenews1

  6. Em seguida temos um método que vai verificar ( acao () ) o que foi digitado antes de “cadastrar” os dados em um possível BD. Esse método retorna uma String pois a partir dessa string o JavaFaces toma as decisões.

    codenews2

  7. crie um arquivo .jsp chamado sucesso.jsp e deixe da forma conforme abaixo

    sucessonews

  8. mude o nome do arquivo welcomeJSP.jsp para index e deixe conforme a seguir

    indexnews

  9. Abra agora o arquivo faces-config.xml no formato XML.

  10. Clique com o botão direito em qualquer local e escolha a opção conforme a imagem abaixo

    faces

  11. Na tela que abriu deixe conforme a imagem a seguir. Assim estamos configurando nosso arquivo para saber qual Bean chamar, bem semelhante como fazemos com o mapeamento usando Servlet.

    faces2
    obs.: a mensagem em vermelho nao deve aparecer quando esse procedimento é executado pela primeira vez.

  12. Faça o mesmo procedimento do passo 10 e escolha Add navigation Rule e deixe como a imagem a seguir. Assim definimos quem será nossa página inicial

    facerule

  13. Seu arquivo faces-config.xml deve está semelhante a imagem a seguir.

    faces3

  14. Escolha o modo PageFlow e faça o link como na imagem a seguir. Não esqueça de colocar o nome de cada case. Observe que em caso de falha ele mantém a pagina e no caso de sucesso ele vai para página sucesso.jsp. Se vc fez a renomeação sua página deve ser index.jsp inves de welcomeJSF.jsp.

    faces4

  15. Agora teste sua aplicação, clique com o botão direito no projeto e em seguida escolha Run. Veja os testes que fiz:

    facetest1

    facetest2

    facetest3

    facetest4

Abraço a todos e espero que tenham gostado do post principalmente aqueles que estão iniciando os estudo com JSF. Até o próximo post.

Reconhecimento UESB – AI IBM

olá! Pessoal! Um pouco atrasado com o post da semana, mas fiquei nos ultimos dias tendo a hospital como casa.  Apesar de conseguir conectar a internet de la, nao era a mesma coisa de estar em casa.  O post de hoje nao é nada técnico(nao esqueci da série JSF) e sim apresentar mais uma iniciativa de uma instituição aqui na Bahia com AI IBM. A UESB, onde na ultima sexta-feira, 04  a instituição foi reconhecida pelo Academic Initiative IBM recebendo a placa de membro AI. Ficando o exemplo  que ser membro AI, nao é uma tarefa dificil e sim força de vontade e com pessoas empenhadas em fazer isso acontecer. Abaixo algumas fotos onde fui entregar a placa de reconhecimento a instituição. Confiram também a matéria oficial  nos links a seguir.

http://www.uesb.br/ascom/ver_noticia_.asp?id=4600

http://www.uesb.br/ascom/ver_noticia_.asp?id=4620

DSC06136

 DSC06135

K1024_P8080019

DSC06125
Reunião com a coordenação SI

Os alunos serão beneficiados em cursos na área de Tecnologia e softwares IBM. De setembro/09 até o final do semestre (dez/2009) serão disponibilizados os seguintes cursos:

1. JEE + DB2  (para os alunos a partir do quinto semestre)

2. Cursos em Tecnologia: SOA, WebServices, ERP , XSLT/XML etc… (para os alunos do primeiro até quarto semestre)

Veja como sua instituicao pode se tornar um membro AI:  http://www.ibm.com/br/university

Quero aproveitar o momento e agradecer  a coordenacao do curso de SI da UESB, pelo apoio, atenção e oportunidade.

abracos,

Série 1 Aplicações JEE – JSF

olá Pessoal, depois de muito tempo sem trazer uma  série para o post, resolvir criar uma para quem está querendo aprender um framework para JEE, nesse caso JSF, onde vou mostrar como criar um formulário usando esse framework tendo a IDE Netbeans como ambiente de desenvolvimento e o glassfish como servidor de app. Parece um exemplo bobo, “criar formulário de login/senha” mas usaremos esse exemplo “bobo” para mostrar como é mais prazeroso usar JavaServerFaces para desenvolvimento JEE. Então para quem está aprendendo o framework da Sun nada melhor dar os primeiros passos com exemplos simples, concorda ? Então temos aqui o primeiro post da série JSF, nos próximos veremos exemplos mais “hot” e finalizaremos a série conectado JSF com BD. Não esqueçam de analisar a produtividade oferecida com o framework e a facilidade de manutenção.

Lets go…

Um pouco sobre JavaServerFaces

É um framework desenvolvido pela Sun, tendo como objetivo facilitar o desenvolvimento de aplicações Web através de componentes de interface de usuário (GUI) e conectar estes componentes a objetos de negócios. Read more…

Livro JSF in Action :Estou lendo este livro para aprimorar meus conhecimentos sobre o framework e realmente o material está excelente, com uma leitura bem confortável. E o melhor nem tão caro é para quem tem cartão internacional e puder comprar no amazon.com (aqui no Brasil nao sei o valor do livro, mas tenho certeza que será mais caro).

Requisitos:

Passo 1

Aqui vamos criar o projeto e o Bean para que o JSF possa acessar.

  1. crie um novo projeto no NB. Dê nome ao projeto, e depois clique em next.

  2. Na quarta parte  onde deve escolher algum framework marque JavaServerFaces. Em Servlet URL Mapping altere para *.jsf . Em seguida clique em finish

  3. jsf1

  4. A estrutura do seu projeto deve ser semelhante a da imagem a seguir

    jsfestrutura

    faces-config.xml = é o arquivo de navegação da sua aplicação com jsf.

  5. crie uma classe java chamada CamBean tendo uma variavel do tipo String nome e em seguida use a tecnica de refatoração “encapsulated field” da IDE. Clique no menu Refactor ==> Encapsulated Field. Em seguida diga que os metodos serão public e os campos private.

  6. Crie um método chamado verifica com o tipo de retorno String

    jsfclassjava

Passo 2 Criar o formulário usando JSF. Para isso altere o arquivo welcomeJSF.jsp deixando como na imagem a seguir

formjsf2

Passo 3

Fazer o mapeamento no arquivo face-config.xml, para navegação da aplicação.

  1. abra o face-config.xml, normalmente esse estará no modo PageFlow altere para XML e clique com o botão direito em qualquer parte em branco e depois clique na opcao como na imagem a seguir.

    <img jsfbean>jsfbean

  2. Agora vamos inserir as regras, para qual pagina inicial deve ser chamada como default. Faça o mesmo procedimento da imagem anterior, mas dessa vez escolha Add Navigation Rule. E preencha a tela que apareceu conforme abaixo.

    <img jsfrule>jsfrule

  3. Salve as alterações. E em seguida crie duas páginas JSP uma com o nome de sucesso.jsp e outra falha.jsp. Essas serão as páginas que serão exibidas de acordo com o resultado.

  4. Abra o arquivo face-config.xml no modo PageFlow e deixe conforme a imagem a seguir.

    <img jsfaceflow>jsffaceflow

Testando aplicação

Para testar aplicação é bem simples, basta clicar com o botão direito do mouse e escolher a opção “Run” e aguardar.

jsftest0

jsftest1

jsftest2

Bom, pessoal! Vou ficando por aqui, e espero que tenham gostado deste primeiro post da série. Até o próximo post.

Um abraço,

Aprenda usar RSA IBM

RSAIBM

Ae! Pessoal!! Hoje vou mostrar como usar o RSA para desenvolvimento de Software. Antes disso tem uma pequena explicação da ferramenta.

Quero que vocês vejam como é possível unir modelagem + code clear de maneira simples. Aqui você não gasta tempo modelando e depois codificando. A própria ferramenta dar esse suporte ao desenvolvedor, arquiteto etc.

Um ponto que não posso deixar de fora que a IDE não gera nada além do código natural da linguagem. É uma boa opção para quem não quer perder tempo escrevendo códigos básicos e focar apenas no negócio. Uma noticia boa aos programadores, desenvolvedores que usam o Eclipse, esses estão em “casa” com RSA, já que este tem como base IDE Eclipse. É como se fosse um eclipse Plus.

Lets go…

Links:

Rational

Sobre RSA

O IBM Rational Software Architect for WebSphere Software é uma ferramenta de design e desenvolvimento integrada que utiliza o desenvolvimento orientado por modelo com UML para a criação de aplicativo e serviços bem arquitetados.

  • Com o Rational Software Architect for WebSphere Software, é possível unificar todos os aspectos de design e desenvolvimento de software. Desenvolva aplicativos de forma mais produtiva do que jamais havia feito.
  • Explore as últimas novidades em tecnologia de linguagem de modelagem.

  • Revise e controle a estrutura de seus aplicativos.

  • Utilize uma plataforma de modelagem aberta e extensiva.

  • Simplifique sua solução de ferramenta de design e desenvolvimento.

  • Integre-se a outras facetas do ciclo de vida.

Fonte: IBM

Download

Você pode fazer download da IDE no site da IBM.

Ou aqueles que participaram de alguma palestra minha e ganhou o DVD do kit software Rational, observe que lá tem tanto o Rational Application Developer – RAD quanto RSA.

Apresentarei a criação de um simples projeto em java usando classes, interfaces, métodos e atributos. Já que o objetivo aqui é mostrar a facilidade que a IDE traz para o desenvolvedor.

Atenção: Para aqueles que ainda estão começando em Java.Por boas práticas aprenda java no bloco de notas depois venha para o RSA.

Iniciando

  1. Primeiro ponto é criar um projeto

  2. Crie um folder chamado diagram

  3. Agora crie outro folder chamado lpjava (ou qualquer outro nome)

  4. selecione lpjava e crie um diagrama class como na figura abaixo

    RSA1

  5. Dê o nome classdiagram

    RSA2

  6. Observe que temos uma paleta para fazer a modelagem.

    RSA3

  7. Na paleta clique em package e depois clique em qualquer lugar em branco na tela do centro da IDE.

  8. Agora ele vai o nome do package digite em Name: lpjava

  9. depois dar um ENTER para confirmar o nome

    Vá observando que em package explorer vai atualizando de acordo com as mudanças no diagrama

  10. Em seguida repita o mesmo procedimento para Interface & Class, os nomes respectivamente Farol e Carro(marque que essa classe terá o metodo main).

    RSA4

  11. Para ver o código basta da dois clique no diagrama desejado, e percebam que é um code clear.

  12. Agora vamos dizer que a class Carro vai implementar a interface Farol. É bem simples selecione o diagrama da classe e observe que há uma setinhas ao redor dela, clique na ponta dessas setas e arraste em direção a interface e na opcao que aparece diga que vai implements

    RSA5

  13. Agora vamos adicionar alguns metodos na class, selecione a classe e clique em adicionar method. (clique na bolinha verde)

    RSA6

  14. Na tela que aparece observe a facilidade que você tem de dizer tudo que esse metodo vai ter. Portanto crie um do tipo void setName(String nome);

    RSA7

RSAcode

Pronto ta feito a modelagem e code clear gerado. Agora é so programar :). Bem, com esse pequeno exemplo parece que seria mais fácil fazer na mão, mas lembre-se que no ambiente de produção não desenvolvemos algo tão simples assim, são N classes, packages, interfaces etc. E 8 horas por dia não é o suficiente.

Bom a pergunta pode ser, para que eu vou aprender RSA/RAD? Se não trabalho na IBM Para quem tem essa opinião pode tirar o “cavalinho da chuva” por que o RSA/RAD é usado pela IBM, parceiros e outras multinacionais. Para verificar se estou mentindo fiz um teste bem simples. Fui no site catho e pesquisei por vagas de empregos Salvador/Bahia e coloquei Java, veja as vagas disponíveis e olha quem está no requisito RAD, RSA e WebSphere.

Mas como posso estudar a ferramenta? Simples, a IBM tem um livro gratuito para desenvolvedor que ensina passo-passo como usar a ferramenta desde fazer seu primeiro “Hello” até modelagem, BD etc. Você encontra esse livro no post abaixo:

Livro Desenvolvedor

Além disso tem os cursos através do Academic Initiative para quem não deseja ler o livro.

Abraço a todos e espero que tenha gostado do post. 🙂

Criando Dynamic WebProject JEE – Eclipse

programmercartoon

olá! Pessoal!! Nesse vou mostrar como é simples e fácil criar um projeto na plataforma Web usando o Eclipse. O motivo desse post, que é bem comum para quem está iniciando os estudos em JEE e normalmente cria  seus projetos JEE  usando Java Project e manualmente configura o ambiente na plataforma JEE (WEB-INF, classes, lib etc).

Com o Dynamic web Project, você tem todo o ambiente configurado já pelo eclipse e ainda escolhe o servidor de aplicação, além de testar aplicação sem precisar sair do eclipse.

Lets go…

Requisitos:

  1. Após abrir o eclipse clique em File ==> New ==> Dynamic Web Project

  2. Deixe sua tela como a seguir.

    dinamicwebproject 1

  3. Observe que escolhi o Tomcat. É importante informar a versão que você tem instalado do seu servidor de aplicação.

  4. Clique em next e agora temos os nomes dos diretórios que serão criados pela IDE. Eu tenho habito de usar no modo padrão.

    Src = onde vai ficar seus arquivos .java

    WebContent = onde você coloca seus arquivos .jsp, .html

    context root = raiz do projeto

  5. clique em finish

  6. Pronto, você já tem um ambiente JEE configurado. Observe na imagem a seguir a estrutura montada pelo eclipse.

    dinamicwebproject 2

  7. Se quiser testar sua aplicação é bem simples basta clicar em Run as ==> Run on Server

    Assim o tomcat é inicializado e sua aplicação é carregada.

  8. A seguir tem um exemplo de uma aplicação chamada “locadora”que criei apenas para mostrar um dynamic web project em ação. Esse está inserindo informações em um BD Mysql.

  9. A primeira imagem é a estrutura do projeto. Quero chamar atenção que coloquei o driver do mysql no diretório do Apache e quando criei o projeto esse já foi importado.

    dinamicwebproject 3

  10. é um projeto bem simples tem apenas uma pagina index.jsp que chama um formulário de cadastro de carro. Temos também duas classes .java uma de conexão com o mysql e outra que faz a manipulação no mysql.

  11. Agora vamos ver aplicação rodando dentro do eclipse e veja como é bem mais produtivo.

    dinamicwebproject 4

  12. Se o eclipse perguntar qual server deseja executar escolha o qual usou para o projeto e depois clique em finish

    dinamicwebproject 5

  13. Voce deve receber uma tela como a seguinte. Veja que maravilha, um browser e no rodapé o status do tomcat, tudo no mesmo lugar.

    dinamicwebproject 6

  14. Vejam como é bem mais produtivo trabalhar usando dynamic web project.

    dinamicwebproject 7

Vou ficando por aqui! E espero que tenham gostado. Quero lembrar que o objetivo deste post foi mostrar a produtividade de desenvolver aplicações JEE usando dynamic web project. Em outro post podemos criar uma aplicação usando “dynamic web project + BD”. Um forte abraço a todos e até o proximo post.