Jboss Seam: Getting started!

Java, Java Server Faces, Jboss Seam 4 Comments »

Bom, para quem já desenvolve em JSF, diversas vezes se deparou com problemas simples mas que requerem uma solução relativamente complexa. Por exemplo: editar um registro de uma tabela de dados, manter o estado de um combo até o próximo request para validar o item selecionado. Passar dados via GET.

O Jboss seam possui diversas funcionalidades que facilitam a vida do desenvolvedor, com o suporte a Restful URL, melhorias no ciclo de vida JSF, controle de exceções, transações.

Para quem está interessado em trabalhar com ele é bem simples (Hello world):

1 - Faça o download da versão mais atualizada do jboss seam: Clique aqui
2 - Basta criar um projeto em sua IDE preferida (no meu caso eclipse), e inclua os seguintes jars:  javaassist.jar, jboss-seam.jar, jboss-seam-ui.jar e commons-beanutils.jar.
3 - Cria um arquivo xml dentro de web-inf chamado components:


<?xml version="1.0" encoding="UTF-8"?>
<components xmlns="http://jboss.com/products/seam/components"
xmlns:bpm="http://jboss.com/products/seam/bpm"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation=
"http://jboss.com/products/seam/bpm http://jboss.com/products/seam/bpm-2.0.xsd
http://jboss.com/products/seam/components http://jboss.com/products/seam/components-2.0.xsd">

</components>

4 - Edite o arquivo web.xml e cole o seguinte código:


<listener>
<listener-class>org.jboss.seam.servlet.SeamListener</listener-class>
</listener>

<filter>
<filter-name>Seam Filter</filter-name>
<filter-class>org.jboss.seam.servlet.SeamFilter</filter-class>
</filter>

<filter-mapping>
<filter-name>Seam Filter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>

5 - Cria um arquivo xml dentro de web-inf chamado pages:


<?xml version="1.0" encoding="UTF-8"?>
<pages xmlns="http://jboss.com/products/seam/pages"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://jboss.com/products/seam/pages http://jboss.com/products/seam/pages-2.0.xsd">

</pages>

6 - Crie um arquivo  arquivo em branco dentro da pasta de classes: seam.properties. Para que o Seam localize seus componentes anotados.
7 - Agora basta criar uma classe e anotá-la com a anotação: @Name(”HelloWorld”).
8 - Usar o componente criado #{HelloWorld.hello}.

Como pode ver é bem simples e sem mistérios a instalação. Nos próximos dias darei algumas dias para explorar melhor o framework junto com Spring, Hibernate.

Ferramenta para testes de aplicações JSF

Java, Java Server Faces No Comments »

A JBoss anunciou o lançamento da versão beta da JSFUnit. O JSFUnit é uma ferramenta open source dedicada a testes unitários de aplicações JSF baseadas no Catus e JUnit.

Além das semelhanças o JSFUnit dispõem de 3 recursos diferentes:

  • Framework de Teste no Container Destinado para testes que necessitam avaliar tanto o cliente quanto os artefatos JSF no servidor. A exemplo posso citar: teste de escopos e teste de execução da aplicação JSF.
  • Framework para Análises de Teste Permite testar as configurações JSF (faces-config.xml) o que leva conseqüentemente a encontrar os problemas mais rápido.
  • JSFTimer para avaliação de performance do ciclo de vida JSF Permite avaliar o tempo gasto em cada fase JSF para processar uma requisição JSF. É possível definir metas de performance e a execução falha quando ela não é alcançada.

A diferença do JSFUnit em relação a demais ferramentas de testes unitários é que ela permite o teste completo de uma aplicação JSF. É possível criar requisições HTTP reais que lhe permite avaliar o comportamento JSF: árvore de componentes, comportamento dos componentes, o contexto JSF. Além disso é possível obter valor de propriedades dos managed beans usando expressões EL.

Está aí uma boa dica para quem está trabalhando com JSF.

WP Theme & Icons by N.Design Studio
Assine Assine os comentarios