Gerando arquivos ODF com Java: anunciando o ODFEasy

Semana passada, em um de nossos projetos, precisamos gerar alguns gráficos no Excel usando Java. Não para nossa surpresa, o suporte a esta funcionalidade do formato Excel é extremamente limitada para aqueles que trabalham com Java. Basicamente, vimos duas opções: Criar um modelo pré-definido com um gráfico já pré-criado e, em seguida, simplesmente preencher algumas […]

Gerando arquivos ODF com Java: anunciando o ODFEasy Read More »

RESTfull Grails:artigo de Scott Davis sobre aplicação de REST usando Grails

Encontrei hoje pela manhã este excelente artigo de Scott Davis sobre como implementar uma arquitetura orientada a serviços usando REST. O que achei interessante é que contém uma introdução muito bem feita aos conceitos básicos do REST para aqueles que estão se iniciando na área. Fica aí a dica.

RESTfull Grails:artigo de Scott Davis sobre aplicação de REST usando Grails Read More »

Lendo XML com Groovy (ou como causar inveja em um programador Java (e depois satisfazê-la!)) – (ou ainda, como ler XML SEMPRE deveria ter sido)

Sempre achei XML paradoxal. Por um lado, trata-se de uma tecnologia fantástica: a sintaxe do XML é simplíssima. Qualquer um consegue gerar um documento no formato XML. No entanto, em contrapartida, ler o bem dito documento (ao menos em Java) pode ser um suplício. Há ferramentas que facilitam este trabalho (Dom4J, XStreamer, etc.), mas é

Lendo XML com Groovy (ou como causar inveja em um programador Java (e depois satisfazê-la!)) – (ou ainda, como ler XML SEMPRE deveria ter sido) Read More »

Groovy: detalhes que encantam aqueles que programam em Java

Confesso: estou viciado em Groovy. Desde que aprendi a linguagem a um ano e meio (ou dois?) anos atrás, toda vez que vou programar em Java sinto falta de algum detalhe da sintaxe do Groovy na mesma. Aqui pretendo expor alguns detes pequenos detalhes que, embora não essenciais, são extremamente úteis no dia a dia

Groovy: detalhes que encantam aqueles que programam em Java Read More »

Gambiarra esperta: trabalhando com mais de um banco de dados usando Hibernate (ou qualquer ferramenta ORM)

Hibernate é fenomenal, mas tem um problema: quando precisamos lidar com mais de um banco de dados, as coisas se complicam. Neste post pretendo mostrar como superar esta “limitação” do Hibernate usando um padrão (confesso: orientado a gambi, mas funciona bem!) que facilita esta tarefa. Porém, antes de começar, vamos supor a seguinte situação: existem

Gambiarra esperta: trabalhando com mais de um banco de dados usando Hibernate (ou qualquer ferramenta ORM) Read More »

Como criar chaves primárias do tipo UUID com Grails

Devo confessar, detesto chaves primárias do tipo auto incrementais. Sempre preferi utilizar UUID: podem ocupar mais espaço em armazenamento em disco, mas são ideais quando lidamos com aplicações paralelizadas ou mesmo quando queremos ter um controle maior sobre o valor que devemos armazenar nestes campos. Ao iniciar meu contato com Grails, fiquei um pouco decepcionado

Como criar chaves primárias do tipo UUID com Grails Read More »

WebDays 2008

Dia 23 fiz duas palestras entituladas “Introdução ao Grails” no WebDays 2008. Que experiência fantástica! A todos aqueles que compareceram às minhas palestras, seguem aqui os meus agradecimentos. Espero poder, em um futuro próximo, repetir a experiência. A propósito, sintam-se a vontade para me adicionar no msn (kicolobo@itexto.net)! Nesta palestra, demonstrei os conceitos básicos do

WebDays 2008 Read More »

Filtrando com Grails

Criar filtros em Grails, assim como a maioria das tarefas, trata-se de uma tarefa incrívelmente simples se compararmos com o modo como costumamos implementá-los ao trabalharmos diretamente com Servlets. Apesar de ser possível criar inteceptadores, estes só são eficientes quando precisamos lidar com pouquíssimos controladores (um no máximo em minha opinião). Filtros, no entanto, são

Filtrando com Grails Read More »

A escolha errada equivale à destruição da biblioteca de Alexandria (e até Platão entra na história)

Neste vídeo (1991 eu acho), Steve Jobs demonstra o NextStep (que acabou virando o Mac OS X) e, após assisti-lo, fica nítido o quão atrasada é a plataforma Windows. É incrível observar por exemplo o ambiente de desenvolvimento do NextSTEP. Vemos em 1991 um ambiente de desenvolvimento que, mesmo hoje, em 2008, ainda não temos!

A escolha errada equivale à destruição da biblioteca de Alexandria (e até Platão entra na história) Read More »

Grails: é InnoDB que eu quero, não MyISAM!

Ao desenvolver uma aplicação feita em Grails (1.0.2) que utiliza o MySQL como banco de dados, percebi que não estavam sendo gerados os relacionamentos entre as tabelas. Investigando a estrutura das tabelas, percebi que o Grails na realidade estava criando minhas tabelas usando o formato MyISAM ao invés do InnoDB. Como tudo (ou quase) no

Grails: é InnoDB que eu quero, não MyISAM! Read More »

Criando consultas complexas no Hibernate de maneira dinâmica

Neste post pretendo expor um padrão bastante simples a ser aplicado na criação de consultas usando a API Criteria do Hibernate. A API Criteria consiste em uma ferramenta extremamente poderosa que o Hibernate nos oferece para solucionar um problema muito comum no desenvolvimento de aplicações que precisem fazer consultas a banco de dados: a maldita

Criando consultas complexas no Hibernate de maneira dinâmica Read More »

Criando seu próprio Codec de strings

Grails nos possibilita criar codecs dinâmicos de strings de uma maneira incrívelmente simples. Um dos principais usos para estes codecs consiste na encriptação/decriptação de strings, porém, como exporei, mais do que isto, estes codecs na realidade nos possibilitam enriquecer a classe java.lang.String. O primeiro passo a ser adotado consiste em criar a classe que representa

Criando seu próprio Codec de strings Read More »

Rolar para cima