quarta-feira, 18 de abril de 2007

Seam components

Os componentes Seam são POJOs (Plain Old Java Objects), Java Beans ou EJB3 Beans. Seam suporta os seguintes componentes:
  • EJB 3.0 stateless session beans

  • EJB 3.0 stateful session beans

  • EJB 3.0 entity beans

  • JavaBeans

  • EJB 3.0 message-driven beans

Vou falar agora um pouco sobre cada um, como o Seam utiliza suas funcionalidades para facilitar o desenvolvimento de sistemas.

EJB 3.0 Stateless Session Beans
São componentes que não mantém estado por múltiplas invocações, ou seja a cada nova invocação um novo estado é criado. Ele é usado em JSF Action Lsiteners, no entanto não prove propriedades para os componentes de tela do JSF. A vida de um EJB Stateless esta ligada ao Contexto Stateless do Seam

EJB 3.0 Stateful Session Beans
Ao contrário do Stateless este tipo de EJB mantém estado por múltiplas invocações. Com este estado aplicações não armazenam dados temporários em DATA BASES e sim no Stateful Session Beans. Este é umas da principais diferenças entre o Seam e outro frameworks web. As informações armazendas neste estado podem ser acessadas diretamente da sessão web( HttpSession ). O Seam manipula o ciclo de vida deste estado para vc evitando colisões entre diferentes estados em conversações diferentes.
Stateful Session Beans são usados com JSF action listener e com backing beans provendo propriedades para componentes de formulários JSF.
Por padrão Stateful Session Beans são registrado no contexto de conversation e o mesmo nunca pode ser registrado nos contexto Page or Stateless. Todas as requisições para o escopo Stateful Session Bean são serializadas pelo Seam.

EJB 3.0 Entity Beans
São Beans persistentes, objetos que armazenam os dados da aplicação. Este tipo de Bean não suporta bijection ou context demarcation. O Entity Beans não são usados em JSF action listener, no entanto tem grande utilização como provedores de dados as propriedades dos componentes de tela JSF. São muito usados com EJB Stateless Session Beans implementando a famosa funcionalidade CRUD (create, update, delete).
Por padrão os Entity Beans são adicionados no contexto de conversação(conversation) e nunca devemos adiciona-lo no contexto stateless

JavaBeans
Javabeans são usados no Seam como stateless e stateful session bean. No entanto o mesmo não prove as funcionalidades dos Session Beans como: declaração e demarcação de transações, declarações de segurança, eficiente clusterização e replicação, serviço de persistência EJB 3.0, entre outros.
Por padrão os JavaBeans são adicionados no contexto de Evento(event context).

EJB 3.0 Message-driven beans
Message-driven beans podem funcionar como componentes do Seam, no entanto os Message-driven beans são chamados(invocados) completamete diferente dos outros componentes do Seam, ao invés de serem invocados por variáveis de contexto eles ficam escutando mensagens enviadas para uma Fila ou Tópico JMS. Os Message-driven beans não podem ficar limitados a um contexto do Seam. Nem tem acesso ao estado da sessão ou conversação do Bean chamador. Entretanto suportam bijection e outras funcionalidades do Seam.


Bom por hoje é só, no próximo tópico vou falar sobre interceptors, como registrar os componetes no Seam, como definimos escopos para os Beans no Seam entre outras funcionalidades.

Até mais, abraços

segunda-feira, 9 de abril de 2007

Contextos do JBOSS SEAM

Olá,

já ouviram falar de JBOSS SEAM, pois é este framework parece que estar vindo para finalmente temos uma integração entre as camadas de uma aplicação web. Digo isso porque ele elimina os velhos problemas que temos de um aplicação web não ter acesso ao contexto da camada de negócio e vice/versa. Além disso ele implementa novos contextos que até então não existiam como por exemplo:
  • Stateless: Mesmo conceito do Stateless do EJB criado justamente para integração com este tipo de EJB.
  • Event context: Como o nome mesmo diz os objetos registrados neste contexto são vão estar disponíveis durante a execução de um determinado evento.
  • Page context: Contexto já conhecido por todos que trabalham com aplicações web, esta associado ao processo de renderização, carregamento, lauding de uma página.
  • Conversation context: É um dos contextos que diferencia o Seam de qualquer outro framework existente no mercado, com este contexto podemos criar unidades de conversação e registrar nestas unidade todos os objetos e serviços que a aplicação vai necessitar usar quando a mesma estiver sendo executada sobre este contexto. Neste contexto mesmo outras instâncias da aplicação sendo acessadas em janelas diferentes não terão acesso aos artefatos registrados no contexto da outra, ou seja a cada nova instância da aplicação em uma nova janela se caracteriza como uma instância independente, assim uma não terá acesso as informações da outra mesmo sendo executadas na mesma instância do browser.
  • Session context: Este também é muito conhecido por todos que trabalham com aplicações web e nem vou entrar em muitos detalhes. Em resumo este contexto inicia quando acessamos a primeira tela da aplicação e só será destruído quando fecharmos nosso browser ou fazermos um logoff implementado pela aplicação.
  • Business process context: Mais um contexto novo criado pelo Seam, este cara foi criado especialmente para trabalharmos com fluxos de trabalho(workflow), ele garante para nós que qualquer objeto ou serviço registrado neste contexto vai estar disponível até o fim do fluxo. O mesmo fica disponível para múltiplas interações e múltiplos usuários e seu estado é persistente ou seja se eu fechar a aplicação e no dia seguinte acessar ela novamente os objetos registrados no fluxo em questão estarão ali com as informações que eu deixei pela ultima vez, isso se alguém não acessou os mesmos e modificou pois como eu disse eles podem ficar disponíveis a múltiplos usuários, claro que vc pode e deve colocar aqui um controle de acesso para que somente determinados usuários tenham acesso a determinados fluxos, mais para isso o Seam tmb facilita a nossa vida, mais isso mostro com se faz em outro poust.
  • Application context: E por ultimo o tmb já conhecido contexto de aplicação, tudo que registrarmos neste contexto fica disponível para todos que acessarem a mesma, ou seja devemos registrar neste contexto somente serviços que serão acessados por todos e que são imutáveis pois este contexto só atualizado no startup do servidor web.
Bom hoje falei um pouco sobre os contexto existentes no JBOSS SEAM e suas principais utilidades.
Assim que der escreverei mais sobre este fantástico framework .

Abraços

segunda-feira, 19 de março de 2007

Palestra sobre JBOSS SEAM

Olá,
a todos que assistiram ou vão assistir a minha palestra sobre JBOSS SEAM na TargetTrust( Empresa de Treinamentos de Porto Alegres - RS ) e que tem interesse na apresentação podem acessar o link abaixo e baixarem a mesma no formato pdf. Dúvidas e/ou qualquer discussão sobre o framework é só postarem comentários que assim que der responderei.


Download da palestra acesse aqui

Abraços a todos!!!Salvar como rascunho

quinta-feira, 8 de fevereiro de 2007

Porque gosto tanto das morenas

Olá, finalmente volto a escrever no meu blog. Bom e desta vez para tentar entender porque gosto tanto de mulher morena, talvez vcs podem me ajudar a descobrir.
Cara quando vejo um mulher de cabelo preto de preferência bem comprido já é motivo para toda a minha atenção ser direcionada a ela e na maioria das vezes estas mulheres são tão lindas que me apaixono a primeira vista, há se elas soubessem que por elas eu viro um menino bobo que faço quase tudo o que elas querem.
Enquanto tomo uma delícios Xingu fico imaginando quantas lindas morenas estão por ai esperando que eu me apaixone por elas, quando paro de beber penso que na verdade poucas vão ter este privilégio hahahaah.
Se há uma explicação não sei, mais de uma coisa tenho certeza, para que as mulheres que não são morenas me conquistarem vão ter que ter algo muito especial, é vai ser difícil para elas.
Tenho, também, o desejo de conhecer uma mulher oriental, elas tem cabelo preto, lindos, e o seu olhos então, sou fissurado por um olhinho oriental.
É a minha xingu esta acabando eu tenho que dormir para encontrar a linda morena dos meus sonhos.

Por hoje é isso abraços

domingo, 12 de novembro de 2006

Para tudo tem a primeira vez

Olá,

é primeira vez que escrevo em um blog e por conseguência é a primeira vez que crio um bolg. Meu amigo e sócio Marcelo Mrack a um bom tempo escreve em blogs, tem vários deles e sempre me incentivou e cobrou de mim o meu blog.
Mas nada adianta ter um blog e não escrever nada nele, isso sempre foi a minha preocupação, pois me conheço e sei que não sou muito chegado a escrever, além disso na maioria das vezes não tenho tempo para isso, ou melhor tenho mais me falta vontade, motivação, atitude. Hoje estava eu entediado, cansado, pois estamos fazendo um trabalho de integração de sistemas ( nunca peguem este tipo de trabalho) e isso esta me consumindo, voltando ao meu estado de espírito resolvi largar o trabalho e cuidar um pouco da minha vida pessoal, e uma das ações que resolvi tomar foi criar o meu bolg pessoal e aqui estou escrevendo para quem quiser e tiver interesse em ler.
Neste blog vou escrever fatos, situações cotidianas da minha vida, minhas opiniões sobre os mais variados assuntos com os quais tenho contato, certamente estarei criando outros blogs mais focados em determinados assuntos que são de maior importância e constantes na minha vida, mais isso será feito conforme os mesmos forem surgindo.
Então é isso, a partir de hoje o mundo, através da Internet, poderá saber o que penso sobre os mais variados assuntos, claro que como trabalho com Informática os mesmos serão focados mais para esta área.