Quando instalar o Apache Tomcat no Linux com apt-get | yum | algum gerenciador de pacotes e precisar integrar com algum plugin em IDEs como NetBeans ou Eclipse, nao funciona direito. Isso e causado pela arvore de diretorios que a instalacao usa, que e a bonitinha e padrao organizada do Linux.Entao para fazer funcionar melhor, e utilizar segue os passos de como instalar:- Pegar o Apache Tomcat no site :wget http://linorg.usp.br/apache/tomcat/tomcat-6/v6.0.18/bin/apache-tomcat-6.0.18.zipsudo unzip apache-tomcat-6.0.18.zip -d /usr/apachecd /usr/apache/apache-tomcat-6.0.18/binsudo chmod +X *.sh // se quiser- Iniciando o servico(dentro do diretorio /bin do apache):sudo ./startup.sh- Parando o servico(dentro do diretorio /bin do apache):sudo ./shutdown.shobs.: Utilize a versao desejada do Tomcat, pode fazer a descompactacao em qualquer diretorio. Picon e uma ferramenta para reflexao de dados em objetos Java. Em uma linguagem simples e descrito os dados de objetos e essa descricao e interpretada pelo core do Picon, transformando em objetos Java, assim, os objetos podem ser obtidos e utilizados.A primeira necessidade da criacao do Picon foi recorrente do desenvolvimento de Testes de Unidade feitos com JUnit. Nos testes a necessidade de criar muitos objetos que armazenam principalmente dados, os tipicos Entity Beans. A criacao de muitos objetos tornava o codigo de teste extenso demais para ser compreendido.Tudo errado, a primeira necessidade de Picon foi descrita por Melga em Agosto de 2008, quando estavamos trocando uma ideia no cafe do CTC-UFSC, por ai:Exibir mapa ampliado Apenas em 2010 resolvi implementar parte daquilo que conversamos, e nao sei se fiz direito, o importante e que funciona.A solucao disponivel por Picon e uma linguagem simples, onde descreve-se os dados e um core, ou uma conjunto de classes que interpreta uma linguagem e transforma em objetos Java. A BNF da linguagem e descrita a baixo:S:=classes ::= |classe : := objetos : := |objeto : := atributos ::= | atributo : := | | UID ::= referencia ::= '#'comecoClasse ::= '{'fimClasse ::= '}'comecoObjeto ::= '['fimObjeto ::= ']'quebra ::= ';'|' '|' '| '\n' | '=' | ''toke ::= 'aA..zZ$*&'|'0..9'|'.'|'aA..zZ$*&'|'0..9'Nao se preocupe em entender a linguagem acima e o Core que interpreta, deixe para ele esse problema, o interessante e conhecer um exemplo de como faz e como se beneficiar do core, que e com o core que se obtem os objetos refletidos. Entao chega de 'blablabla' e apenas um simples exemplo:package teste.com.blogger.douglashiura.picon;...public class Bean{ String nome; Date nascimento; ...}Um arquivo 'dados.picon', no pacote 'teste.com.blogger.douglashiura.picon' com o conteudo:teste.com.blogger.douglashiura.picon.Bean{ douglas:18:jan:1987[nome='Douglas Hiura' ; nascimento='1987/01/18'] atual:menos:um:dia[nome='Atual'; nascimento='+0/+0/-1']}package teste.com.blogger.douglashiura.picon;...public class AcessandoOsObejtosDoPicon{ // Neste exemplo nao vai ser utilizado Junit, apenas um metodo principal mostrando como faz para obter os objetos do Picon public static main(String ... args)throws Exception{ PiconStore store = PiconStore.build(AcessandoOsObejtosDoPicon.class,"dados.picon"); Bean douglas=store.get("douglas:18:jan:1987");// passando o UID pode pegar os objetos System.out.println(douglas.nome); }}Como obter o Picon? o codigo fonte do Picon fica em dois SVN: - https://svn.inf.ufsc.br/douglashiura - particular do Douglas.- http://code.google.com/p/picon-reflect/ pode participarOs dois repositorios nao sao sincronizados, pois a versao particular de Douglas contem melhores artificios nao compartilhaveis, ou um passo a frente da manipulacao atomica.Neste texto certamente nao esta tudo sobre Picon, mas no decorrer do tempo vou postar mais sobre o mesmo. O