Caelum Stella – o cinto de utilidades para o desenvolvedor brasileiro
Postado em 21. mai, 2008 por Fabio Kung em Caelum, Java
Durante o Falando em Java 2008 do último fim de semana (18/05/2008), anunciamos o lançamento do novo Caelum Stella.
O projeto vem para auxiliar os desenvolvedores brasileiros, suprindo algumas das necessidades comumente encontradas em aplicações desenvolvidas aqui no Brasil. Atualmente, o Caelum Stella fornece uma biblioteca de validadores, formatadores e conversores para documentos brasileiros, tais como CPF, CNPJ e PIS/PASEP.
String cpf = "867.554.707-24";
CPFValidator vld = new CPFValidator();
for(ValidationMessage error : vld.invalidMessagesFor(cpf)) {
System.out.println(error.getMessage());
}
Há uma alternativa que lança uma exceção caso ocorra algum problema de validação:
new CPFValidator().assertValid("867.554.707-24");
O Stella também inclui módulos extras, como o de geração de boletos bancários, adaptadores para JSF, VRaptor, JBoss Seam e Hibernate Validator. Veja um exemplo de validação para CPFs usando o Caelum Stella junto ao Hibernate Validator:
@Entity
public class Modelo {
@CPF
private String cpf;
public String getCpf() {
return cpf;
}
}
O módulo Stella Faces conta com alguns validadores compatíveis com a especificação JSF, que você pode adicionar aos seus componentes:
<h:inputText id="cpf" value="#{usuarioBean.cpf}">
<stella:validateCPF/>
</h:inputText>
O Stella Boleto procura fornecer um idioma mais fluente para a geração de boletos, através do encadeamento de métodos, gerando PDFs, PNGs e em breve TXT, RTF e HTML:
Boleto boleto = Boleto.newBoleto()
.withBanco(banco).withDatas(datas)
.withDescricoes("descricao 1", "descricao 2", "descricao 3")
.withEmissor(emissor).withSacado(sacado)
.withValorBoleto("200.00").withNoDocumento("1234")
.withInstrucoes("instrucao 1", "instrucao 2", "instrucao 3")
.withLocaisDePagamento("local 1", "local 2");
new BoletoGenerator(boleto).toPNG("teste.png");
Estão ainda previstas no roadmap do projeto funcionalidades como JSP taglibs, rotinas JavaScript para máscaras, validação e suporte a formulários, seleção de cidades dependente da seleção de estados, suporte a mais documentos, geração da nota fiscal eletrônica, webservices para busca de endereços através de CEP, entre muitas outras. A lista vem sendo constantemente atualizada e você pode conferi-la através deste link.
Todas estas funcionalidades estão divididas em diversos módulos dentro do Stella. Atualmente são quatro: Stella Core, Stella Hibernate, Stella Faces e Stella Boleto. Cada um com um propósito diferente, mas todos relacionados aos problemas do dia a dia recorrentes no mercado brasileiro.
Além de facilitar a vida dos desenvolvedores brasileiros, o projeto prima pela alta qualidade (extensa quantidade de testes unitários, cobertura e documentação) e facilidade de uso. Você pode conferir diversas características técnicas do projeto e dos vários módulos na página técnica, gerada pelo maven. Lá você encontra a lista de responsáveis (e respectivos emails), a ótima cobertura dos testes para cada um dos módulos e o código fonte navegável para cada um dos módulos.
Como de costume em qualquer projeto open-source, o código fonte está disponível em um repositório SVN (subversion) no sourceforge.net. Para baixar os fontes basta usar seu cliente preferido:
svn checkout http://caelum-stella.svn.sourceforge.net/svnroot/caelum-stella/trunk
Você também pode navegar pelo repositório neste link.
Para tirar as suas dúvidas, sugerir funcionalidades, apontar bugs e discutir sobre o projeto, não deixe de assinar as listas de discussão, que podem ser encontradas aqui. Se preferir, pode postar também no GUJ.
Visite, use, comente e participe do desenvolvimento do projeto!
14 Respostas para “Caelum Stella – o cinto de utilidades para o desenvolvedor brasileiro”
Trackbacks/Pingbacks
-
-
maio 23, 2008
[...] por Cauê Guerra (caueguerraΘgmail·com) – referência [...]
ASSINE NOSSO RSS




Tiago Albineli Motta
21. mai, 2008
Muito bom!!!
Rafael Carneiro
21. mai, 2008
Excelente iniciativa, os desenvolvedores brasileiros precisam de algo assim!
Marcos Silva Pereira
22. mai, 2008
Massa. Já foi para os favoritos.
Fabio, em qual repositorio Maven o Stella está? Não encontrei nos que uso (http://repo1.maven.org/maven2/, http://www.ibiblio.org/maven/)?
valeuz…
Fabio Kung
22. mai, 2008
Marcos, o pessoal do Maven demora um pouco para sincronizar o repositório deles.
Se quiser por enquanto, pode usar nosso repositório próprio do maven:
http://caelum-stella.sourceforge.net/maven
ou
http://caelum-stella.sourceforge.net/snapshots para o snapshot-repository.
Guilherme Chapiewski
24. mai, 2008
Pode parecer uma observação estúpida mas….. não é estranho a API ser em inglês, considerando-se que o domínio do sistema é em português?
Já passei por esse “problema” e apesar de parecer uma coisa ridiculamente simples foi bastante complicado decidir fazer em inglês ou em portugês.
Tenho certeza que vcs passaram por isso tb e com certeza discutiram um bocado. Por isso queria saber: quais foram os motivos que fizeram com que vcs decidissem por fazer desta forma “meio a meio”?
[ ]s, gc
Fabio Kung
24. mai, 2008
Guilherme, conversamos mesmo bastante sobre isso. A conclusão foi que justamente os termos do domínio seriam em pt-BR. TODO o resto em inglês.
Documentação e javadoc em português também.
Paulo Silveira
24. mai, 2008
Oi Guilherme!
Realmente essa foi uma grande briga… nao daria pra evitar o ingles totalmente, como ficaria os getters?
Mas de qualquer maneira, uma ou outra opcao iria deixar algumas pessoas descontentes…
Guilherme Chapiewski
24. mai, 2008
Eu sei que com certeza não dá pra agradar todo mundo
Na época que passei por isso também foi um problema, cada um tinha uma opinião.
Mas “just for the record”, no fim das contas decidimos da mesma forma que vocês: domínio e documentação em português e o resto em inglês.
[ ]s, gc
Rafael Ponte
27. mai, 2008
Esse componentes são muito utéis na maioria das aplicações, e já te-los prontos e desenvolvidos por vocês já é de absoluta ajuda! Principalmente os componentes para JSF!
Parabéns!
Tulio
08. jun, 2008
Estou Iniciando em programação, comecei por Java , porém , ao compilar meu primeiro programa, aquele mesmo que tem na apostila, porém na hora de compilar da a seguinte mensagem, ” javac não é reconhecido como um comando interno…”
Alguém pode me Ajudar???
No netbens 6.0 também da erro !!!
Taciano
20. ago, 2008
Aqui não é um bom local para procurar ajuda, mas enfim, só uma orientaçãozinha. Provavelmente será por vc não ter adicionado o Java ao PATH.
Te dei a direção, faça bom proveito do Google agora!
E parabéns ao pessoal da Caelum pela biblioteca!
É de realmente grande utilidade pra todo mundo que trabalha com Java em área comercial!
Continuem melhorando ela!
Thiago
13. jul, 2011
Alguns links não estão abrindo a página como:
http://stella.caelum.com.br/roadmap.html
http://stella.caelum.com.br/nfe-index.html
Tenho muito interesse no nfe e já tinha visto o site em funcionamento a muito tempo a traz
Marcelo
06. jan, 2012
Gostaria de saber como personalizar as mensagem de erro ao validar um CPF, utilizando JSF2