terça-feira, 18 de agosto de 2009

Utilizando Apache Derby como Datasource do IReport

A seguir colocarei o passo a passo para a utilização do Apache Derby como datasource para a geração de relatórios utilizando IREPORT. As versões nas quais testei foram a Apache Derby 10.5.1.1 e IReport 3.5.3 :

1. Fazer o download do Apache Derby em
http://db.apache.org/derby/derby_downloads.html


2. Fazer o download do IReport em
http://sourceforge.net/projects/ireport/files/


3. Para instalar o IReport e o Apache Derby, basta descompactar os arquivos baixados nos passos anteriores em uma pasta desejada.

4. Configure as variáveis de ambiente do Derby e do JAVA. Edite, com o usuário root, o arquivo
/etc/profile
,coloque no final do arquivo as seguintes linhas e reinicie a sessão:

export JAVA_HOME=/usr/lib/jvm/java-6-sun-1.6.0.14
export JRE_HOME=/usr/lib/jvm/java-6-sun-1.6.0.14/jre
export DERBY_HOME=/home/usuario/derby-10.5.1.1
export PATH=$PATH:$JAVA_HOME:$JRE_HOME/bin:$DERBY_HOME/bin


5. Agora é só iniciar o servidor Derby com o comando:
java -jar $DERBY_HOME/lib/derbyrun.jar server start

na pasta onde encontra-se a pasta do banco Derby já existente. Se não tiver banco criado execute o passo 6, senão pule para o passo 10.

6. Execute o seguinte comando na pasta na qual você deseja que o banco seja criado:
java -jar $DERBY_HOME/lib/derbyrun.jar ij


7. Em seguida execute o seuinte comando para criar um novo banco:
CONNECT 'jdbc:derby:nomedonovobancodedados;create=true';


9 . Para criar tabelas e inserir dados é só usar os comandos de SQL normalmente. Não se esqueça de colocar o ; depois de qualquer instrução. Para sair, digite exit; Antes de passar para o passo 10, não se esqueça de iniciar o servidor Derby de acordo com o passo 5.

10. No IREPORT, abra a janela serviços (Janela -> Serviços), clique com o botão direito do mouse em cima de Banco de dados, clique em Nova Conexão e no label Nome escolha o campo "novo driver" e em Arquivos de Driver escolha o arquivo derbyclient.jar localizado na pasta lib dentro da pasta descompactada do projeto derby que você baixou e clique em OK.

11. Clique com o botão direito em cima do novo driver que você acabou de setar e digite a url de conexão do seu banco no formato
jdbc:derby://<host>[:<port>]/databaseName. Ex: jdbc:derby://localhost:1527/nomedonovobancodedados


12. Pronto agora vc já pode criar um datasource usando esta conexão.

segunda-feira, 22 de junho de 2009

Estudo de tendencias

Como este blog também fala sobre tecnologia, achamos interessante traçar o perfil dos nossos visitantes. Desta forma podemos dizer que mais de 95 % dos nossos visitantes, são brasileiros, e estão concentrados nos ISPs que atendem a região de Brasilia e São Paulo.

O navegador mais utilizado foi o Mozilla Firefox com mais de 73 % dos visitantes, isto mostra uma tendencia. Vejam que nos nossos primeiro artigos focamos a área de tecnologia.

Nos nossos primeiros artigos falamos de gerencias de projetos, entre outros eventos da nossa região.

Devemos observar que estes dados não servem para se tirar conclusão sobre o uso de navegadores uma vez que estas estatísticas foram colhidas de um publico direcionado, e os navegadores podem esta sendo utilizado de modo privativo, onde não é enviado nenhuma de identificação do mesmo.

quinta-feira, 18 de junho de 2009

Tocantins no FICA XI 2009

O livro Vivências e Sentidos – O patrimônio cultural do Tocantins será lançado às 18 horas de hoje na sede do Iphan, na cidade de Goiás, como parte da programação da 11º edição do Fica. A obra é uma publicação do Iphan e da Fundação Cultural do Tocantins e traz considerações sobre o patrimônio arqueológico do Estado, da cultura dos povos indígenas, além de imagens do Jalapão. A obra foi organizada pela historiadora Ivana Cavalcante e pela arquiteta Simone Kimura.


O grupo Fé Menina se apresenta às 20h30 de hoje no Palácio Conde dos Arcos, na cidade de Goiás, dentro da programação do 11º Fica. O grupo é formado por três mulheres e já se apresentou em vários eventos e projetos culturais no Estado. Vai ser apre4sentado um repertório popular com músicas do último trabalho do trio, Amélia. O cantor e compositor Juraíldes da Cruz fecha a noite. Ele vai interpretar composições próprias e outras em parceria com vários artistas goianos. Natural do Tocantins, o cantor participou de mais de 100 festivais de música pelo País e atuou ao lado de grandes nomes como Caetano Veloso e Zé Ramalho.

quarta-feira, 10 de junho de 2009

Avaliação de Software Livre Utilizando o Modelo OPENBRR

O advento do software livre criou uma nova opção de escolha de soluções em software para automatizar o negócio de empresas públicas e privadas. Dependendo do tipo da licença do software livre, as empresas têm a chance de obter um produto que ofereça maior liberdade em relação ao seu uso, modificação e redistribuição, adquirindo assim, um controle maior sobre a infraestrutura desse software.

Apesar de fornecer uma certa independência, o software livre introduz as resposabilidades sobre todos os seus aspectos para a empresa que o adota, pois, geralmente, esse tipo de produto é desenvolvido por pequenas equipes de voluntários os quais, quase sempre, não pertencem a organizações profissionais.

Em suma, tendecialmente, a empresa adquirinte desse tipo de software ficará responsável pelo suporte, treinamento, documentação e melhoramento do mesmo. Os riscos da adoção de softwares livres tornaram bastante crítico o processo de escolha do produto mais adequado dentre as várias opções existentes, sendo de grande valia a utilização de um método padronizado para avaliar a maturidade desses softwares.

O modelo OpenBRR (Business Readiness Rating), Modelo de Levantamento para Avaliação de Preparo para Negócios, é um modelo aberto, desenvolvido pela universidade Carnegie Mellon, que segue um padrão de avaliação o qual pretende avaliar software de maneira formalizada para facilitar a validação, agilizar a adoção de software livre e viabilizar a conceituação do software analisada moldada aos propósitos do cliente. A padronização favorece a disseminação desse modelo de avaliação por inserir uma linguagem comum que traz um conseqüênte nivelamento do entendimento dos resultados das avaliações geradas a partir dele. O fato do modelo ser aberto pode ser considerado outro fator que facilita a promoção do uso dessa ferramenta de avaliação em razão da confiança no processo de avaliação promovida pela transparência das métricas empregadas. Em virtude da abertura do modelo, mudanças e melhorias podem ser feitas no modelo e nas avaliações pelos usuários do OpenBRR [ROC2005].

A utilização desse modelo é interessante pois permite o compartilhamento de uma avaliação padronizada de software livre entre os usuários desse tipo de software, os quais podem utilizar os parâmetros avaliados para fazer a sua escolha de modo a diminuir os riscos de utilização do software livre em relação aos seus interesses. O OpenBRR torna-se atraente, também, para os desenvolvedores de Software Livre em relação a melhoria dos pontos fracos identificados através da avaliação.

Em breve publicarei o funcionamento do modelo. Até lá!

Mais Informações em www.openbrr.org

Bibliografia

[ROC2005] ROCHA Lima, Alexandre e Marcondes. Modelo de Levantamento para Avaliação de Preparo para Negócios (Business Readiness Rating). Disponível em: <http://www.openbrr.org>. Acesso em: 20 mar. 2008.


quinta-feira, 28 de maio de 2009

Trac e Subversion

Iremos demonstrar a criação de ambiente para gerenciamento de desenvolvimento de software utilizando Trac e Subversion com o Ubuntu Server 8.04 Long Time Support (LTS) Para este servidor iremos utilizar as seguintes configurações:

1. Ubuntu Server 8.04 LTS
2. Apache Http Server
3. Trac
4. Subversion
5. Integrando tudo

Para complementar serão instalados ou ativados módulos no Apache para que o mesmo integre o Trac e o Subversion em um mesmo servidor.

1. Instalação do Ubuntu Server

Não iremos nos ater muito aos detalhes da instalação do Ubuntu Server. Só alerto o cuidado com os dados que estão no disco, certifique-se que tudo que esta no disco de importante está assegurado em copias de segurança uma vez que o processo de instalação altera a estrutura do disco. certifique-se que tudo de importante no disco esteja assegurado em copias de segurança, pois o processo de instalação altera a estrutura do disco.

2. Apache Http Server

O famoso HTTP Server da Apache Foundation talvez seja o servidor de HTTP mais popular do mundo, utilizado por sistemas servidos tanto em GNU/Linux, Unix, Windows e outros.
Este servidor é famoso por sua confiabilidade e modularidade, ou seja o servidor pode receber outras funcionalidades que são acoplada por uma biblioteca de modulo, desta forma podemos utilizar este serviço para ser meio de saída tanto do servidor de versionamento como do sistema de gerenciamento.

Este servidor é amplamente conhecido por sua confiabilidade e modularidade, ou seja o servidor pode receber outras funcionalidades acopladas através de uma biblioteca de módulo. A partir estas características podemos utilizar este serviço para ser um meio de saída tanto do servidor de versionamento como do sistema de gerenciamento.

Para instalar o Apache Http Server basta executar a seguinte linha de comando:
root@myserver:~# aptitude install apache2
Com este comando teremos o Apache Http Server escutando na porta 80. Para verificar isto existe o comando fuser, este comando oferece uma ligação entre a porta e o processo. Veja como verificar se o servidor está funcionando corretamente:
root@myserver:~# fuser -n tcp 80
80/tcp: 3127 3131 3136
Neste caso temos o servidor rodando em três processos. Agora que o servidor httpd esta funcionando podemos passar para o próximo serviço, o Trac.

3. Trac

Com este comando teremos o Apache Http Server escutando na porta 80. Para verificar isto existe o comando fuser, este comando oferece uma ligação entre a porta e o processo. Veja como verificar se o servidor está funcionando corretamente:
A instalação do Trac é muito simples, basta executar o seguinte comando:
root@myserver:~# aptitude install trac postgresql-server python-psycopg2
Este comando irá instalar alguns pacotes necessários para que o servidor de Trac possa ser executado.

3.1. Preparando o servidor de banco de dados

Para prepararmos a execução do banco de dados iremos criar uma conta e um banco de dados no SGDB PostgreSQL. Veja os comandos:
  • Edite o arquivo pg_hba.conf. Neste momento vamos colocar o nosso servidor de banco de dados em um modo vulnerável, mas isto vai ser por um curto espaço de tempo. Então veja o que deve ser feito:
host    all         all         127.0.0.1/32          trust #md5
# IPv6 local connections:
host all all ::1/128 trust #md5
  • Reinicie o serviço com o comando:
root@myserver:~# invoke.rc-d postgresql-8.3 restart
  • Agora vamos criar a conta para o nosso usuário que chamaremos de trac-user e ainda vamos definir uma senha para o mesmo, guarde, pois, será necessário em outros passos deste artigo, veja os comandos:
root@myserver:~# createuser -h localhost -U postgres -SdRlP trac-user
...
  • Como definimos a senha do nosso novo usuário, vamos então voltar o banco de dados ao seu nível de segurança normal. Edite novamente x e volte os valores que foram alterados anteriormente, veja:
host    all         all         127.0.0.1/32          md5
# IPv6 local connections:
host all all ::1/128 md5
  • Com o usuário criado e senha definida vamos agora criar a base de dados:
root@myserver:~# createdb -h localhost -U trac-user trac-exemplo
...
Neste momento temos o banco de dados pronto para receber o Trac. Podemos então prosseguir com o nosso artigo.

3.2. Criando o Repositório

A criação do repositório é importante notarmos algumas variáveis, pois, a configuração de qualquer uma errada pode atrapalhar todo o processo. Tenha atenção no diretório onde esta sendo criado o repositório, pois, iremos instalar o Trac e o Subversion com um path em comum, devido a didática. Iremos ter que serão criado trac e svn. Veja abaixo:
root@myserver:~# mkdir exemplo-workspace
root@myserver:~# cd exemplo-workspace
root@myserver:~/exemplo-workspace# trac-admin trac
...
Serão feitas várias perguntas, como nome do projeto e outras mais especificas como configuração de banco e repositório, lembre-se que o path do subversion esta no mesmo que o trac, sendo assim ~/exemplo-workspace/svn.

Agora vamos editar o arquivo de configuração do Trac, edite então o arquivo trac.ini:
database = postgres://trac-user:123@localhost:5432/dbname?schema=trac-exemplo
Para garantir que a configuração do banco de dados esta correta e que as tabelas foram criadas de acordo com as necessidades do Trac, execute o comando:
root@myserver:~/exemplo-workspace# trac-admin trac upgrade
Configuramos o Trac para utilizar a nossa conta e nosso banco criado no PostgreSQL. Mais para frente voltaremos modificar este arquivo.

3.3. Usuários e Senhas

Para esta tarefa iremos utiliza um aplicativo chamado htpasswd o mesmo poderia ser feito com o aplicativos htdigest, mas não iremos nos ater a esta configuração.

Vamos criar o usuário admin, que será o administrador do trac.
root@myserver:~/exemplo-workspace# htpasswd -c passwd admin
...
Será solicitado a nova senha, guarde, pois, esta credencial será utilizada para administrar o Trac. Com isto podemos seguir para o subversion.

4. Subversion

O subversion será utilizado para promover o trabalho colaborativo e em equipes, será utilizado para controlar as modificações no código do software que esta sendo desenvolvido.

Para instalar este serviço é muito simples, execute o comando:
root@server:~# aptitude install svn
Agora que o nosso controlador de versão esta instalado, vamos criar agora o nosso repositório subversion, veja o comando logo abaixo:
root@myserver:~/exemplo-workspace# svnadmin create svn
Com este comando será criado um diretório com o nome indicado em [repositório], este diretório será usando no arquivo de configuração do Trac no próximo item do artigo quando tudo será integrado.

5. Integrando tudo

Agora vem a vem a parte mais legal deste artigo, colocar o Trac para rodar junto com o servidor de Subversion, e o melhor, colocar os dois para autenticar em uma mesma autenticadora.

5.1. Terminando a configuração do Trac


Quando configuramos o Trac no item 3.2 alteramos o arquivo trac.ini, iremos fazer mais uma modificação informando agora ao Trac em que local foi criado o repositório svn. Encontre e modifique a variável repository_dir e configure da seguinte forma:
repository_dir = /root/exemplo-workspace/svn
5.2. Configurando o Apache Http Server para o Trac

Para realizar esta integração iremos utilizar o modulo mod_python, este modulo permite colocar aplicações escritas em python para rodar utilizando o servidor Apache Http Server. Esta configuração requer uma devida atenção as permissões do diretório onde o Trac foi instalado, lembre-se de garantir privilegios ao usuário www-data, veja com fazer isto logo abaixo:
root@myserver:~/exemplo-workspace# chown root.www-data trac/ -R
root@myserver:~/exemplo-workspace# find trac -type d -print0 | xargs -0 chmod g=gwx
root@myserver:~/exemplo-workspace# find trac -type f -print0 | xargs -0 chmod g=g
Agora vamos instalar e ativar o mod_python:
root@myserver:~/exemplo-workspace# aptitude install libapache2-mod-python
...
root@myserver:~/exemplo-workspace# a2enmod python
...
Já temos o servidor com o modulo ativo, vamos configurar o apache agora para mapear o endereço http://localhost/trac-exemplo/trac como sendo o nosso ambiente Trac instalado em (/root/exemplo-workspace/trac). Veja o arquivo de configuração:
<location /trac-exemplo/trac>
SetHandler mod_python
PythonInterpreter main_interpreter
PythonHandler trac.web.modpython_frontend
PythonOption TracEnv /root/exemplo-workspace/trac
PythonOption TracUriRoot /trac-exemplo/trac
Order allow,deny
Allow from all
</location>

<LocationMatch "/trac-exemplo/trac/login">
AuthType Basic
AuthName "Trac"
AuthUserFile /root/exemplo-workspace/passwd
Require valid-user
</LocationMatch>
5.3. Configurando o Apache Http Server para o Subversion

Antes de mais nada precisamos instalar o modulo que faz o servidor apache conversar com o repositório subversion, veja:
root@myserver:~/exemplo-workspace# aptitude install libapache2-svn
A configuração da integração do Subversion é bem parecida com a do Trac, veja:

5.3. Sites sugeridos

Trac Project
Trac Hacks Plugins, modules, etc
svnbook-pt-br
Apache/Python Integration
TracModPython – The Trac Project

domingo, 24 de maio de 2009

Boas práticas, alert somente para mensagens

Uma prática comum entre os desenvolvedores "Web" (aqueles que desenvolvem sistemas que rodam sobre o protocolo HTTP e são visualizados por um Navegador como Mozilla Firefox) utilizam para depuração de JavaScript o método alert(), para falar a verdade eu também utilizava.

Utilizava até descobrir que o Firebug, plugin do navegador Mozilla Firefox, possui uma interface bem intuitiva com a maquina executora de JavaScript, isto mesmo, veja como você pode detectar se o navegador esta com o Firebug ativo, veja:
if(console)
alert("Console present");
else
alert("Console not present");
Já que sabemos como verificar se o Firebug esta disponível, vamos a um pequeno exemplo de uso deste recurso, veja o exemplo:
if(console) {
console.log("Agora estou utilizando o Firebug para depurar meus código.");
var obj = {
id: "meu id",
name: "meu name"
};
console.log(obj);
}
Desta forma evitamos ter que matar o processo do navegador quando entramos em um loop infinto onde temos um alert. Outras funcionalidades podem ser vistas na documentação do projeto em Firebug.Console.

sábado, 23 de maio de 2009

Fim do "inverno"...início do "verão"!

No dia 22 de maio de 2009 todos os palmenses puderam comprovar o fim do "inverno" tocantinense. Digo isto, pois o dia ensolarado abre o nosso saudoso "verão".
Muitos, que não fazem parte de nossa rotina climática, podem estranhar as afirmações acima onde cito o fim do inverno e o início do verão. Diriam que fiquei louco... mas em Tocantins é desta forma que vos digo: quando chove é inverno e quando não chove é verão (e muito quente, por sinal!).
Claro que desconsidero a classificação das estações e faço uso de uma expressão popular para enfatizar como é o nosso clima.
Então, a partir de agora é tempo de aproveitar as praias do Tocantins e do Araguaia.
Para todos que podem, divirtam-se!!!

Outro fato do dia 22 de maio, não menos importante, foi a criação deste blog. Como informado no post anterior, o conteúdo será variado com temas livres.
Assim, quero e espero informação, protesto e diversão!
Escuta essa!
 

Todo o conteúdo deste blog pode ser republicado, desde que seja realizada a citação.