terça-feira, 18 de dezembro de 2007

Jboss.org uma plataforma robusta para desenvolvimento de aplicações Java

Bom a um tempo atrás eu já comentava com meus amigos que o grupo JBOSS iria dominar a plataforma de desenvolvimento Java e que finalmente teriamos uma plataforma decente para o desenvolvimento de aplicações Java em qualquer meio ou dispositivo.
Se fomos analisar a quantidades de frameworks, ferramentas, servidor de aplicação, etc, etc podemos afirmar que o que disse acima é mais pura verdade.
Para exemplificar melhor a dimensão do que estou dizendo vamos analisar a figura abaixo retirada do próprio site jboss.org

Vou explicar o que é para que serve cada uma dos nomes visualizados na figura acima.
É uma refactory do JMX Microkernel para suporte a deploy direto de POJOS e uso Standalone do Servidor de Aplicação
Funcionalidades:
    • Todas as funcionalidades suporta pelo antigo JMX Microkernel
    • Deploy direto de POJOS ( sem necessidade do Standard/XMBean or MBeanProxy )
    • Suporte direto ao Injeção de Dependencia ( IOC dependency injection )
    • Melhoras no gerenciamento do ciclo de vida das aplicações
    • Mais controle sobre as dependências
Framework para desenvolvimento de aplicações orientas a aspectos 100% Java
Framework para manipulação, de modo simples, de Java bytecode. Utiliza progrmação orientada a aspectos, reflexão e invocação de métodos remotos.
Integração das camadas providas pela J2EE com a possibilidade de customização para vários projetos JEMS inclusive o Servidor de Aplicação JBOSS
Single Sign On (SSO) serviço de autenticação de usuários centralizado podendo ser usados por n aplicações de uma mesma corporação ou de aplicações de corporações diferentes.
Simples API que prove acesso remoto a componentes publicados no servidor de aplicação.
Framework para chacheamento de objetos Java provendo assim mais performace nas aplicações Java.
API implementada pelo JBOSS para serialização de Objetos Java possui mais recursos que o mecanismo de serialização oferecido pelo Java.
Serviço de mensageria do JBOSS o qual oferece muito mais recursos que a especificação JMS da JEE.
Implementa a especificação EJB3 da JEE com algumas funcionalidades e facilidades a mais.
Mecanismo de geranciamento de transações implementado pelo JBOSS o qual segue a especificação JEE.
Mecanismo implementado pelo servidor de aplicação JBOSS para o gerenciamento de extensões da tecnologia JAVA, gerenciamento de MBeans, suporte a funcionalidades avançadas como segurança, transações, federações de MBeas e situações de falhas.
Servidor/Container web do JBOSS tem como base o Container Toncat da Apache.
  • JNDI
Serviço de gerenciamento de nomes e diretórios provido pela JEE
  • JCA
Serviço de gerenciamento de conexões especificado pelo Java/JEE
Protocolo de acesso remoto a serviços publicados no servidor de aplicação via CORBA, RMI/IIOP ( RMI para acesso via Internet )
Poderoso framework que venho para contemplar o padrão web beans ou web 2.0. Integra tecnologias como JavaScript, JSF, EJB3, Java Portlets e Busines Process Management BPM. Tenho alguns posts já escritos sobre este framework e estarei escrevendo outros neste blog.
Framework de persitencia Objeto/Relacional e serviços de queres. Para quem conhece sabe que desenvolver uma aplicação comercial em Java sem usá-lo é dar um tiro no pé.
Ferramenta para criação e gerenciameto de Grupos, tento como funcionalidades envio de mensagens muticast .
Framework JSF que possui integração com AJAX e pussui diversos componentes de alta complexidade implementados, dando assim mais produtividade e qualidade no desenvolvimento das aplicações web.
Limpo, simples e poderoso framework de componentes JSF. Um novo framework JSF implementado pela JBOSS, não explorei muito, ainda, este cara.

Além destes descritos acima temos outros não menos importantes mais que não irei detalhar neste post. Para informações completas acesse jboss.org
Como vimos JBOSS tem uma completa plataforma de desenvolvimento a qual esta na altura de Oracle, Sun, IBM.

Bom por hoje era isso, voltaremos!!!!!

domingo, 3 de junho de 2007

Palestra de Hibernate

Olá,



no link abaixo vc encontra a palestra de Hibernate construída e apresentada por Marcelo Mrack nos eventos promovidos pela 3Layer e seus parceiros.



http://www.3layer.com.br/mmrack/public/workshopHibernate.pdf





Abraços!!!

domingo, 27 de maio de 2007

Palestra de Java Server Faces - JSF

Olá, para quem assistiu a minha palestra de Java Sever Faces ou apenas acessou o meu blog e se interessou por ela pode baixar a apresentação da mesma no formato pdf no link abaixo.



http://www.3layer.com.br/juliocs/palestras/Palestra_JSF.pdf





Era isso, abraços

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