Posts

Showing posts with the label jee

Quarkus with Panache

Image
Quarkus is a super interesting project.  IMHO Quarkus is JEE done right. It's super-fast, relies on Netty, uses GraalVM . Today I want to share a video I made about Quarkus with Panache using the Postgres database running on Docker. So Let's get started.  Video Code https://github.com/diegopacheco/java-pocs/tree/master/pocs/quarkus-hibernate-panache-fun https://github.com/diegopacheco/java-pocs/tree/master/pocs/quarkus-jpa-mysql-fun Cheers, Diego Pacheco

JMX e Quartz com Spring no ORACLE Weblogic 10.3

Image
J ava M anagement E xtensions (JMX) é uma tecnologia Java que permite monitorar e gerenciar aplicações Java. É muito comum utilizar este recurso em soluções corporativas escritas em Java. Neste post vou mostrar como expor um bean do Spring como um MBean do JMX . Vamos criar um job no Quartz que de tempos em tempos chama um bean do Spring, com os recursos de JMX do Spring vamos parar este serviço no Quartz de fora da aplicação. Esta aplicação vai estar rodando no ORACLE Weblogic 10.3 e o deploy sera realizado através do maven 2. Um pouco mais sobre JMX JMX é baseado em uma arquitetura de 3 camadas. As camadas são as seguintes: Probe Level :Nesta camada ficam os famosos MBean. Esta camada também é conhecida como camada de instrumentalização. Mais a frente vamos ver como fazer isto com Spring! Agent Level :Nesta camada reside o MBeanServer, que fica entre os MBeans e o nível de gerenciamento. O Spring também facilidades para o MBeanServer. Remote Management Level : Por fi...

JOSSO o Single Sign On que funciona!

Image
Construir uma tela de login é um operação relativamente simples que os desenvolvedores passam pelo menos uma vez na vida. Já vi empresas gastarem muito dinheiro em consultorias e soluções de autenticação que não funcionavam. Autenticar não é o suficiente. Autenticar é só a ponta do iceberg, o bixo pega mesmo quando falamos de autorização. Mas antes de que eu avance muito no assunto, vou definir o que é e o que um SSO deve fazer: Centralizar o acesso aos dados Método padronizado de se autenticar em um sistema Login em 1, acesso em todos os sistemas Auditoria Autorização de acesso a recursos O que as ferramentas de mercado apresentam? Problemas. Falando de Java agora. As ferramentas Open Source Java de SSO tem diversos problemas começando pela documentação os exemplos são deveras simples e muito incompletos. Depois vem as dependências. Uma solução de SSO é por natureza complicada. Por que envolve diversos protocolos, componentes e plataformas. Nenhuma ferramenta de SSO hoje no mercado op...

WebService REST fácil com Groovy e Jersey

Como já disse o Jim Webber o WSDL deve morrer! Não tenho dúvidas de que em termos de produtividade e simplicidade utilizar WS-REST é a melhor solução do que utilizar WS-* . Em 2007 já tinham surgido soluções em Java para implementação de WS-REST como o RESTLet . Hoje após a criação da JSR-311 , que dita como criar um WebService REST em Java existem já alguns frameworks que podemos utilizar além do RESTLet como o Jersey . O Jersey é um framework Java que implementa a JSR-311 além de ser a implementação de referência para essa JSR. Com ele podemos escrever WebServices REST de maneira fácil e rápida utilizando um conjunto de anotações. Você pode publicar um WS-REST utilizando qualquer container como o Glassfish, JBoss, Oracle IAS, ou até mesmo o Tomcat. Mas existe um pequeno servidor chamado de Grizzly . Esse servidor é escrito em Java e prove acesso via HTTP e de forma parcial a API de servlets, mas isso é mais do que suficiente para a escrite e disponibilização de um WS-REST. Vou...

DTO fácil com o Doozer

Image
Um dos patterns mais consolidado e utilizando em outras linguagens além do Java é o Pattern , Layer. Muitos devem ter ouvido falar de aplicações em 3 camadas ou em N camadas . Nesse tipo comum de arquitetura existe a camada de apresentação também chamada de UI e existe a camada de negocio, onde ficam as regras e o processamento em si. Neste modelo arquitetural se faz necessário trafegar objeto s entre essas camadas. Existem diversas formas de realizar essa tarefa. Se você desenvolve utilizando POJOS pode utilizar a técnica mais simples que é passar o próprio POJO entre as camadas. Ao passar o POJO entre as camadas podemos estar expondo detalhes que implementação que não desejamos além de se fazer necessário todo o grafo de dependências do objeto. Em aplicações com remotabilidade, leia-se, EJB , WS-*, WS-REST ou qualquer outra forma de comunicação entre camadas e sistemas, você pode utilizar uma técnica um pouco maios apurada que diminui o acoplamento entre as camadas que é o Pat...

Mapeamento de DN do LDAP com POJOS usando Spring

Em um post anterior eu introduzi o ApacheDS que é uma excelente solução para LDAP. Agora vou mostrar como é possível mapear atributos do LDAP de forma automática usando anotações. Para você realizar isso é necessário todos os requisitos do exemplo anterior . Vou utilizar a mesma arvore LDAP do post anterior . Muito bem vamos aos códigos! Vamos começar por um simples POJO chamado Pessoa. package com.blogspot.diegopacheco.ldap.pojo; import com.blogspot.diegopacheco.ldap.bind.LdapBinding; /** * Pojo Pessoa. * * @author Diego Pacheco * @since 07/12/2008 */ public class Pessoa { @LdapBinding(dn="uid") private String nome; @LdapBinding(dn="cn") private String cargo; public Pessoa() {} public String getNome() { return nome; } public void setNome(String nome) { this.nome = nome; } public String getCargo() { return cargo; } public void setCargo(String cargo) { this.cargo = cargo; } @Override public String toString() { return "nome: " + nome + ...

StackWars: SS ou Redhat?

Recentemente a SpringSource os criadores e mantenedores do Spring Framework, adquiriram a Covalent uma empresa especializada em Tomcat, um pouco antes disso o project leader do AspectJ e um dos grandes responsáveis pela parte de Aspectos no Spring começa a se envolver com OSGI, qual é o resultado disso? Spring DM, uma solução que une o contexto do Spring Framework com OSGI. OSGI é um padrão de fato de mercado des de 1999, agora que a coisa está evoluindo para o ServerSide, a SpringSource foi pioneira nisso, logo depois seguida pelo pessoal do Glassfish . Não é modismo, OSGI é uma solução muito robusto que vai resolver diversos problemas que o J2EE não resolveu! O JBoss vai lançar um solção com OSGI, mas até onde eu sei não será com a mesma magnitude da SS/Glassfish, a ideia do JBOSS é o kernel modular com MBeans. Nesses dias vimos que a SpringSource comprou a G2One , empresa que mantinha o Groovy e o Grails . Tanto é que os caras já fizeram um release . O Próprio Rod Johnson disse...