<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-19241548</id><updated>2011-11-27T22:37:14.341-02:00</updated><category term='linux'/><category term='stored procedures'/><category term='jsf'/><category term='opensuse'/><category term='java'/><category term='gentoo'/><category term='ajax'/><category term='visual webpack'/><category term='frugalware'/><category term='exadel'/><category term='_claudio_'/><category term='netbeans'/><category term='jee5'/><category term='_bulinha_'/><category term='slackware'/><category term='javaserver faces'/><category term='amd64'/><category term='opensource'/><category term='jpa'/><category term='beryl'/><category term='freebsd'/><category term='eclipse'/><category term='compiz'/><category term='ubuntu'/><category term='banco de dados'/><category term='review'/><category term='nvidia'/><title type='text'>Café Batizado</title><subtitle type='html'>Este blog é feito por um programador java, para programadores java. Mas principalmente, para aqueles que alem de programar tambem gostam de tomar um café batizado, uma cervejinha, etc... ;-)
Atualizando: tem um outro "cabra" escrevendo tambem no blog, então agora alem de java vamos ter linux e open source ;-)</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://cafebatizado.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19241548/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://cafebatizado.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Bulinha</name><uri>http://www.blogger.com/profile/02428632736934670936</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>27</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-19241548.post-6007863268156368592</id><published>2008-08-09T11:58:00.001-03:00</published><updated>2008-08-09T11:58:29.973-03:00</updated><title type='text'>Aplicações swing com o teclado "travado" no linux (Ubuntu)</title><content type='html'>&lt;div xmlns='http://www.w3.org/1999/xhtml'&gt;Já a algum tempo venho tendo um problema "irritante" em aplicações swing no linux (principalmente o Netbeans). Depois de algum uso simplesmente o teclado "travava", nenhuma combinação de teclas passava a ser "ouvida" pela aplicação, apenas eventos de mouse. A única solução seria fechar e abrir novamente a aplicação.&lt;br/&gt;Como muitos usuários de linux (no meu caso Ubuntu) estou utilizando o Compiz para efeitos 3D no Desktop (literalmente "eye candy", mas tem muita coisa que já não consigo mais viver sem heheh). Inicialmente todas as aplicações swing ficavam com a tela em "branco", para resolver isso utilizava-se uma variável de ambiente que mudava o tookit utilizado pelo awt:&lt;br/&gt;&lt;br/&gt;&lt;span class='postbody'&gt;AWT_TOOLKIT=MToolkit &lt;/span&gt;&lt;br/&gt;&lt;br/&gt;Isto resolveu um problema, a aplicação agora era renderizada normalmente. Mas depois apareceu este bug do teclado travado.&lt;br/&gt;&lt;br/&gt;Pesquisei durante meses sem sucesso, mas ontem achei a solução, no &lt;a href='http://forums.netbeans.org/topic620.html' target='_blank'&gt;forum do netbeans&lt;/a&gt;. Abaixo reproduzo (traduzido) a solução que foi proposta, e que funcionou no meu caso.&lt;br/&gt;&lt;br/&gt;0) Caso tenha colocado utilizado a variável de ambiente AWT_TOOLKIT, remova-a, ela já não é mais necessária, pelos testes que eu fiz as aplicações java já são renderizdas de maneira correta no compiz (só testei com o java 6)&lt;br/&gt;&lt;br/&gt;1) Vá no site &lt;a href='http://download.java.net/jdk6/binaries/'&gt;http://download.java.net/jdk6/binaries/&lt;/a&gt; e baixe o arquivo "Linux self-extrating JDK file" (instalação genérica do jdk pra linux). No post foi citado o release b27, quando fui baixar já tinha a versão b28: &lt;a href='http://www.java.net/download/jdk6/6u10/promoted/b28/binaries/jdk-6u10-rc-bin-b28-linux-i586-21_jul_2008.bin'&gt;jdk-6u10-rc-bin-b28-linux-i586-21_jul_2008.bin&lt;/a&gt;, são 76mb (este ainda é o release candidate do java6 update 10, ainda não é a versão final, mas já é utilizável)&lt;br/&gt;&lt;br/&gt;2) Renomei o arquivo baixado para jdk-6-linux-i586.bin (necessário para criar o package do Ubuntu, para outras distribuições não é necessário basta executar o instalador)&lt;br/&gt;&lt;br/&gt;3) Instalar o java-package (aplicativo que permite converter o .bin para .deb):&lt;br/&gt;sudo apt-get install java-package&lt;br/&gt;&lt;br/&gt;4) Criar o pacote .deb para instalação:&lt;br/&gt;make-jpkg jdk-6-linux-i586.bin&lt;br/&gt;&lt;br/&gt;5) Basta instalar agora o .deb que foi criado:&lt;br/&gt;sudo dpkg -i sun-j2sdk1.6_1.6.0_i386.deb&lt;br/&gt;&lt;br/&gt;6) Depois de instalado basta configurar o java default para o linux&lt;br/&gt;sudo update-alternatives --config java (ele provavelmente deve ser o /usr/lib/j2sdk1.6-sun/bin/java)&lt;br/&gt;&lt;br/&gt;7) Fazemos o mesmo para o javac&lt;br/&gt;sudo update-alternatives --config javac&lt;br/&gt;&lt;br/&gt;Se você ja tinha o netbeans instalado é preciso alterar o seu arquivo de configuração. &lt;br/&gt;&lt;br/&gt;&amp;lt;pasta_netbeans&amp;gt;/etc/netbeans.conf&lt;br/&gt;&lt;br/&gt;Nele há uma propriedade chamada netbeans_jdkhome, basta mudar para a pasta onde foi instalado o novo jdk: /usr/lib/j2sdk1.6-sun&lt;br/&gt;&lt;br/&gt;Espero que ajude.&lt;br/&gt;&lt;br/&gt;&lt;br/&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19241548-6007863268156368592?l=cafebatizado.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cafebatizado.blogspot.com/feeds/6007863268156368592/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19241548&amp;postID=6007863268156368592&amp;isPopup=true' title='1 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19241548/posts/default/6007863268156368592'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19241548/posts/default/6007863268156368592'/><link rel='alternate' type='text/html' href='http://cafebatizado.blogspot.com/2008/08/aplicaes-swing-com-o-teclado-no-linux.html' title='Aplicações swing com o teclado &amp;quot;travado&amp;quot; no linux (Ubuntu)'/><author><name>Bulinha</name><uri>http://www.blogger.com/profile/02428632736934670936</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19241548.post-3906382265314382147</id><published>2008-06-25T11:32:00.001-03:00</published><updated>2008-06-26T10:00:36.196-03:00</updated><title type='text'>Eclipse Novo na parada!!!!</title><content type='html'>&lt;div xmlns='http://www.w3.org/1999/xhtml'&gt;Saiu a nova versão do &lt;a href='http://www.eclipse.org'&gt;Eclipse&lt;/a&gt;, codnome Ganymede (mais uma das luas de Júpiter).&lt;br/&gt;&lt;br/&gt;Segue o link para os downloads:&lt;br/&gt;&lt;br/&gt;&lt;a target='_blank' href='http://www.eclipse.org/downloads/packages/'&gt;http://www.eclipse.org/downloads/packages/&lt;/a&gt;&lt;br/&gt;&lt;br/&gt;&lt;br/&gt;Divirtam-se.&lt;br/&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19241548-3906382265314382147?l=cafebatizado.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cafebatizado.blogspot.com/feeds/3906382265314382147/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19241548&amp;postID=3906382265314382147&amp;isPopup=true' title='1 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19241548/posts/default/3906382265314382147'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19241548/posts/default/3906382265314382147'/><link rel='alternate' type='text/html' href='http://cafebatizado.blogspot.com/2008/06/eclipse-novo-na-parada.html' title='Eclipse Novo na parada!!!!'/><author><name>Bulinha</name><uri>http://www.blogger.com/profile/02428632736934670936</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19241548.post-7436798628595300797</id><published>2008-06-24T15:57:00.001-03:00</published><updated>2008-06-24T16:00:44.133-03:00</updated><title type='text'>Ajude a sustentar a Wikipédia e outros projetos, sem colocar a mão no bolso, e concorra a um Eee PC!</title><content type='html'>&lt;div xmlns='http://www.w3.org/1999/xhtml'&gt;Galera, pra quem não conhece os blog &lt;a href='http://br-linux.org'&gt;BR-Linux&lt;/a&gt; e &lt;a href='http://efetividade.net/'&gt;Efetividade&lt;/a&gt; eu recomendo muito, já sou leitor assíduo dos dois já faz um bom tempo (alguns anos). Alem de falar de Linux, software livre, etc... costumam rolar algumas promoções super bacanas e agora temos mais uma, segue o texto:&lt;br/&gt;&lt;br/&gt;&lt;div style='margin-left: 4em;'&gt;&lt;br/&gt;&lt;b&gt;Ajude a sustentar a Wikipédia e outros projetos, sem colocar a mão no bolso, e concorra a um Eee PC!&lt;/b&gt;&lt;br/&gt;&lt;p&gt;…e também a pen drives, card drives, camisetas geeks, livros e mais! O &lt;a href='http://br-linux.org/'&gt;BR-Linux&lt;/a&gt; e o &lt;a href='http://efetividade.net/'&gt;Efetividade&lt;/a&gt; lançaram uma &lt;a href='http://br-linux.org/2008/campanha-wikipedia/'&gt;campanha&lt;/a&gt;&lt;br/&gt;para ajudar a Wikimedia Foundation e outros mantenedores de projetos&lt;br/&gt;que usamos no dia-a-dia on-line. Se você puder doar diretamente, ou&lt;br/&gt;contribuir de outra forma, são sempre melhores opções. Mas se não&lt;br/&gt;puder, veja as regras da promoção e &lt;a href='http://br-linux.org/2008/campanha-wikipedia/'&gt;participe&lt;/a&gt; - quanto mais divulgação, maior será a doação do BR-Linux e do Efetividade, e você ainda concorre a diversos brindes!&lt;br/&gt;&lt;/p&gt;&lt;/div&gt;E pra provar pra vocês que os 2 blogs são muito bons, vou postar alguns links para posts que eu tenho marcados no meu favoritos :P:&lt;br/&gt;&lt;br/&gt;&lt;a href='http://br-linux.org/2008/criando-um-pendrive-ubuntu-804/'&gt;http://br-linux.org/2008/criando-um-pendrive-ubuntu-804/&lt;/a&gt;&lt;br/&gt;&lt;a href='http://br-linux.org/2008/alternativa-livre-ao-ms-project-ultrapassa-meio-milhao-de-downloads/'&gt;http://br-linux.org/2008/alternativa-livre-ao-ms-project-ultrapassa-meio-milhao-de-downloads/&lt;/a&gt;&lt;br/&gt;&lt;a href='http://br-linux.org/2008/lancado-o-ubuntu-eee-804/'&gt;http://br-linux.org/2008/lancado-o-ubuntu-eee-804/&lt;/a&gt;&lt;br/&gt;&lt;a href='http://br-linux.org/2008/suporte-a-webcams-integradas-dos-notebooks-hp-no-ubuntu/'&gt;http://br-linux.org/2008/suporte-a-webcams-integradas-dos-notebooks-hp-no-ubuntu/&lt;/a&gt;&lt;br/&gt;&lt;a href='http://www.efetividade.net/2008/04/07/goosync-sincronizando-seu-smartphone-ou-pda-com-o-google-calendar/'&gt;http://www.efetividade.net/2008/04/07/goosync-sincronizando-seu-smartphone-ou-pda-com-o-google-calendar/&lt;/a&gt;&lt;br/&gt;&lt;a href='http://br-linux.org/2008/conhecendo-melhor-o-virtualbox/'&gt;http://br-linux.org/2008/conhecendo-melhor-o-virtualbox/&lt;/a&gt;&lt;br/&gt;&lt;a href='http://br-linux.org/2008/aparencia-de-mac-os-x-no-seu-gnome-videos-e-como-fazer/'&gt;http://br-linux.org/2008/aparencia-de-mac-os-x-no-seu-gnome-videos-e-como-fazer/&lt;/a&gt;&lt;br/&gt;&lt;br/&gt;Ou seja, se você usa linux, seja leigo ou escovador de bits de longa data, recomendo muito este blog :P &lt;br/&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19241548-7436798628595300797?l=cafebatizado.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cafebatizado.blogspot.com/feeds/7436798628595300797/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19241548&amp;postID=7436798628595300797&amp;isPopup=true' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19241548/posts/default/7436798628595300797'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19241548/posts/default/7436798628595300797'/><link rel='alternate' type='text/html' href='http://cafebatizado.blogspot.com/2008/06/ajude-sustentar-wikipdia-e-outros.html' title='Ajude a sustentar a Wikipédia e outros projetos, sem colocar a mão no bolso, e concorra a um Eee PC!'/><author><name>Bulinha</name><uri>http://www.blogger.com/profile/02428632736934670936</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19241548.post-118296283040727065</id><published>2008-06-05T20:27:00.001-03:00</published><updated>2008-06-05T20:27:59.953-03:00</updated><title type='text'>IBM Lotus Symphony: o que ele tem com java??? E com o Ubuntu???</title><content type='html'>&lt;div xmlns='http://www.w3.org/1999/xhtml'&gt;Foi lançado esta semana o IBM Lotus Symphony 1, um pacote office (editor de texto, planilha e apresentações) que como o nome diz foi feito pela IBM, e é "di gratis".&lt;br/&gt;Mas porque eu estou falando sobre um pacote office num blog que é direcionado a java e a linux e opensource em geral.&lt;br/&gt;Dois motivos:&lt;br/&gt;&lt;ul&gt;&lt;li&gt;ele é baseado no OpenOffice, por tanto é baseado em opensource (ate ai, nenhuma novidade)&lt;br/&gt;&lt;/li&gt;&lt;li&gt;ele foi desenvolvido utilizando o RCP do Eclipse!!! :O&lt;/li&gt;&lt;/ul&gt;Pra quem não sabe, tanto com o Eclipse quanto com o Netbeans é possível desenvolver aplicações baseadas nestas IDEs. Na verdade não na IDE, mas no RCP (que é a base da IDE).&lt;br/&gt;Pra galera que já usa o OpenOffice (ou o nosso querido BrOffice) talvez não haja muita diferença (a principal e na interface, mas a funcionalidade praticamente é a mesma), mas para algumas empresas pode fazer toda a diferença do mundo, pois este "OpenOffice" tem o nome da IBM por traz, e pra algumas empresas isto é mais importante do que o software funcionar. :P&lt;br/&gt;&lt;br/&gt;Ele esta disponível para Windows e Linux e pode ser baixado neste endereço: &lt;a href='http://symphony.lotus.com/software/lotus/symphony/home.jspa' target='_blank'&gt;http://symphony.lotus.com/software/lotus/symphony/home.jspa&lt;/a&gt;&lt;br/&gt;&lt;br/&gt;As distribuições suportadas são SUSE Linux Enterprise Desktop 10 e Red Hat Enterprise Linux 5. Mas claro nada impede de que você tente instalar ele no Ubuntu, mas depois de instalado ele não executará :(. &lt;br/&gt;Mas como tudo no mundo Linux tem solução, este problema tambem tem, e claro que eu já cacei isto na rede e vou disponiblizar para geral. Eu encontrei a solução &lt;a href='http://tombuntu.com/index.php/2008/06/02/ibm-lotus-symphony-1-on-ubuntu/' target='_blank'&gt;aqui&lt;/a&gt;, a baixo segue a mesma:&lt;br/&gt;&lt;br/&gt;Após baixar o arquivo IBM_Lotus_Symphony_linux.bin, seguir os seguintes passos (pelo console, troque username pelo nome de seu usário):&lt;br/&gt;&lt;ol&gt;&lt;li&gt;&lt;code&gt;chmod +x IBM_Lotus_Symphony_linux.bin&lt;/code&gt;&lt;/li&gt;&lt;li&gt;&lt;code&gt;sudo ./IBM_Lotus_Symphony_linux.bin&lt;/code&gt;&lt;/li&gt;&lt;li&gt;&lt;code&gt;sudo chown -R username ~/.lotus/&lt;/code&gt;&lt;/li&gt;&lt;/ol&gt;Feito isto você já estara apto a utilizar o IBM Lotus Symphony, bastando pra isto ir no menu Escritório.&lt;br/&gt;&lt;br/&gt;Coisas interessantes:&lt;br/&gt;&lt;ul&gt;&lt;li&gt;A tela de preferences é a mesma do Eclipse (windows&amp;amp;gt;preferences)&lt;/li&gt;&lt;li&gt;se você for dar uma olhada nos diretorios da aplicação você vai encontrar uma JVM da IBM (J9 alguma coisa, versão 1.5), vai encontrar uma pasta eclipse e, claro que não podia faltar, as pastas plugins e features&lt;/li&gt;&lt;li&gt;A instalação de plugins é feita da mesma maneira que no Eclipse, podendo por dentro do aplicativo você incluir "remote sites" de onde os plugins poderão ser baixados.&lt;/li&gt;&lt;/ul&gt;&lt;br/&gt;Vou começar a usá-lo para preparar umas apresentações e mais tarde posto aqui uma analise sobre ele com mais calma, mas por hora já da pra todos instalarem e usarem no seu Ubuntu.&lt;br/&gt;&lt;br/&gt;&lt;br/&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19241548-118296283040727065?l=cafebatizado.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cafebatizado.blogspot.com/feeds/118296283040727065/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19241548&amp;postID=118296283040727065&amp;isPopup=true' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19241548/posts/default/118296283040727065'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19241548/posts/default/118296283040727065'/><link rel='alternate' type='text/html' href='http://cafebatizado.blogspot.com/2008/06/ibm-lotus-symphony-o-que-ele-tem-com.html' title='IBM Lotus Symphony: o que ele tem com java??? E com o Ubuntu???'/><author><name>Bulinha</name><uri>http://www.blogger.com/profile/02428632736934670936</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19241548.post-5410406942596628766</id><published>2007-07-16T17:43:00.000-03:00</published><updated>2007-07-16T17:53:24.403-03:00</updated><title type='text'>Computador meuComputador = (Computador) Caça-níquel</title><content type='html'>Vi esta notícia no portal de Notícias &lt;a href="http://g1.globo.com/Noticias/Rio/0,,MUL71041-5606,00.html"&gt;G1&lt;/a&gt; e achei uma ótima iniciativa.&lt;br /&gt;Os contraventores pegam tecnologia e transforma em uma maneira ilícita de ganhar dinheiro. As autoridades apreendem e geralmente destroem estes equipamentos (o mesmo valendo para drogas, cds pirtas, armas, etc...). Mas no caso de computadores a idéia de reaproveitá-los realmente é muito boa, sem contar que quem ira fazer o "cast" dos caça-níqueis em computadores são alunos do CETEP (Centro de Educação Tecnológica e Profissionalizante), ou seja, a comunidade ganha duas vezes: computadores e conhecimento.&lt;br /&gt;&lt;br /&gt;Vale lembrar que estes computadores viram com Linux instalado (pare boa) e que terão o formato das máquinas caça-níqueis (parte "estranha" hehehe).&lt;br /&gt;&lt;br /&gt;Na reportagem informa que foram gastos R$ 60,00 para a conversão (provavelmente comprando mouse, teclado e algum outro periférico baratinho).&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19241548-5410406942596628766?l=cafebatizado.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cafebatizado.blogspot.com/feeds/5410406942596628766/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19241548&amp;postID=5410406942596628766&amp;isPopup=true' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19241548/posts/default/5410406942596628766'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19241548/posts/default/5410406942596628766'/><link rel='alternate' type='text/html' href='http://cafebatizado.blogspot.com/2007/07/computador-meucomputador-computador-caa.html' title='Computador meuComputador = (Computador) Caça-níquel'/><author><name>Bulinha</name><uri>http://www.blogger.com/profile/02428632736934670936</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19241548.post-2937460020467906183</id><published>2007-07-02T11:23:00.000-03:00</published><updated>2007-07-02T11:35:41.100-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='compiz'/><category scheme='http://www.blogger.com/atom/ns#' term='linux'/><category scheme='http://www.blogger.com/atom/ns#' term='_claudio_'/><category scheme='http://www.blogger.com/atom/ns#' term='beryl'/><category scheme='http://www.blogger.com/atom/ns#' term='ubuntu'/><title type='text'>Compiz Fusion</title><content type='html'>Para quem ainda não sabe, as iniciativas &lt;a href="http://www.compiz.org"&gt;Compiz&lt;/a&gt; e &lt;a href="http://www.beryl-project.org/"&gt;Beryl&lt;/a&gt; (um fork do Compiz) se juntaram no Compiz Fusion, oferecendo &lt;a href="http://www.youtube.com/watch?v=E4Fbk52Mk1w&amp;v3"&gt;fantásticos efeitos 3D para o desktop&lt;/a&gt;. &lt;br /&gt;&lt;br /&gt;A nova iniciativa ainda tem alguns bugs, mas já é &lt;a href="http://www.compiz.org/Compiz_and_Copmiz_Fusion_GIT_Ubuntu_Repository"&gt;utilizável&lt;/a&gt;. &lt;br /&gt;&lt;br /&gt;No Ubuntu 7.10, segundo o &lt;a href="https://lists.ubuntu.com/archives/ubuntu-devel-announce/2007-June/000311.html"&gt;anunciado&lt;/a&gt;, o Compiz Fusion virá instalado por default.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19241548-2937460020467906183?l=cafebatizado.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cafebatizado.blogspot.com/feeds/2937460020467906183/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19241548&amp;postID=2937460020467906183&amp;isPopup=true' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19241548/posts/default/2937460020467906183'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19241548/posts/default/2937460020467906183'/><link rel='alternate' type='text/html' href='http://cafebatizado.blogspot.com/2007/07/compiz-fusion.html' title='Compiz Fusion'/><author><name>Claudio Henrique Franco Gomes</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-mTCaH1eS0Q4/AAAAAAAAAAI/AAAAAAAAflY/havZUoCJfrg/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19241548.post-3737589768360038330</id><published>2007-07-02T11:18:00.000-03:00</published><updated>2007-07-02T11:36:13.994-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='freebsd'/><category scheme='http://www.blogger.com/atom/ns#' term='_claudio_'/><title type='text'>FreeBSD 6.2 Review</title><content type='html'>Conforme falei em um &lt;a href="http://cafebatizado.blogspot.com/2007/03/ubuntu-704-beta-review.html"&gt;post anterior&lt;/a&gt;, eu faria o review do FreeBSD 6.2. Infelizmente o disco de boot do FreeBSD não reconheceu minha placa-mãe (Asus M2N Sli Deluxe), não sendo possível nem mesmo ver a interface de instalação do sistema. &lt;br /&gt;&lt;br /&gt;Lamentável... E minha placa nem é das mais novas. Depois ainda querem se comparar ao Linux...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19241548-3737589768360038330?l=cafebatizado.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cafebatizado.blogspot.com/feeds/3737589768360038330/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19241548&amp;postID=3737589768360038330&amp;isPopup=true' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19241548/posts/default/3737589768360038330'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19241548/posts/default/3737589768360038330'/><link rel='alternate' type='text/html' href='http://cafebatizado.blogspot.com/2007/07/freebsd-62-review.html' title='FreeBSD 6.2 Review'/><author><name>Claudio Henrique Franco Gomes</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-mTCaH1eS0Q4/AAAAAAAAAAI/AAAAAAAAflY/havZUoCJfrg/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19241548.post-1419882775747713650</id><published>2007-04-24T16:27:00.000-03:00</published><updated>2007-07-02T11:18:09.749-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='javaserver faces'/><category scheme='http://www.blogger.com/atom/ns#' term='eclipse'/><category scheme='http://www.blogger.com/atom/ns#' term='netbeans'/><category scheme='http://www.blogger.com/atom/ns#' term='_bulinha_'/><category scheme='http://www.blogger.com/atom/ns#' term='visual webpack'/><category scheme='http://www.blogger.com/atom/ns#' term='jsf'/><title type='text'>Palestras sobre JSF</title><content type='html'>Nas duas ultimas semanas tive a oportunidade de apresentar duas palestras sobre Javaserver Faces.&lt;br /&gt;A primeira foi realizada e parceria com um amigo (é nois Bruno) que falou sobre Netbeans e eu falei sobre JSF. Durante a palestra fiz um pequeno demo utilizando o Exadel, um plugin para o Eclipse que recentemente passou para o controle do Jboss/Red Hat e vai se chamar RedHat Developer Studio.&lt;br /&gt;&lt;a href="http://cafebatizado.googlepages.com/palestra_jsf2007.pdf.zip"&gt;Aqui&lt;/a&gt; vocês vão poder baixar o PDF da apresentação, esquero que gostem ;-)&lt;br /&gt;&lt;br /&gt;E na semana passada o Jug-Petropolis, do qual sou um dos coordenadores, em parceria com o Laboratório Nacional de Computação Cientifica, Projeto Tecnopolis, Funpat e CDG realizou em Petropolis o Sun Tech Days, transmitindo as palestras do Sun Tech Days que ocorria em São Paulo e tambem com alguns palestrantes locais, e pra variar eu não podia ficar de fora :P. Neste dia falei tambem sobre JSF mas com foco no ambiente de desenvolvimento Netbeans Visual Web Pack.&lt;br /&gt;&lt;a href="http://cafebatizado.googlepages.com/palestra_jsfwebpack2007.pdf.zip"&gt;Aqui&lt;/a&gt; você pode baixar o PDF da apresentação.&lt;br /&gt;&lt;br /&gt;Estou preparando alguns tutoriais pra postar no http://cafebatizado.googlepages.com assim que eles estiverem prontos vou postando aqui.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19241548-1419882775747713650?l=cafebatizado.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cafebatizado.blogspot.com/feeds/1419882775747713650/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19241548&amp;postID=1419882775747713650&amp;isPopup=true' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19241548/posts/default/1419882775747713650'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19241548/posts/default/1419882775747713650'/><link rel='alternate' type='text/html' href='http://cafebatizado.blogspot.com/2007/04/palestras-sobre-jsf.html' title='Palestras sobre JSF'/><author><name>Bulinha</name><uri>http://www.blogger.com/profile/02428632736934670936</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19241548.post-7936319280512824002</id><published>2007-04-09T15:24:00.000-03:00</published><updated>2008-11-13T13:00:40.855-02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='javaserver faces'/><category scheme='http://www.blogger.com/atom/ns#' term='java'/><category scheme='http://www.blogger.com/atom/ns#' term='exadel'/><category scheme='http://www.blogger.com/atom/ns#' term='eclipse'/><category scheme='http://www.blogger.com/atom/ns#' term='ajax'/><category scheme='http://www.blogger.com/atom/ns#' term='netbeans'/><category scheme='http://www.blogger.com/atom/ns#' term='_bulinha_'/><title type='text'>Palestra sobre Netbeans e Javaserver Faces</title><content type='html'>No dia 11 de abril a partir das 19 horas no Laboratório Nacional de Computação Científica, LNCC, serão realizadas duas palestras envolvendo a tecnologia java promovidas pelo Jug-Petrópolis:&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Netbeans&lt;/span&gt;&lt;br /&gt;* O que é o Netbeans&lt;br /&gt; o Explicar sobre tecnologias suportadas na IDE&lt;br /&gt; o Gratuito e código aberto&lt;br /&gt;&lt;br /&gt;* Matisse GUI Builder&lt;br /&gt; o O que você precisa saber para usar swing&lt;br /&gt; o As dificuldades de layout usando swing&lt;br /&gt; o O que o Matisse faz para você&lt;br /&gt; o Demo&lt;br /&gt;&lt;br /&gt;* Developer Collaboration&lt;br /&gt; o Desenvolvimento de aplicações em ambiente colaborativo&lt;br /&gt; o Chat&lt;br /&gt; o Edição de arquivos de ambas as partes&lt;br /&gt; o Demo&lt;br /&gt;&lt;br /&gt;* Iniciativa Acadêmica SUN (SAI)&lt;br /&gt; o Treinamento gratuito via web&lt;br /&gt; o Como se inscrever&lt;br /&gt; o Certificações SUN&lt;br /&gt; o Exames práticos gratuitos, e taxas de inscrição para a  certificação com descontos&lt;br /&gt;&lt;br /&gt;Será ministrada por Bruno Bastor atualmente cursando o curso de Sistemas de Informação da UNESA, Certificação SCJP 1.5. A 2 anos atuando na área de desenvolvimento java SE, EE e ME, com foco maior em java SE. Trabalhando no projeto MoGrid (LNCC) e como Campus Ambassadro da empresa Sun Microsystems.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Javaserver Faces&lt;/span&gt;&lt;br /&gt;* Modelos de desenvolvimento web Java&lt;br /&gt; o Arquitetura Model 1&lt;br /&gt; o Arqutetura Model 2&lt;br /&gt; o JSR 127 - Javaserver Faces&lt;br /&gt;&lt;br /&gt;* Expecificação X Produto&lt;br /&gt;&lt;br /&gt;* Implementações da JSF&lt;br /&gt; o RI - Reference Implementation&lt;br /&gt; o Myfaces&lt;br /&gt; o Smile&lt;br /&gt; o Keel&lt;br /&gt;&lt;br /&gt;* Principais características da JSF&lt;br /&gt; o Compoentes&lt;br /&gt; o Java Beans&lt;br /&gt; o Conversão e Validação&lt;br /&gt; o Pontos de extensão&lt;br /&gt;&lt;br /&gt;* Guia para criação de uma aplicação JSF&lt;br /&gt; o Exemplo de uma pequena aplicação JSF&lt;br /&gt;&lt;br /&gt;* Componentes desenvolvidos por terceiros&lt;br /&gt; o Myfaces&lt;br /&gt; o RichFaces&lt;br /&gt; o IceFaces&lt;br /&gt;&lt;br /&gt;* Ajax e JSF&lt;br /&gt; o IceFaces&lt;br /&gt; o DynamicFaces&lt;br /&gt; o Ajax4Faces&lt;br /&gt;&lt;br /&gt;* Templates&lt;br /&gt; o Tiles&lt;br /&gt; o Facelets&lt;br /&gt;&lt;br /&gt;* IDEs&lt;br /&gt; o Netbeans&lt;br /&gt;     - Web Pack – Studio Creator&lt;br /&gt; o Eclipse&lt;br /&gt;     - Webtools + jsftoos (a ser liberado em julho)&lt;br /&gt;     - Red Hat Developer Studio&lt;br /&gt; o Rational Application Developer – WSAD&lt;br /&gt; o JDeveloper&lt;br /&gt;&lt;br /&gt;Será ministrada por Luis Henrique Muniz de Carvalho, membro do Jug-Petropolis, formado em Ciencias da Computação na UCP, Certificação SCJP e SCWCD. Há 16 anos atuando na área de desenvolvimento, sendo os ultimos 7 anos com Java/JEE. Desenvolveu sistemas para Merck, Compania Vale do Rio Doce, Petrobras, GovBR e atualmente alocado na TVGlobo.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;O Laboratório Nacional de Computação Científca se encontra na Av. Getulio Vargas, 333, Quitandinha, Petrópolis - Rio de Janeiro, proximo ao Hotel Quitandinha, na entrada de Petrópolis.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_dpjZ1o3f9m4/RhqGAWu72gI/AAAAAAAAADM/QJvetKb1bE4/s1600-h/caminho.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://1.bp.blogspot.com/_dpjZ1o3f9m4/RhqGAWu72gI/AAAAAAAAADM/QJvetKb1bE4/s320/caminho.JPG" alt="" id="BLOGGER_PHOTO_ID_5051497272709995010" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Após as palestras pretendo publicar o material aqui no blog.&lt;br /&gt;&lt;br /&gt;[]s Bula&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19241548-7936319280512824002?l=cafebatizado.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cafebatizado.blogspot.com/feeds/7936319280512824002/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19241548&amp;postID=7936319280512824002&amp;isPopup=true' title='2 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19241548/posts/default/7936319280512824002'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19241548/posts/default/7936319280512824002'/><link rel='alternate' type='text/html' href='http://cafebatizado.blogspot.com/2007/04/palestra-sobre-netbeans-e-javaserver.html' title='Palestra sobre Netbeans e Javaserver Faces'/><author><name>Bulinha</name><uri>http://www.blogger.com/profile/02428632736934670936</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_dpjZ1o3f9m4/RhqGAWu72gI/AAAAAAAAADM/QJvetKb1bE4/s72-c/caminho.JPG' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19241548.post-4977129655264416845</id><published>2007-03-27T10:20:00.000-03:00</published><updated>2007-03-27T10:34:36.539-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='linux'/><category scheme='http://www.blogger.com/atom/ns#' term='_claudio_'/><category scheme='http://www.blogger.com/atom/ns#' term='ubuntu'/><title type='text'>Ubuntu 7.04 Beta review</title><content type='html'>Na minha máquina tenho dois sistemas linux instalados: o Frugalware (default) e o Ubuntu 7.04 Beta, que tenho testado. No futuro pretendo testar o FreeBSD.&lt;br /&gt;&lt;br /&gt;A respeito do Ubuntu, como muitos têm lido, ele vai passar a ter Compiz instalado, instalação de codecs por demanda, e um melhor suporte aos drivers proprietários da ATI e da nVidia, fora outros detalhes menos aparentes ao usuário.&lt;br /&gt;&lt;br /&gt;O sistema inicia sem Compiz ou Beryl, mas tem uma opção para habilitar o Compiz (Beryl só instalando via &lt;span style="font-style:italic;"&gt;aptitude &lt;/span&gt;ou &lt;span style="font-style:italic;"&gt;apt-get&lt;/span&gt;) semelhante a encontrada em outras distros como a Fedora. Ao habilitar o Compiz, ele sugere a instalação dos drivers da placa de vídeo (ATI ou nVidia). Os efeitos do Compiz são legais, mas não se equiparam aos do Beryl. Contudo, o Compiz é bem mais leve.&lt;br /&gt;&lt;br /&gt;A instalação de codecs por demanda é muito interessante, e facilitam a vida do usuário, mas eu só vi funcionar com vídeo, com outros formatos a coisa não funcionou da mesma forma. Eu ainda encontrei alguns problemas com os codecs. Basicamente, eu continuo precisando do MPlayer para assistir a vídeos nos padrões mais novos do formato WMV.&lt;br /&gt;&lt;br /&gt;O sistema como um todo está funcionando melhor. Corrigiram diversos bugs, incluindo o do framebuffer, que não funcionava bem, mas a interface do terminal (fora do X11) continua estranha. A Canonical ainda tem um bom caminho para trilhar, mas o tem feito de maneira admirável.&lt;br /&gt;&lt;br /&gt;Em suma, ainda não é a distro perfeita, e nunca vai ser, uma vez que somos criaturas imperfeitas, e nada perfeito pode advir de nossos trabalhos, mas é a distribuição perfeita para usuários iniciantes, inexperientes, ou que não querem ter dor-de-cabeça ou mesmo perder tempo com configurações. Tudo funciona out-of-the-box. É instalar e usar. Para os demais, só vocês são capazes de dizer o que é melhor para vocês.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19241548-4977129655264416845?l=cafebatizado.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cafebatizado.blogspot.com/feeds/4977129655264416845/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19241548&amp;postID=4977129655264416845&amp;isPopup=true' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19241548/posts/default/4977129655264416845'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19241548/posts/default/4977129655264416845'/><link rel='alternate' type='text/html' href='http://cafebatizado.blogspot.com/2007/03/ubuntu-704-beta-review.html' title='Ubuntu 7.04 Beta review'/><author><name>Claudio Henrique Franco Gomes</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-mTCaH1eS0Q4/AAAAAAAAAAI/AAAAAAAAflY/havZUoCJfrg/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19241548.post-4859507640775108579</id><published>2007-03-27T10:05:00.000-03:00</published><updated>2007-03-27T10:34:36.540-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='frugalware'/><category scheme='http://www.blogger.com/atom/ns#' term='linux'/><category scheme='http://www.blogger.com/atom/ns#' term='_claudio_'/><category scheme='http://www.blogger.com/atom/ns#' term='opensource'/><title type='text'>Novidades</title><content type='html'>Muita coisa aconteceu nessas duas semanas que não enviei um só post para cá. &lt;br /&gt;&lt;br /&gt;Participei do SAP Fórum em São Paulo, onde vi as "últimas" novidades do que se está desenvolvendo em termos de ERP/CRM comercial: a comunidade SAP "descobriu" as facilidades das interfaces web (aleluia!), com SAP Netweaver. &lt;br /&gt;&lt;br /&gt;Obviamente não é necessário comprar o Netweaver para fazer uma interface web com o SAP; já existem conectores para diversas linguagens, incluindo Ruby, .Net, e Java. Cheguei a assistir uma palestra de uma empresa chamada Matec que criou todo um sistema de interface com o SAP usando plataforma .Net. Excelente!&lt;br /&gt;&lt;br /&gt;E na última semana, resolvi me auxiliar no desenvolvimento da distribuição linux Frugalware. Tive uma calorosa acolhida, e a equipe parece ter a mente aberta para mudanças e novas idéias. Muito bom! Nada como trabalhar com algo que se gosta em um ambiente agradável.&lt;br /&gt;&lt;br /&gt;Uma curiosidade: eu não vi o uso de notações húngaras no código-fonte do setup de instalação da distro, apesar de boa parte dos desenvolvedores ser húngara. Nem tudo é perfeito. Rsrs!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19241548-4859507640775108579?l=cafebatizado.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cafebatizado.blogspot.com/feeds/4859507640775108579/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19241548&amp;postID=4859507640775108579&amp;isPopup=true' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19241548/posts/default/4859507640775108579'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19241548/posts/default/4859507640775108579'/><link rel='alternate' type='text/html' href='http://cafebatizado.blogspot.com/2007/03/novidades.html' title='Novidades'/><author><name>Claudio Henrique Franco Gomes</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-mTCaH1eS0Q4/AAAAAAAAAAI/AAAAAAAAflY/havZUoCJfrg/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19241548.post-8970391736388965412</id><published>2007-03-12T09:38:00.000-03:00</published><updated>2007-03-12T10:52:27.976-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='frugalware'/><category scheme='http://www.blogger.com/atom/ns#' term='linux'/><category scheme='http://www.blogger.com/atom/ns#' term='_claudio_'/><category scheme='http://www.blogger.com/atom/ns#' term='review'/><title type='text'>Frugalware Linux 0.5 - Review</title><content type='html'>Nesse final de semana testei a versão 0.5 do &lt;a href="http://distrowatch.com/table.php?distribution=frugalware"&gt;Frugalware Linux&lt;/a&gt;, uma distribuição baseada no &lt;a href="http://distrowatch.com/table.php?distribution=slackware"&gt;Slackware&lt;/a&gt; e no &lt;a href="http://distrowatch.com/table.php?distribution=arch"&gt;Arch Linux&lt;/a&gt;, com versão para x86_64. O Frugalware pode ser instalado em CDs (9), em DVD, ou em USB (Net Install). Optei pela versão em DVD.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Instalação&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;O instalador é feito em &lt;a href="http://www.gnu.org/software/ncurses/"&gt;ncurses&lt;/a&gt;, mas não deixa nada a desejar para o &lt;a href="http://en.wikipedia.org/wiki/Anaconda_installer"&gt;Anaconda&lt;/a&gt;. A instalação é bastante &lt;span style="font-style:italic;"&gt;straight forward&lt;/span&gt;. Até um pouco demais, pois não há como voltar atrás. Ou seja, um erro significa recomeçar. Ponto negativo aqui.&lt;br /&gt;&lt;br /&gt;O instalador oferece opção de escolher cada pacote a ser instalado na máquina, mas para "agilizar" o processo, optei pela instalação padrão, que vem com quase todos os pacotes do DVD. Algo em torno de 1138 pacotes.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Utilização&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Depois de instalado o sistema, o início é (muito) bastante rápido (mesmo), mas não consegui entrar na interface gráfica. Por algum motivo o xorg.conf estava ajustado para usar o driver "nvidia", mas esse não veio instalado. Outro ponto negativo. Mudando para "nv" entrei no &lt;a href="http://en.wikipedia.org/wiki/Kde"&gt;KDE&lt;/a&gt; sem problemas.&lt;br /&gt;&lt;br /&gt;Além do KDE, a instalação padrão traz o Gnome, o XFCE, FVWM, e vários outros. Vale ressaltar que eu só entrei no KDE.&lt;br /&gt;&lt;br /&gt;Outros problemas foram a falta de som, e plugins para o Firefox, mas não posso dizer que foram realmente problemas, porque não me esforcei muito para ajustá-los.&lt;br /&gt;&lt;br /&gt;Uma curiosidade: o Frugalware vem com 11 terminais por padrão. Assim, o X11 é acessado no Ctrl+Alt+F12. Estranho, mas indiferente.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Atualização&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Tive problemas para atualizar o sistema para a versão mais nova (0.6rc2). Aparentemente o processo é simples, mas o gerenciador de pacotes (&lt;a href="http://en.wikipedia.org/wiki/Pacman_%28Arch_Linux%29"&gt;pacman&lt;/a&gt;) apresentou dependências circulares. Não foi difícil resolvê-las, mas contei isso como um ponto negativo.&lt;br /&gt;&lt;br /&gt;Depois de 2h baixando os &lt;a href="http://frugalware.org/packages"&gt;pacotes&lt;/a&gt; novos, o sistema ficou atualizado &lt;a href="http://en.wikipedia.org/wiki/Bleeding_edge"&gt;bleeding edge&lt;/a&gt;. Excelente! Contudo, continuei sem conseguir instalar os drivers da nVidia. Passei pelo mesmo problema do openSuse. Só consegui acesso aos recursos da placa instalando o driver baixado do site da nVidia.&lt;br /&gt;&lt;br /&gt;Não me arrisquei a instalar grandes coisas no sistema, mas fiquei muito satisfeito com o resultado.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Resumo&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;u&gt;Pontos negativos:&lt;/u&gt; a falta de opção para rever os passos no instalador gráfico; as dependências circulares nos pacotes; o X11 ter sido configurado para um driver não instalado; e o driver da nVidia do repositório não funcionar.&lt;br /&gt;&lt;br /&gt;&lt;u&gt;Pontos positivos:&lt;/u&gt; o instalador gráfico simplificado; a velocidade do início de sessão, e do gerenciador de janelas; o gerenciador de arquivos (pacman) e a forma simples e rápida com que se atualiza o sistema; e os pacotes atuais e compilados para x86_64. Algumas distribuições usam pacotes compilados para 686 em arquitetura x86_64.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Conclusão&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Enfim, uma grande distribuição em desenvolvimento. Provavelmente, a nova versão não terá boa parte desses erros, apresentando performance ainda melhor. Mal posso esperar pelo Frugalware 0.6.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19241548-8970391736388965412?l=cafebatizado.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cafebatizado.blogspot.com/feeds/8970391736388965412/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19241548&amp;postID=8970391736388965412&amp;isPopup=true' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19241548/posts/default/8970391736388965412'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19241548/posts/default/8970391736388965412'/><link rel='alternate' type='text/html' href='http://cafebatizado.blogspot.com/2007/03/frugalware-05-review.html' title='Frugalware Linux 0.5 - Review'/><author><name>Claudio Henrique Franco Gomes</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-mTCaH1eS0Q4/AAAAAAAAAAI/AAAAAAAAflY/havZUoCJfrg/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19241548.post-8388183246943878905</id><published>2007-03-07T17:18:00.000-03:00</published><updated>2007-03-07T17:33:45.148-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='java'/><category scheme='http://www.blogger.com/atom/ns#' term='_claudio_'/><category scheme='http://www.blogger.com/atom/ns#' term='opensource'/><title type='text'>Java e o povo brasileiro</title><content type='html'>No outro dia eu estava conversando com um colega de trabalho a respeito de porque o Java se tornou tão popular no Brasil, chegando esse a ter uma, senão a, maior comunidade Java do planeta.&lt;br /&gt;&lt;br /&gt;Ora, se há algo que brasileiro gosta de fazer é mudar o que vem padronizado para algo que atenda aos seus interesses ou gostos. Um exemplo disso são os fast foods (Mc Donald's, Bob's, etc). Somente no Brasil (até bem pouco tempo atrás) se podia pedir um número 1 com mais ou menos queijo, e com suco de laranja e nuggets, ao invés de refrigerante e batatas fritas.&lt;br /&gt;&lt;br /&gt;Outro exemplo claro de como o brasileiro gosta de "personalizar" é o SAP. Em nenhum outro país do mundo se criou tantas extensões (melhorias ou user exits) para os programas do SAP como se faz no Brasil.&lt;br /&gt;&lt;br /&gt;Caso ainda não tenha feito a relação, raciocine comigo. O Java traz em si, desde a primeira versão, um quê de "faça você mesmo", fora ser livre, e, atualmente, código aberto. Ou seja, tudo o que um brasileiro gosta de ouvir: Java é pra personalizar.&lt;br /&gt;&lt;br /&gt;Hoje em dia, obviamente, já existem diversas outras linguagens que oferecem as mesmas características, mas nenhuma tão sólida quanto o Java. Sólida no sentido de documentada (livros, manuais, referência, etc), com amplo suporte, e estável, tanto no que se refere ao funcionamento, quanto a mudanças.&lt;br /&gt;&lt;br /&gt;Obviamente, não foi só isso, a Sun fez um excelente trabalho de marketing, e aproveitou o tempo certo. Falando nisso, acredito ser esse o momento certo de se investir em marketing no Linux, agora que o Windows Vista está se mostrando um sistema operacional não viável. &lt;br /&gt;&lt;br /&gt;Quem sabe um dia essa idéia ganha maturidade...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19241548-8388183246943878905?l=cafebatizado.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cafebatizado.blogspot.com/feeds/8388183246943878905/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19241548&amp;postID=8388183246943878905&amp;isPopup=true' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19241548/posts/default/8388183246943878905'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19241548/posts/default/8388183246943878905'/><link rel='alternate' type='text/html' href='http://cafebatizado.blogspot.com/2007/03/java-e-o-povo-brasileiro.html' title='Java e o povo brasileiro'/><author><name>Claudio Henrique Franco Gomes</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-mTCaH1eS0Q4/AAAAAAAAAAI/AAAAAAAAflY/havZUoCJfrg/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19241548.post-432111902350429556</id><published>2007-03-07T09:56:00.000-03:00</published><updated>2007-03-07T10:05:28.816-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='gentoo'/><category scheme='http://www.blogger.com/atom/ns#' term='linux'/><category scheme='http://www.blogger.com/atom/ns#' term='_claudio_'/><title type='text'>Em busca da distribuição perfeita (parte 3)</title><content type='html'>O script que eu escrevi para instalar o sistema está sendo atualizado conforme a instalação prossegue. Quando tiver uma versão final eu ajusto o &lt;a href="http://cafebatizado.blogspot.com/2007/03/em-busca-da-distribuio-perfeita-parte-2.html"&gt;post&lt;/a&gt; onde o descrevi pela primeira vez.&lt;br /&gt;&lt;br /&gt;Bom, ontem instalei o Gnome, os drivers da nVidia, e o Beryl. Rodou tudo muito bem, inclusive o framebuffer (sendo simplório, é aquela tela colorida de carregamento do sistema). Ainda não terminei de "tunar" ("no pain no game") o driver de vídeo, mas já está muito excelente!&lt;br /&gt;&lt;br /&gt;Agora falta instalar o sistema de áudio (&lt;a href="http://gentoo-wiki.com/ALSA"&gt;ALSA&lt;/a&gt;), e os aplicativos que vou usar (OpenOffice, players de mídia, etc).&lt;br /&gt;&lt;br /&gt;Parece que minha busca acabou. Gentoo é o cara!&lt;br /&gt;&lt;br /&gt;Mas, como tenho um filesystem disponível para instalar sistemas operacionais, podem esperar por reviews.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19241548-432111902350429556?l=cafebatizado.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cafebatizado.blogspot.com/feeds/432111902350429556/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19241548&amp;postID=432111902350429556&amp;isPopup=true' title='1 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19241548/posts/default/432111902350429556'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19241548/posts/default/432111902350429556'/><link rel='alternate' type='text/html' href='http://cafebatizado.blogspot.com/2007/03/em-busca-da-distribuio-perfeita-parte-3.html' title='Em busca da distribuição perfeita (parte 3)'/><author><name>Claudio Henrique Franco Gomes</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-mTCaH1eS0Q4/AAAAAAAAAAI/AAAAAAAAflY/havZUoCJfrg/s512-c/photo.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19241548.post-3226800625424268256</id><published>2007-03-06T15:23:00.000-03:00</published><updated>2007-03-08T00:19:38.620-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='stored procedures'/><category scheme='http://www.blogger.com/atom/ns#' term='java'/><category scheme='http://www.blogger.com/atom/ns#' term='banco de dados'/><category scheme='http://www.blogger.com/atom/ns#' term='_bulinha_'/><title type='text'>Stored Procedures: usá-las ou não usá-las, eis a questão!</title><content type='html'>O pessoal que ja trabalha com java sabe que alem de ser multiplataforma, java pode ser multi-banco (sei lá se existe esta expressão). A tecnologia JDBC permite que utilizemos a mesma interface para acessar da mesma maneira vários bancos diferentes (Oracle, DB2, SQLServer, MySQL, etc...).&lt;br /&gt;&lt;br /&gt;Isto é muito bom para facilitar o desenvolvimento e melhor ainda para que nossa aplicação fique independente de banco de dados. Bastando apenas mudar o driver JDBC de um banco para outro, sem que seja necessário nenhuma alteração na aplicação (no máximo em arquivos de configuração se a aplicação for bem feita ;-) ).&lt;br /&gt;&lt;br /&gt;Para que isto funcione 100% devemos utilizar SQL Ansy e não podemos utilizar nenhuma feature que não seja comum a todos os bancos de dados.&lt;br /&gt;&lt;br /&gt;Este seria um mundo perfeito de desenvolvimento para banco de dados, mas todos sabemos que "mundos perfeitos" não existem. Muitos bancos de dados possuem features que podem aumentar em muito a performance da aplicação. E dependendo da aplicação ela pode não existir sem estas features.&lt;br /&gt;&lt;br /&gt;O que fazer neste caso? Usar ou não usar estas features do banco?&lt;br /&gt;&lt;br /&gt;É neste ponto que entra uma expressão muito importante na informática, o bom-senso.&lt;br /&gt;&lt;br /&gt;Se a aplicação tiver realmente a necessidade de trabalhar com vários bancos diferentes não tem muita opção.  O máximo que pode ser feito é se a aplicação for utilizar procedures, criar scripts diferentes para cada banco (o que é muito trabalhoso e sujeito a falhas).&lt;br /&gt;&lt;br /&gt;Mas se sua aplicação vai rodar em um único banco, acho que é uma boa idéia considerar utilizar estas features, pois na maioria das vezes o ganho de prerformance pode ser considerável (como exemplo eu trabalhei num projeto onde algumas querys demoravam mais de 60 minutos para serem executadas, e criando procedures com tabelas temporarias, etc... o tempo caio para menos de 30 segundos).&lt;br /&gt;&lt;br /&gt;Mas lembre-se mesmo que não haja previsão de troca de banco de dados, o futuro é incerto, e passar toda a regra de negócio para procedures pode não ser uma boa estratégia.&lt;br /&gt;&lt;br /&gt;Se foque na relação custo x benefício que as features do banco podem trazer para sua aplicação. No final das contas o que importa mesmo é o bom-senso.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19241548-3226800625424268256?l=cafebatizado.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cafebatizado.blogspot.com/feeds/3226800625424268256/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19241548&amp;postID=3226800625424268256&amp;isPopup=true' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19241548/posts/default/3226800625424268256'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19241548/posts/default/3226800625424268256'/><link rel='alternate' type='text/html' href='http://cafebatizado.blogspot.com/2007/03/stored-procedures-us-las-ou-no-us-las.html' title='Stored Procedures: usá-las ou não usá-las, eis a questão!'/><author><name>Bulinha</name><uri>http://www.blogger.com/profile/02428632736934670936</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19241548.post-8517219634137931262</id><published>2007-03-06T13:39:00.000-03:00</published><updated>2007-03-08T00:54:15.362-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='gentoo'/><category scheme='http://www.blogger.com/atom/ns#' term='opensuse'/><category scheme='http://www.blogger.com/atom/ns#' term='linux'/><category scheme='http://www.blogger.com/atom/ns#' term='_claudio_'/><category scheme='http://www.blogger.com/atom/ns#' term='ubuntu'/><title type='text'>Em busca da distribuição perfeita (parte 2)</title><content type='html'>Conforme falei, resolvi reinstalar o Gentoo na minha máquina. Para isso, planejei apagar o openSuse (HD SATA2) e instalar o Ubuntu (HD IDE), e então instalar o Gentoo (HD SATA2). &lt;br /&gt;&lt;br /&gt;Assim, eu tentei, mas o instalador do Ubuntu 6.10 para x86_64 deu erro na hora de definir a tabela de partições. Ele dizia que eu não tinha definido o diretório raiz ("\"), apesar de eu o ter feito. Vai entender...&lt;br /&gt;&lt;br /&gt;Resultado: instalei o openSuse no HD IDE sem nem mesmo me preocupar em instalar nada além do que vinha no DVD de instalação, e instalar o Gentoo no HD SATA2. Para isso fiz um script em bash (&lt;span style="font-weight:bold;"&gt;myGentooInstall.sh&lt;/span&gt;) de instalação que se tornou a listagem logo abaixo. &lt;br /&gt;&lt;br /&gt;Espero que quando eu chegar em casa já tenha terminado tudo, e o sistema esteja funcionando bem. Está sendo bom me sentir dono do sistema operacional mais uma vez. Com o Gentoo, se ocorre um erro, é bem fácil resolvê-lo ou contorná-lo.&lt;br /&gt;&lt;br /&gt;[EDIT: O &lt;a href="http://forums.gentoo.org/viewtopic-p-3947322.html"&gt;script&lt;/a&gt; foi movido para o fórum do Gentoo ]&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19241548-8517219634137931262?l=cafebatizado.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cafebatizado.blogspot.com/feeds/8517219634137931262/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19241548&amp;postID=8517219634137931262&amp;isPopup=true' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19241548/posts/default/8517219634137931262'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19241548/posts/default/8517219634137931262'/><link rel='alternate' type='text/html' href='http://cafebatizado.blogspot.com/2007/03/em-busca-da-distribuio-perfeita-parte-2.html' title='Em busca da distribuição perfeita (parte 2)'/><author><name>Claudio Henrique Franco Gomes</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-mTCaH1eS0Q4/AAAAAAAAAAI/AAAAAAAAflY/havZUoCJfrg/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19241548.post-5936810849589906571</id><published>2007-03-05T11:13:00.000-03:00</published><updated>2007-03-05T12:00:15.655-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='gentoo'/><category scheme='http://www.blogger.com/atom/ns#' term='opensuse'/><category scheme='http://www.blogger.com/atom/ns#' term='linux'/><category scheme='http://www.blogger.com/atom/ns#' term='slackware'/><category scheme='http://www.blogger.com/atom/ns#' term='_claudio_'/><category scheme='http://www.blogger.com/atom/ns#' term='amd64'/><category scheme='http://www.blogger.com/atom/ns#' term='nvidia'/><category scheme='http://www.blogger.com/atom/ns#' term='ubuntu'/><title type='text'>Em busca da distribuição perfeita (parte 1)</title><content type='html'>Recentemente comprei uma nova máquina. Parti de um &lt;a href="http://www.amd.com/br-pt/"&gt;AMD &lt;/a&gt;Athlon XP 2400+ (IDE, AGP, FX 5200 128MB) para um AMD Athlon X2 4200+ AM2 (SATA2, PCI-X, 7900 GS DDR2 256MB), e como toda mudança, preciso reinstalar o sistema operacional (na verdade não precisaria, mas eu acidentalmente apaguei o SO antigo).&lt;br /&gt;&lt;br /&gt;Eu já tinha idéia que uma boa parte dos aplicativos é desenvolvida pensando em arquiteturas de 32bits, ou seja, apesar de rodá-los em um processador de 64bits, provavelmente eles não aproveitam todo o potencial do processador. Em outras palavras, distribuições com pacotes binários precisam ter pacotes específicos para a arquitetura em questão (x86_64) para se ter uma resposta condizente na interface.&lt;br /&gt;&lt;br /&gt;Não vou entrar em detalhes a respeito do uso e das facilidades de cada distribuição, uma vez que esse tipo de material tem pela rede aos montes. Então vou focar nos problemas encontrados, e na minha percepção de power user (RÁ!).&lt;br /&gt;&lt;br /&gt;Minha jornada começou onde quase terminou a de 32bits, com o &lt;a href="http://www.ubuntu.com/"&gt;Ubuntu&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;O Ubuntu instalou tudo o que pedi facilmente (usei o &lt;a href="http://www.getautomatix.com/"&gt;Automatix&lt;/a&gt;), mas o framebuffer ficou um lixo! O bootsplash ficou cinza e pixelado. A interface gráfica funcionou direito, sem maiores problemas, mas a resposta do sistema não ficou condizente com o upgrade de hardware. Desconfio que os pacotes não são específicos para 64bits.&lt;br /&gt;&lt;br /&gt;Depois disso, resolvi tentar o &lt;a href="http://pt.opensuse.org/"&gt;openSuse&lt;/a&gt;, onde minha jornada de 32bits terminou.&lt;br /&gt;&lt;br /&gt;Utilizei um &lt;a href="http://l2knet.awardspace.com/scripts/postinstall.sh"&gt;script para agilizar a instalação de codecs e drivers no openSuse&lt;/a&gt; (o driver da &lt;a href="http://www.nvidia.com.br/"&gt;nVidia&lt;/a&gt; instalado foi o dos repositórios). O framebuffer estava OK, mas a inicialização do sistema é muito lenta, e a interface gráfica não entrou. Problemas com o driver da nVidia. Instalei o driver direto do site do fabricante, mas mesmo assim continuei sem direct rendering, e o sistema não reconheceu a placa, e fiquei também sem beryl.&lt;br /&gt;&lt;br /&gt;Atualmente estou testando o &lt;a href="http://www.gentoo.org/"&gt;Gentoo&lt;/a&gt; 2006.1 para x86_64. Cheguei a instalá-lo pelo live DVD. O sistema não ficou como eu queria, mas a velocidade apresentada é muitas vezes superior às outras distros. Não testei ainda a interface gráfica com os drivers da nVidia, mas o farei em breve. Também não instalei bootsplash.&lt;br /&gt;&lt;br /&gt;Penso em testar o &lt;a href="http://frugalware.org/"&gt;Frugalware&lt;/a&gt;, distribição baseada no Slackware, mas que segue linha própria. Vamos ver no que dá.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19241548-5936810849589906571?l=cafebatizado.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cafebatizado.blogspot.com/feeds/5936810849589906571/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19241548&amp;postID=5936810849589906571&amp;isPopup=true' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19241548/posts/default/5936810849589906571'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19241548/posts/default/5936810849589906571'/><link rel='alternate' type='text/html' href='http://cafebatizado.blogspot.com/2007/03/em-busca-da-distribuio-perfeita-parte-1.html' title='Em busca da distribuição perfeita (parte 1)'/><author><name>Claudio Henrique Franco Gomes</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-mTCaH1eS0Q4/AAAAAAAAAAI/AAAAAAAAflY/havZUoCJfrg/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19241548.post-6410844586185497287</id><published>2007-02-23T14:38:00.000-02:00</published><updated>2007-02-23T14:43:17.101-02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='_bulinha_'/><title type='text'>Blog a 4 mãos</title><content type='html'>Galera, não sei se perceberam mas agora tem outro "cabra" postando aqui no blog. O Cláudio é um grande amigo meu e vai falar principalmente sobre linux e opensource. Provavelmente ele vai postar muito mais coisa do que eu, e isso é bom porque vai me forçar a correr atraz do prejuízo ;-)&lt;br /&gt;&lt;br /&gt;Em breve vou postar mais umas coisas interessantes aqui no blog, e tambem vou dar uma variada, estou preparando um post sobre Oracle Text e uns testes que eu fiz, e aproveitar e falar da instalação do 10g express no ubuntu, aguardem.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19241548-6410844586185497287?l=cafebatizado.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cafebatizado.blogspot.com/feeds/6410844586185497287/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19241548&amp;postID=6410844586185497287&amp;isPopup=true' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19241548/posts/default/6410844586185497287'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19241548/posts/default/6410844586185497287'/><link rel='alternate' type='text/html' href='http://cafebatizado.blogspot.com/2007/02/blog-4-mos.html' title='Blog a 4 mãos'/><author><name>Bulinha</name><uri>http://www.blogger.com/profile/02428632736934670936</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19241548.post-4509542102695584592</id><published>2007-02-22T23:48:00.000-02:00</published><updated>2007-02-23T14:23:23.539-02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='linux'/><category scheme='http://www.blogger.com/atom/ns#' term='_claudio_'/><title type='text'>Acessando um servidor Citrix via Linux</title><content type='html'>O procedimento a seguir é indicado para instalar o Citrix Client no linux, e acessar um servidor. O SAP R/3 de treinamento será utilizado como exemplo.&lt;BR&gt;&lt;BR&gt; &lt;OL&gt; &lt;LI&gt;Baixar o &lt;SPAN style="COLOR: rgb(51,51,255); BACKGROUND-COLOR: rgb(255,255,255)"&gt;ICA Client&lt;/SPAN&gt; última versão para linux, e o certificado &lt;SPAN style="COLOR: rgb(51,51,255); BACKGROUND-COLOR: rgb(255,255,255)"&gt;TC Trust Center Class 2 CA &lt;/SPAN&gt;no &lt;SPAN style="FONT-WEIGHT: bold"&gt;Download Center&lt;/SPAN&gt; do site &lt;A title=http://mywts.sap.com href="http://mywts.sap.com"&gt;http://mywts.sap.com&lt;/A&gt; . &lt;BR&gt; &lt;LI&gt;Executar com o root o comando &lt;SPAN style="COLOR: rgb(51,51,255); BACKGROUND-COLOR: rgb(255,255,255)"&gt;rpm -i ICAClient-9.0-1.i386.rpm&lt;/SPAN&gt; .&lt;BR&gt;Obs.: No momento de criação deste manual, a versão mais nova do Citrix Client era a &lt;SPAN style="COLOR: rgb(51,51,255)"&gt;9.0-1&lt;/SPAN&gt;.&lt;BR&gt; &lt;LI&gt;Copie com o root o arquivo &lt;SPAN style="COLOR: rgb(51,51,255)"&gt;TCTrustCenterClass2CA.crt&lt;/SPAN&gt; para o diretório &lt;SPAN style="COLOR: rgb(51,51,255)"&gt;/usr/lib/ICAClient/keystore/cacerts&lt;/SPAN&gt;. &lt;BR&gt;&lt;BR&gt;Obs.: Certifique-se que os usuários comuns tenham permissão de leitura desse arquivo. Execute o comando abaixo com o root:&lt;BR&gt;&lt;SPAN style="COLOR: rgb(51,51,255)"&gt;chmod +r &lt;/SPAN&gt;&lt;SPAN style="COLOR: rgb(51,51,255)"&gt;/usr/lib/ICAClient/keystore/cacerts/&lt;/SPAN&gt;&lt;SPAN style="COLOR: rgb(51,51,255)"&gt;TCTrustCenterClass2CA.crt&lt;BR&gt;&lt;/SPAN&gt; &lt;LI&gt;Acesse o site &lt;A title=http://mywts.sap.com/ href="http://mywts.sap.com/"&gt;http://mywts.sap.com/&lt;/A&gt; e, após se logar no sistema de treinamento e clicar no link &lt;SPAN style="COLOR: rgb(51,51,255)"&gt;Common Training&lt;/SPAN&gt;, indique o programa &lt;SPAN style="COLOR: rgb(51,51,255)"&gt;/usr/lib/ICAClient/wfica&lt;/SPAN&gt; para tratar o arquivo de extensão &lt;SPAN style="COLOR: rgb(51,51,255)"&gt;ICA&lt;/SPAN&gt;. &lt;/LI&gt;&lt;/OL&gt;&lt;BR&gt;A partir de agora, sempre que clicar um link com extensão ICA, o Citrix Client será acionado.&lt;BR&gt;&lt;BR&gt;&lt;SPAN style="FONT-WEIGHT: bold; COLOR: rgb(255,0,0)"&gt;Atenção:&lt;/SPAN&gt; dependendo do servidor a ser acessado, um novo arquivo de certificado deverá ser armazenado no diretório indicado no passo 3 do procedimento acima.&lt;BR&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19241548-4509542102695584592?l=cafebatizado.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cafebatizado.blogspot.com/feeds/4509542102695584592/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19241548&amp;postID=4509542102695584592&amp;isPopup=true' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19241548/posts/default/4509542102695584592'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19241548/posts/default/4509542102695584592'/><link rel='alternate' type='text/html' href='http://cafebatizado.blogspot.com/2007/02/o-procedimento-seguir-indicado-para.html' title='Acessando um servidor Citrix via Linux'/><author><name>Claudio Henrique Franco Gomes</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-mTCaH1eS0Q4/AAAAAAAAAAI/AAAAAAAAflY/havZUoCJfrg/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19241548.post-1096197837210323880</id><published>2007-02-22T23:47:00.000-02:00</published><updated>2007-02-22T23:48:59.956-02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='linux'/><category scheme='http://www.blogger.com/atom/ns#' term='_claudio_'/><title type='text'></title><content type='html'>&lt;P&gt;&lt;STRONG&gt;&lt;U&gt;Instalando o Wine pelo código-fonte&lt;/U&gt;&lt;/STRONG&gt; &lt;/P&gt; &lt;P&gt; &lt;/P&gt; &lt;P&gt;Este processo é útil para quem pretende criar um arquivo .deb do zero. &lt;/P&gt; &lt;P&gt; &lt;/P&gt; &lt;P&gt;Primeiro se deve incluir os repositórios em seu arquivo /etc/apt/sources.list. É interessante verificar primeiro se os repositórios do Ubuntu já não atendem essa necessidade. &lt;/P&gt; &lt;BLOCKQUOTE dir=ltr&gt;&lt;FONT color=#006600&gt;sudo echo deb http://wine.budgetdedicated.com/apt dapper main &amp;gt;&amp;gt; /etc/apt/sources.list&lt;BR&gt;sudo echo deb-src http://wine.budgetdedicated.com/apt dapper main &amp;gt;&amp;gt; /etc/apt/sources.list&lt;/FONT&gt;&lt;/BLOCKQUOTE&gt; &lt;P&gt;A seguir, atualizar as informações de pacotes disponíveis pelo APT, baixar os pacotes necessários para compilar o wine, e efetuar a compilação propriamente dita: &lt;/P&gt; &lt;P&gt; &lt;/P&gt; &lt;BLOCKQUOTE dir=ltr&gt;&lt;FONT color=#006600&gt;sudo apt-get update&lt;/FONT&gt;&lt;BR&gt;&lt;FONT color=#006600&gt;sudo apt-get build-dep wine&lt;/FONT&gt;&lt;BR&gt;&lt;FONT color=#006600&gt;sudo apt-get --build source wine&lt;/FONT&gt;&lt;/BLOCKQUOTE&gt; &lt;P&gt;Ao terminar a compilação, execute o comando abaixo para instalar o pacote criado: &lt;/P&gt; &lt;BLOCKQUOTE dir=ltr&gt;&lt;FONT color=#006600&gt;sudo dpkg -i wine*.deb&lt;/FONT&gt;&lt;/BLOCKQUOTE&gt; &lt;P&gt;Uma outra forma de compilar o wine é, ao invés de usar o apt-get para compilar os fontes, compilá-los usando make: &lt;/P&gt; &lt;BLOCKQUOTE dir=ltr&gt;&lt;FONT color=#006600&gt;sudo apt-get update&lt;/FONT&gt;  &lt;P&gt;&lt;FONT color=#006600&gt;sudo apt-get build-dep wine&lt;/FONT&gt; &lt;/P&gt; &lt;P&gt;&lt;FONT color=#006600&gt;cd wine*&lt;/FONT&gt; &lt;/P&gt; &lt;P&gt;&lt;FONT color=#006600&gt;./configure CFLAGS=-fno-stack-protector&lt;BR&gt;make &amp;amp;&amp;amp; sudo make install&lt;/FONT&gt; &lt;/P&gt;&lt;/BLOCKQUOTE&gt; &lt;P&gt;O gcc no Ubuntu agora tem &lt;EM&gt;stack-protector&lt;/EM&gt; habilitado, ocasionando falhas de segmentação no wine-preloader. A configuração &lt;EM&gt;-fno-stach-protector&lt;/EM&gt; deve ser utilizada para evitar falhas de segmentação. &lt;/P&gt; &lt;P&gt; &lt;/P&gt; &lt;P&gt;Para desinstalar o wine instalado dessa forma: &lt;/P&gt; &lt;BLOCKQUOTE dir=ltr&gt;&lt;FONT color=#006600&gt;cd wine*&lt;/FONT&gt;  &lt;P&gt;&lt;FONT color=#006600&gt;sudo make uninstall&lt;/FONT&gt; &lt;/P&gt;&lt;/BLOCKQUOTE&gt; &lt;P&gt;Em ambas as opções, penso eu, é possível aplicar patches (&lt;A href="http://wiki.winehq.org/InterestingPatches"&gt;http://wiki.winehq.org/InterestingPatches&lt;/A&gt;). &lt;/P&gt; &lt;BLOCKQUOTE dir=ltr&gt;&lt;FONT color=#006600&gt;gunzip -c patch-file | patch -p1&lt;FONT face=Arial&gt; &lt;/FONT&gt;&lt;/FONT&gt;&lt;/BLOCKQUOTE&gt; &lt;P&gt; &lt;/P&gt; &lt;P&gt;&lt;STRONG&gt;&lt;U&gt;Configuração de som&lt;/U&gt;&lt;/STRONG&gt; &lt;/P&gt; &lt;P&gt; &lt;/P&gt; &lt;P&gt;Rodar winecfg e ajustar o som para usar ALSA e OSS. &lt;/P&gt; &lt;UL&gt; &lt;LI&gt;Para usuários de KDE, uma alternativa é usar aRts.  &lt;LI&gt;Para usuários de Gnome, uma alternativa é usar EsounD.  &lt;LI&gt;O uso de Jack e NAS é recomendado apenas para usuários avançados. &lt;/LI&gt;&lt;/UL&gt; &lt;P&gt; &lt;/P&gt; &lt;P&gt;Utilizar emulação para DirectSound e para driver. Essa medida vai evitar erros de DSound underrun, ainda não solucionado na árvore principal do Wine. &lt;/P&gt; &lt;P&gt;&lt;STRONG&gt;&lt;/STRONG&gt;&lt;/P&gt; &lt;P&gt;&lt;U&gt;&lt;STRONG&gt;Rodando programas em um&lt;/STRONG&gt; &lt;/U&gt;&lt;STRONG&gt;&lt;U&gt;novo display&lt;/U&gt; (exemplo com X-Men Legends 2: Rise of Apocalypse)&lt;/STRONG&gt; &lt;/P&gt; &lt;P&gt; &lt;/P&gt; &lt;P&gt;Arquivo xmen2.sh (game.sh): &lt;/P&gt; &lt;BLOCKQUOTE dir=ltr style="COLOR: #006600; FONT-FAMILY: Courier New"&gt;#!/bin/sh&lt;BR&gt;&lt;BR&gt;# Game parameters.&lt;BR&gt;PROGRAM="c:/Arquivos de programas/Activision/X-Men Legends 2/Data/XMen2.exe -opengl"&lt;BR&gt;SCREEN_RES="1024x768" # Must match screen identifier in XF86Config&lt;BR&gt;SCREEN_BPP="24"      # Must be defined for screen in XF86Config&lt;BR&gt;GAMMA="1.75"&lt;BR&gt;&lt;BR&gt;~/winerun.sh "$PROGRAM" $SCREEN_RES $SCREEN_BPP $GAMMA&lt;/BLOCKQUOTE&gt; &lt;P&gt;Para cada jogo deve-se criar um arquivo como esse acima deve ser criado. &lt;/P&gt; &lt;P&gt;&lt;BR&gt;Arquivo winerun.sh: &lt;/P&gt; &lt;BLOCKQUOTE dir=ltr style="COLOR: #006600; FONT-FAMILY: Courier New"&gt;#!/bin/sh  &lt;P&gt;&lt;FONT face="Courier New"&gt;&lt;/FONT&gt; &lt;/P&gt; &lt;P&gt;&lt;FONT face="Courier New"&gt;PROGRAM=$1&lt;BR&gt;SCREEN_RES=$2&lt;BR&gt;SCREEN_BPP=$3&lt;BR&gt;GAMMA=$4&lt;BR&gt;&lt;BR&gt;# Sensitivity works according to "xset mouse"&lt;BR&gt;MOUSE_SENSITIVITY="1.15/15"&lt;BR&gt;# Display number to use&lt;BR&gt;DISPLAY_NUMBER=":1"&lt;BR&gt;# Nice priority to give to wine. Note some games (ex Starcraft) do not like -20.&lt;BR&gt;PRIORITY=-5&lt;BR&gt;&lt;BR&gt;GAME_PLAYER=$USER&lt;BR&gt;&lt;BR&gt;# extract&lt;BR&gt;APPDIR=${PROGRAM%/*}&lt;BR&gt;APPEXE=./${PROGRAM##*/}&lt;BR&gt;&lt;BR&gt;SCRIPT="xgamma -gamma $GAMMA&lt;BR&gt; xset mouse $MOUSE_SENSITIVITY&lt;BR&gt; cd "$HOME/.wine/dosdevices/$APPDIR"&lt;BR&gt; sudo -u $GAME_PLAYER nice $PRIORITY wine $APPEXE $*&lt;BR&gt; wait"&lt;BR&gt;&lt;BR&gt;# Run full screen on display 1.&lt;BR&gt;export DISPLAY=$DISPLAY_NUMBER&lt;BR&gt;&lt;BR&gt;# Make sure user is allowed to use display 1.&lt;BR&gt;[ "`xauth list $DISPLAY_NUMBER`" ] || xauth add $DISPLAY_NUMBER . `mcookie`&lt;BR&gt;&lt;BR&gt;sudo xinit /bin/sh -c "$SCRIPT" -- $DISPLAY -screen $SCREEN_RES -depth $SCREEN_BPP&lt;/FONT&gt; &lt;/P&gt;&lt;/BLOCKQUOTE&gt; &lt;P&gt; &lt;/P&gt; &lt;P&gt;Acrescentar as seções abaixo ao /etc/X11/xorg.conf: &lt;/P&gt; &lt;BLOCKQUOTE dir=ltr&gt;&lt;SPAN style="COLOR: #006600; FONT-FAMILY: Courier New"&gt;Section "Screen"&lt;/SPAN&gt;&lt;BR style="COLOR: #006600; FONT-FAMILY: Courier New"&gt;&lt;SPAN style="COLOR: #006600; FONT-FAMILY: Courier New"&gt;   Identifier     "800x600"&lt;/SPAN&gt;&lt;BR style="COLOR: #006600; FONT-FAMILY: Courier New"&gt;&lt;SPAN style="COLOR: #006600; FONT-FAMILY: Courier New"&gt;# Ajuste essa parte conforme definido no seu /etc/X11/xorg.conf [início]&lt;/SPAN&gt;&lt;BR style="COLOR: #006600; FONT-FAMILY: Courier New"&gt;&lt;SPAN style="COLOR: #006600; FONT-FAMILY: Courier New"&gt;    Device         "NVIDIA Corporation NV34 [GeForce FX 5200]"&lt;/SPAN&gt;&lt;BR style="COLOR: #006600; FONT-FAMILY: Courier New"&gt;&lt;SPAN style="COLOR: #006600; FONT-FAMILY: Courier New"&gt;    Monitor        "SyncMaster"&lt;/SPAN&gt;&lt;BR style="COLOR: #006600; FONT-FAMILY: Courier New"&gt;&lt;SPAN style="COLOR: #006600; FONT-FAMILY: Courier New"&gt;# Ajuste essa parte conforme definido no seu /etc/X11/xorg.conf [fim]&lt;/SPAN&gt;&lt;BR style="COLOR: #006600; FONT-FAMILY: Courier New"&gt;&lt;SPAN style="COLOR: #006600; FONT-FAMILY: Courier New"&gt;   DefaultDepth    24&lt;/SPAN&gt;&lt;BR style="COLOR: #006600; FONT-FAMILY: Courier New"&gt;&lt;SPAN style="COLOR: #006600; FONT-FAMILY: Courier New"&gt;   SubSection     "Display"&lt;/SPAN&gt;&lt;BR style="COLOR: #006600; FONT-FAMILY: Courier New"&gt;&lt;SPAN style="COLOR: #006600; FONT-FAMILY: Courier New"&gt;       Depth       8&lt;/SPAN&gt;&lt;BR style="COLOR: #006600; FONT-FAMILY: Courier New"&gt;&lt;SPAN style="COLOR: #006600; FONT-FAMILY: Courier New"&gt;       Modes      "800x600"&lt;/SPAN&gt;&lt;BR style="COLOR: #006600; FONT-FAMILY: Courier New"&gt;&lt;SPAN style="COLOR: #006600; FONT-FAMILY: Courier New"&gt;   EndSubSection&lt;/SPAN&gt;&lt;BR style="COLOR: #006600; FONT-FAMILY: Courier New"&gt;&lt;SPAN style="COLOR: #006600; FONT-FAMILY: Courier New"&gt;   SubSection     "Display"&lt;/SPAN&gt;&lt;BR style="COLOR: #006600; FONT-FAMILY: Courier New"&gt;&lt;SPAN style="COLOR: #006600; FONT-FAMILY: Courier New"&gt;       Depth       16&lt;/SPAN&gt;&lt;BR style="COLOR: #006600; FONT-FAMILY: Courier New"&gt;&lt;SPAN style="COLOR: #006600; FONT-FAMILY: Courier New"&gt;       Modes      "800x600"&lt;/SPAN&gt;&lt;BR style="COLOR: #006600; FONT-FAMILY: Courier New"&gt;&lt;SPAN style="COLOR: #006600; FONT-FAMILY: Courier New"&gt;   EndSubSection&lt;/SPAN&gt;&lt;BR style="COLOR: #006600; FONT-FAMILY: Courier New"&gt;&lt;SPAN style="COLOR: #006600; FONT-FAMILY: Courier New"&gt;   SubSection     "Display"&lt;/SPAN&gt;&lt;BR style="COLOR: #006600; FONT-FAMILY: Courier New"&gt;&lt;SPAN style="COLOR: #006600; FONT-FAMILY: Courier New"&gt;       Depth       24&lt;/SPAN&gt;&lt;BR style="COLOR: #006600; FONT-FAMILY: Courier New"&gt;&lt;SPAN style="COLOR: #006600; FONT-FAMILY: Courier New"&gt;       Modes      "800x600"&lt;/SPAN&gt;&lt;BR style="COLOR: #006600; FONT-FAMILY: Courier New"&gt;&lt;SPAN style="COLOR: #006600; FONT-FAMILY: Courier New"&gt;   EndSubSection&lt;/SPAN&gt;&lt;BR style="COLOR: #006600; FONT-FAMILY: Courier New"&gt;&lt;SPAN style="COLOR: #006600; FONT-FAMILY: Courier New"&gt;EndSection&lt;/SPAN&gt;&lt;BR style="COLOR: #006600; FONT-FAMILY: Courier New"&gt;&lt;BR style="COLOR: #006600; FONT-FAMILY: Courier New"&gt;&lt;SPAN style="COLOR: #006600; FONT-FAMILY: Courier New"&gt;Section "Screen"&lt;/SPAN&gt;&lt;BR style="COLOR: #006600; FONT-FAMILY: Courier New"&gt;&lt;SPAN style="COLOR: #006600; FONT-FAMILY: Courier New"&gt;   Identifier     "1024x768"&lt;/SPAN&gt;&lt;BR style="COLOR: #006600; FONT-FAMILY: Courier New"&gt;&lt;SPAN style="COLOR: #006600; FONT-FAMILY: Courier New"&gt;# Ajuste essa parte conforme definido no seu /etc/X11/xorg.conf [início]&lt;/SPAN&gt;&lt;BR style="COLOR: #006600; FONT-FAMILY: Courier New"&gt;&lt;SPAN style="COLOR: #006600; FONT-FAMILY: Courier New"&gt;    Device         "NVIDIA Corporation NV34 [GeForce FX 5200]"&lt;/SPAN&gt;&lt;BR style="COLOR: #006600; FONT-FAMILY: Courier New"&gt;&lt;SPAN style="COLOR: #006600; FONT-FAMILY: Courier New"&gt;    Monitor        "SyncMaster"&lt;/SPAN&gt;&lt;BR style="COLOR: #006600; FONT-FAMILY: Courier New"&gt;&lt;SPAN style="COLOR: #006600; FONT-FAMILY: Courier New"&gt;# Ajuste essa parte conforme definido no seu /etc/X11/xorg.conf [fim]&lt;/SPAN&gt;&lt;BR style="COLOR: #006600; FONT-FAMILY: Courier New"&gt;&lt;SPAN style="COLOR: #006600; FONT-FAMILY: Courier New"&gt;   DefaultDepth    24&lt;/SPAN&gt;&lt;BR style="COLOR: #006600; FONT-FAMILY: Courier New"&gt;&lt;SPAN style="COLOR: #006600; FONT-FAMILY: Courier New"&gt;   SubSection     "Display"&lt;/SPAN&gt;&lt;BR style="COLOR: #006600; FONT-FAMILY: Courier New"&gt;&lt;SPAN style="COLOR: #006600; FONT-FAMILY: Courier New"&gt;       Depth       8&lt;/SPAN&gt;&lt;BR style="COLOR: #006600; FONT-FAMILY: Courier New"&gt;&lt;SPAN style="COLOR: #006600; FONT-FAMILY: Courier New"&gt;       Modes      "1024x768"&lt;/SPAN&gt;&lt;BR style="COLOR: #006600; FONT-FAMILY: Courier New"&gt;&lt;SPAN style="COLOR: #006600; FONT-FAMILY: Courier New"&gt;   EndSubSection&lt;/SPAN&gt;&lt;BR style="COLOR: #006600; FONT-FAMILY: Courier New"&gt;&lt;SPAN style="COLOR: #006600; FONT-FAMILY: Courier New"&gt;   SubSection     "Display"&lt;/SPAN&gt;&lt;BR style="COLOR: #006600; FONT-FAMILY: Courier New"&gt;&lt;SPAN style="COLOR: #006600; FONT-FAMILY: Courier New"&gt;       Depth       16&lt;/SPAN&gt;&lt;BR style="COLOR: #006600; FONT-FAMILY: Courier New"&gt;&lt;SPAN style="COLOR: #006600; FONT-FAMILY: Courier New"&gt;       Modes      "1024x768"&lt;/SPAN&gt;&lt;BR style="COLOR: #006600; FONT-FAMILY: Courier New"&gt;&lt;SPAN style="COLOR: #006600; FONT-FAMILY: Courier New"&gt;   EndSubSection&lt;/SPAN&gt;&lt;BR style="COLOR: #006600; FONT-FAMILY: Courier New"&gt;&lt;SPAN style="COLOR: #006600; FONT-FAMILY: Courier New"&gt;   SubSection     "Display"&lt;/SPAN&gt;&lt;BR style="COLOR: #006600; FONT-FAMILY: Courier New"&gt;&lt;SPAN style="COLOR: #006600; FONT-FAMILY: Courier New"&gt;       Depth       24&lt;/SPAN&gt;&lt;BR style="COLOR: #006600; FONT-FAMILY: Courier New"&gt;&lt;SPAN style="COLOR: #006600; FONT-FAMILY: Courier New"&gt;       Modes      "1024x768"&lt;/SPAN&gt;&lt;BR style="COLOR: #006600; FONT-FAMILY: Courier New"&gt;&lt;SPAN style="COLOR: #006600; FONT-FAMILY: Courier New"&gt;   EndSubSection&lt;/SPAN&gt;&lt;BR style="COLOR: #006600; FONT-FAMILY: Courier New"&gt;&lt;SPAN style="COLOR: #006600; FONT-FAMILY: Courier New"&gt;EndSection&lt;/SPAN&gt;&lt;BR&gt;&lt;/BLOCKQUOTE&gt; &lt;P&gt; &lt;/P&gt; &lt;P&gt;Note que &lt;EM&gt;identifier&lt;/EM&gt; e &lt;EM&gt;depth&lt;/EM&gt; se adequam aos parâmetros dos scripts. &lt;/P&gt; &lt;P&gt; &lt;/P&gt; &lt;P&gt;Atalhos de teclado: &lt;/P&gt; &lt;BLOCKQUOTE dir=ltr&gt; &lt;P&gt;&lt;FONT color=#006600&gt;...&lt;/FONT&gt; &lt;/P&gt; &lt;P&gt;&lt;FONT color=#006600&gt;CTRL+ALT+F7 accesses the desktop (display :0)&lt;BR&gt;CTRL+ALT+F8 accesses the game display (assuming it stays on :1)&lt;BR&gt;CTRL+ALT+F9 goes on :2&lt;/FONT&gt; &lt;/P&gt; &lt;P&gt;&lt;FONT color=#006600&gt;CTRL+ALT+BACKSPACE terminates desktop&lt;/FONT&gt; &lt;/P&gt;&lt;/BLOCKQUOTE&gt; &lt;P&gt;&lt;SPAN style="FONT-WEIGHT: bold"&gt;Sugestão de uso:&lt;/SPAN&gt; criar um diretório bin em $HOME, e mover os scripts (*.sh) para lá. Executar: &lt;/P&gt; &lt;BLOCKQUOTE dir=ltr style="FONT-FAMILY: Courier New"&gt; &lt;P&gt;&lt;FONT color=#006600&gt;$sh ~/bin/xmen2.sh&lt;/FONT&gt; &lt;/P&gt;&lt;/BLOCKQUOTE&gt; &lt;P&gt;Lembrar de ajustar os diretórios para adequar ao seu sistema. &lt;/P&gt; &lt;P&gt; &lt;/P&gt;&lt;BR&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19241548-1096197837210323880?l=cafebatizado.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cafebatizado.blogspot.com/feeds/1096197837210323880/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19241548&amp;postID=1096197837210323880&amp;isPopup=true' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19241548/posts/default/1096197837210323880'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19241548/posts/default/1096197837210323880'/><link rel='alternate' type='text/html' href='http://cafebatizado.blogspot.com/2007/02/instalando-o-wine-pelo-cdigo-fonte-este.html' title=''/><author><name>Claudio Henrique Franco Gomes</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-mTCaH1eS0Q4/AAAAAAAAAAI/AAAAAAAAflY/havZUoCJfrg/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19241548.post-116595354688510488</id><published>2006-12-12T17:53:00.000-02:00</published><updated>2007-02-23T14:50:39.099-02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='_bulinha_'/><category scheme='http://www.blogger.com/atom/ns#' term='opensource'/><title type='text'>Indo audaciosamente onde nenhum programador jamais esteve</title><content type='html'>&lt;div style="text-align: justify;"&gt;A pouco tempo tive a oportunidade de assistir um dos episódios de Star Trek New Generation, especificamente o episódio final da segunda temporada. Neste episódio os tripulantes da Enterprise encontram uma nave do final do século vinte com 3 tripulantes conservados em animação suspensa. Eles resolvem reanimar os tripulantes, um deles é um roqueiro, outra é uma dona de casa e o ultimo um homem que foi rico e poderoso. Este ultimo exige ser tratado com mais respeito, por ser rico, exige entrar em contato com o banco, empresas que era dono, etc...&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;Neste ponto o capitão Picard explica que no futuro as pessoas não se importam mais com bens materiais, que as pessoas apenas tentam serem seres humanos melhores, como pode ser visto no diálogo:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Picard&lt;/span&gt; - &lt;span style="font-style: italic;"&gt;Muito se mudou nos últimos 300 anos. As pessoas já não estão mais obcecadas com a acumulação de coisas. Eliminamos a fome, a miséria, a necessidade de posses. Deixamos atrás nossa infância.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Sr. Offenhouse&lt;/span&gt; - &lt;span style="font-style: italic;"&gt;Não entendeu. Não se trata de posses. Trata-se de poder.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Picard&lt;/span&gt; - &lt;span style="font-style: italic;"&gt;Poder para fazer que?&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Sr. Offenhouse&lt;/span&gt; - &lt;span style="font-style: italic;"&gt;Controlar sua vida, seu destino.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Picard&lt;/span&gt; - &lt;span style="font-style: italic;"&gt;Essa classe de controle é uma ilusão.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Sr. Offenhouse&lt;/span&gt; - &lt;span style="font-style: italic;"&gt;Que vou fazer? Como viverei?&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;.....&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Picard&lt;/span&gt; - &lt;span style="font-style: italic;"&gt;Estamos no século XXIV. Já não existem as necessidades materiais.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Sr. Offenhouse&lt;/span&gt; - &lt;span style="font-style: italic;"&gt;Então, onde está o desafio?&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Picard&lt;/span&gt; - &lt;span style="font-style: italic;"&gt;O desafio, Sr. Offenhouse, é melhorar a si mesmo. Enriquecer-se.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;Ver este episódio me fez refletir sobre o atual cenário que nos encontramos. Seguindo a linha do opensource temos que um desenvolvedor cria um software e o deixa disponível para que a comunidade participe do desenvolvimento do mesmo corrigindo erros e o melhorando ainda mais. Em sua grande maioria os softwares opensource são gratuitos, ou seja ninguém tem que pagar nada para usá-lo e quem lucra realmente é a comunidade como um todo. E todos os softwares (salvo raras excessões) tem como objetivo tornar mais fácil a vida do ser humano.&lt;br /&gt;&lt;br /&gt;Cheguei a conclusão que o software opensource pode ser um dos fatores que nos permitirá chegar em um futuro semelhante ao proposto pela  serie Star Trek, onde o ser humano não tem como objetivo os ganhos materiais, apenas almejar melhorar a si mesmo.&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19241548-116595354688510488?l=cafebatizado.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cafebatizado.blogspot.com/feeds/116595354688510488/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19241548&amp;postID=116595354688510488&amp;isPopup=true' title='1 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19241548/posts/default/116595354688510488'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19241548/posts/default/116595354688510488'/><link rel='alternate' type='text/html' href='http://cafebatizado.blogspot.com/2006/12/indo-audaciosamente-onde-nenhum.html' title='Indo audaciosamente onde nenhum programador jamais esteve'/><author><name>Bulinha</name><uri>http://www.blogger.com/profile/02428632736934670936</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19241548.post-116363012785412270</id><published>2006-11-15T20:16:00.001-02:00</published><updated>2007-02-23T14:49:12.851-02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='java'/><category scheme='http://www.blogger.com/atom/ns#' term='_bulinha_'/><category scheme='http://www.blogger.com/atom/ns#' term='jsf'/><title type='text'>ICEFaces agora é open source</title><content type='html'>&lt;div style="text-align: justify;"&gt;Uma boa noticia pra quem desenvolve para web utilizando javaserver faces, a ICESoft resolver liberar o ICEFaces como opensource.&lt;br /&gt;&lt;br /&gt;Anteriormente já existia uma versão free, chamada community e uma Enterprise que era paga. A principal diferença entre as duas era o suporte (que continua sendo pago).&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;Segue o link do comunicado: &lt;a href="http://www.icesoft.com/corporate/press_release_11_06_open_source.html"&gt;http://www.icesoft.com/corporate/press_release_11_06_open_source.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;E segue o link do projeto opensouce: &lt;a href="http://www.icefaces.org/main/home/index.jsp"&gt;http://www.icefaces.org/main/home/index.jsp&lt;br /&gt;&lt;/a&gt;&lt;br /&gt;E neste link você pode ver uma amostra dos componentes disponíveis no ICEFaces: &lt;a href="http://component-showcase.icefaces.org/component-showcase/"&gt;http://component-showcase.icefaces.org/component-showcase/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;Eu cheguei a fazer um "testiculo" (pequeno teste) com o ICEFaces e posso garantir a vocês que ele é muito poderoso. É praticamente 100% ajax. Diferente de uma aplicação web que "renderiza" HTML, o ICEFaces se comunica com a página, enviando para ela os componentes que devem ser desenhados. Me pareceu que um código JS vai na página e fica conversando com o servidor perguntando quais componentes devem ser desenhados, isto permite que partes da página sejam alteradas/trocadas sem que seja necessário interação do usuário. Só pra se ter uma ideia, nos meus testes quando eu "parava" o servidor imediatamente aparecia uma mensagem na página informando que não havia mais conexão com o servidor e a página era bloqueada :P.&lt;br /&gt;&lt;br /&gt;Se estiverem começando um projeto novo agora, recomendo darem uma olhadinha nesse camarada ;-)&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19241548-116363012785412270?l=cafebatizado.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cafebatizado.blogspot.com/feeds/116363012785412270/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19241548&amp;postID=116363012785412270&amp;isPopup=true' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19241548/posts/default/116363012785412270'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19241548/posts/default/116363012785412270'/><link rel='alternate' type='text/html' href='http://cafebatizado.blogspot.com/2006/11/icefaces-agora-open-source_15.html' title='ICEFaces agora é open source'/><author><name>Bulinha</name><uri>http://www.blogger.com/profile/02428632736934670936</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19241548.post-115928032064994638</id><published>2006-09-26T11:18:00.000-03:00</published><updated>2007-02-23T14:50:00.073-02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='java'/><category scheme='http://www.blogger.com/atom/ns#' term='jpa'/><category scheme='http://www.blogger.com/atom/ns#' term='netbeans'/><category scheme='http://www.blogger.com/atom/ns#' term='jee5'/><category scheme='http://www.blogger.com/atom/ns#' term='_bulinha_'/><category scheme='http://www.blogger.com/atom/ns#' term='jsf'/><title type='text'>Primeiro teste com JEE5</title><content type='html'>Bom galera, depois de muuuuuito tempo sem postar nada, resolvi fazer um teste neste fim de semana e como ficou melhor do que o esperado achei melhor compartilhar com vocês.&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;Resolvi fazer um pequeno teste (tambem chamado testículo) com JEE5 e ver como ele se comporta na prática, já tinha ouvido e lido sobre o aumento da produtividade, que é mais facil, etc... Até agora eu só tinha visto exemplos de JPA, EJB 3.0, JSF 1.2, etc... mas não tinha visto um com tudo junto, então resolvi fazer o meu. É uma aplicação simples, apenas uma agenda de telefone/e-mail funcionando tudo numa tela, inclusão, alteração, exclusão e consulta, um CRUDizinho sem vergonha.&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;Como IDE resolvi usar o NetBeans 5.5 beta 2, que tem suporte completo e ja vem com o Sun Java System Application Server que implementa a JEE5, e se eu não estiver enganado é a base do GlassFish. Cheguei até ver na net como fazer para o usar o GlassFish, mas acabei perdendo o link e não achei mais, e como eu tambem não tava com muita esperança de que tudo fosse funcionar, nem liguei, mas depois vou correr atraz ;-) (bem como vou ver se tem como fazer isso tudo no Eclipse tambem).&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;Bom então vamos lá, pra começar temos que baixar o &lt;a href="http://www.netbeans.info/downloads/download.php?type=5.5b2"&gt;NetBeans 5.5 beta 2&lt;/a&gt; e instalá-lo. Depois de instalado, basta executá-lo (dããã) :)&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;A primeira coisa que vamos fazer é criar a base de dados e a tabela da nossa agenda. O NetBeans 5.5 beta 2 vem com &lt;a href="http://developers.sun.com/prodtech/javadb/"&gt;Java DB&lt;/a&gt;, que é baseado no &lt;a href="http://db.apache.org/derby/"&gt;Derby&lt;/a&gt; que é baseado no &lt;a href="http://www-306.ibm.com/software/data/cloudscape/"&gt;Cloudscape&lt;/a&gt; (ufa), acredito que você possa usar quaquer banco de dados, eu usei este porque ja vinha com ele e como o foco era fazer o JEE5 funcionar ficou ele mesmo.&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;Para criar a base de dados, vá no menu Tools&amp;gt;Java DB Database&amp;gt;Create Java DB Database, na janela de diálogo basta preencher todos os campos com "agenda": database name, user e password. Assim a vida fica mais facil :P&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;Na "abinha" de runtime, em databases nossa base irá aparecer (se você for abrindo os nodes, claro). Clique com o botão direito sobre ela e selecione connect para abrir a conexão.&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;Agora vamos criar a nossa tabelinha, com a conexão aberta, clique com o botão direito novamente sobre a base e selecione Execute command, isto irá abrir uma janela para executarmos comandos SQL, entre com a instrução abaixo para criarmos nossa tabelinha:&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;&lt;small&gt;&lt;span style="font-weight: bold;font-size:85%;" &gt;&lt;span style="font-family:courier new;"&gt;create table tb_agenda (&lt;br /&gt;id integer generated always as identity constraint id_pk primary key,&lt;br /&gt;nome varchar(50) not null,&lt;br /&gt;telefone varchar(30),&lt;br /&gt;email varchar(30),&lt;br /&gt;dtnascimento date&lt;br /&gt;);&lt;/span&gt;&lt;/span&gt;&lt;/small&gt;&lt;/pre&gt;&lt;small&gt;&lt;br /&gt;&lt;big&gt;&lt;br /&gt;&lt;/big&gt;&lt;/small&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://photos1.blogger.com/blogger/7761/1900/1600/screenshot3.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 336px; height: 143px;" src="http://photos1.blogger.com/blogger/7761/1900/320/screenshot3.png" alt="" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;&lt;small&gt;&lt;big&gt;Agora ja temos que temos nossa base com nossa tabelinha, vamos criar o nosso projeto. Então vamos lá, menu File&amp;gt;New Project selecione Enterprise e Enterprise Application, para criarmos nosso EAR. Na janela basta entrar com o nome do Projeto Agenda, deve estar marcada como default a opção para JEE5, mas não custa nada confirmar, o restante deixe como default. Devem ter sido criadas 3 entradas na lista de projetos do NetBeans, Agenda (ear), Agenda-ejb e Agenda-war.&lt;/big&gt;&lt;/small&gt;&lt;br /&gt;&lt;/div&gt;&lt;small&gt;&lt;big&gt;&lt;br /&gt;&lt;/big&gt;&lt;/small&gt;&lt;div style="text-align: justify;"&gt;&lt;small&gt;&lt;big&gt;Precisamos agorar criar a configuração da persistencia do EJB 3.0, o persistence.xml. Para isso o NetBeans tem um wizard que quebra um galho, &lt;/big&gt;&lt;/small&gt;clique com o botão direito sobre o Agenda-ejb selecione New&amp;gt;Persistence Unit. Deixe as opções default (ate mesmo o nome), verifique se está apontando para o datasource correto, no meu teste eu deixei como Persistence Provider o Toplink, mas acredito que possa ser usado o Hibernate ou o Kodo, em todo caso isto pode ser alterado mais tarde sem maiores dificuldades, basta editar o persistence.xml.&lt;br /&gt;&lt;/div&gt;&lt;small&gt;&lt;big&gt;&lt;br /&gt;&lt;/big&gt;&lt;/small&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://photos1.blogger.com/blogger/7761/1900/1600/screenshot5.0.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://photos1.blogger.com/blogger/7761/1900/320/screenshot5.0.png" alt="" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;small&gt;&lt;big&gt;&lt;br /&gt;Depois de terminarmos será criado o seguinte conteúdo para o arquivo:&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;&lt;small style="font-family: courier new;"&gt;&lt;b&gt;&amp;lt;?xml version="1.0" encoding="UTF-8"?&amp;gt;&lt;br /&gt;&amp;lt;persistence version="1.0" xmlns="http://java.sun.com/xml/ns/persistence"&lt;br /&gt;xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"&lt;br /&gt;xsi:schemaLocation="http://java.sun.com/xml/ns/persistence&lt;br /&gt;http://java.sun.com/xml/ns/persistence/persistence_1_0.xsd"&amp;gt;&lt;br /&gt;&amp;lt;persistence-unit name="Agenda-ejbPU" transaction-type="JTA"&amp;gt;&lt;br /&gt;&amp;lt;jta-data-source&amp;gt;jdbc/agenda&amp;lt;/jta-data-source&amp;gt;&lt;br /&gt;&amp;lt;properties&amp;gt;&amp;lt;/properties&amp;gt;&lt;br /&gt;&amp;lt;/persistence-unit&amp;gt;&lt;br /&gt;&amp;lt;/persistence&amp;gt;&lt;/b&gt;&lt;/small&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;/big&gt;&lt;/small&gt;&lt;div style="text-align: justify;"&gt;&lt;small&gt;&lt;big&gt;Chegou a hora de criarmos nosso objeto para representar os dados da agenda, que deve se chamar Agenda (oh!). Vamos colocar nossa classe no pacote agenda, do projeto Agenda-ejb, segue abaixo o código:&lt;/big&gt;&lt;/small&gt;&lt;br /&gt;&lt;/div&gt;&lt;style type="text/css"&gt;&lt;br /&gt; &lt;!--   @page { margin: 2cm }   P { margin-bottom: 0.21cm }  --&gt;&lt;br /&gt;&lt;/style&gt;&lt;p class="western"  style="margin-bottom: 0cm; font-weight: bold;font-family:courier new;"&gt;&lt;span style="font-size:85%;"&gt;&lt;/span&gt;&lt;/p&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;&lt;pre&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;package agenda;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;import java.util.Date;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;import javax.persistence.Column;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;import javax.persistence.Entity;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;import javax.persistence.GeneratedValue;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;import javax.persistence.GenerationType;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;import javax.persistence.Id;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;import javax.persistence.Table;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;import javax.persistence.Temporal;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;import javax.persistence.TemporalType;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;@Entity&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;@Table(name="tb_agenda")&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;public class Agenda implements java.io.Serializable {&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;   @Id&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;   @GeneratedValue(strategy=GenerationType.IDENTITY)&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;   @Column(name="id")&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;   private int id;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;   @Column(name="nome",length=50)&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;   private String nome;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;   @Column(name="telefone",length=40)&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;   private String telefone;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;   @Column(name="email",length=30)&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;private String email;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;br /&gt;&lt;br /&gt;@Column(name="dtnascimento")&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;@Temporal(TemporalType.DATE)&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;private Date dtnascimento;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;br /&gt;&lt;br /&gt;public int getId(){ return id; }&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;br /&gt;public void setId(int id) { this.id = id; }&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;br /&gt;public String getNome() { return nome; } &lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;br /&gt;public void setNome(String nome) { this.nome =nome;}&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;br /&gt;public String getTelefone() { return telefone; } &lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;br /&gt;public void setTelefone(String telefone) {this.telefone = telefone;}&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;br /&gt;public String getEmail() { return email; }&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;br /&gt;public void setEmail(String email) { this.email = email;}&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;br /&gt;public Date getDtnascimento() { return dtnascimento; }   &lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;br /&gt;public void setDtnascimento(Date dtnascimento){&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;this.dtnascimento = dtnascimento;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;}&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;}&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;&lt;/span&gt;&lt;/pre&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;&lt;b style="font-weight: bold;"&gt;&lt;/b&gt;&lt;br /&gt;&lt;/span&gt;&lt;p class="western" style="margin-bottom: 0cm; text-align: justify;"&gt;Não vou perder tempo explicando as annotations, porque isto já esta ficando grande e porque já tem um monte de site explicando isto :P (sem contar que na javamagazine deste mes tem uma materia sobre JPA).&lt;br /&gt;&lt;/p&gt;&lt;p class="western" style="margin-bottom: 0cm; text-align: justify;"&gt;Agora temos que criar nosso EJB de negócio, um stateless simples que sera acessado pela aplicação web e persistira o nosso Entity agenda usando JPA. Novamente clique com o botão direito sobre o Agenda-ejb selecione New&amp;gt;Session Bean, na janela de diálogo preencha o nome do EJB com Agenda, o pacote tambem pode ser agenda. Serão criados dois arquivos, a classe AgendaBean que é nosso ejb e a interface local AgendaLocal.&lt;br /&gt;&lt;/p&gt;&lt;p class="western" style="margin-bottom: 0cm;"&gt;Agora vem o exercicio preferido: ctrl+c ctrl+v :) primeiro para o AgendaBean:&lt;span style="font-weight: bold;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="western"  style="margin-bottom: 0cm; font-weight: bold;font-family:courier new;"&gt;&lt;span style="font-size:85%;"&gt;&lt;/span&gt;&lt;/p&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;&lt;pre&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;package agenda;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;import java.util.List;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;import javax.annotation.Resource;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;import javax.ejb.Stateless;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;import javax.ejb.TransactionManagement;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;import javax.ejb.TransactionManagementType;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;import javax.persistence.EntityManager;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;import javax.persistence.EntityManagerFactory;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;import javax.persistence.PersistenceContext;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;import javax.persistence.Query;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;import javax.transaction.HeuristicMixedException;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;import javax.transaction.HeuristicRollbackException;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;import javax.transaction.NotSupportedException;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;import javax.transaction.RollbackException;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;import javax.transaction.SystemException;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;import javax.transaction.UserTransaction;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;@Stateless&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;@TransactionManagement(value=TransactionManagementType.CONTAINER)&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;public class AgendaBean implements agenda.AgendaLocal {&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;   @PersistenceContext&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;   private EntityManager manager;    &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;   public void salvar(Agenda agenda) {&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;      if (agenda.getId()&amp;gt;0)&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;         manager.merge(agenda);&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;      else&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;         manager.persist(agenda);&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;   }&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;   public void excluir(Agenda agenda) {&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;      Agenda ag =manager.merge(agenda);&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;      manager.remove(ag);&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;   }&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;   public List consultar() {&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;      Query q =manager.createQuery("select a from Agenda a");&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;      return q.getResultList();&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;   }&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;}&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;&lt;/span&gt;&lt;/pre&gt;&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;Agora é a vez da interface:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;&lt;pre&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;package agenda;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;import java.util.List;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;import javax.ejb.Local;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;@Local&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;public interface AgendaLocal {&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;   public void salvar(Agenda agenda);&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;   public void excluir(Agenda agenda);&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;   public List consultar();&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;}&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;&lt;/span&gt;&lt;/pre&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;small&gt;&lt;/small&gt;&lt;p class="western" style="margin-bottom: 0cm; text-align: justify;"&gt;Nossa camada de negócios está pronta agora temos que fazer a nossa camada web (e dalhe MVC).&lt;br /&gt;&lt;/p&gt;&lt;p class="western" style="margin-bottom: 0cm; text-align: justify;"&gt;A primeira coisa a ser feita é configurar a servlet do JSF no web.xml, para isso vá la no projeto Agenda-war e abra o web.xml e faça com que fique assim (e tome ctrl+c ctrl+v)&lt;br /&gt;&lt;/p&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;&lt;pre&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;&amp;lt;?xml version="1.0" encoding="UTF-8"?&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;&amp;lt;web-app xmlns="http://java.sun.com/xml/ns/javaee"&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;      xsi:schemaLocation="http://java.sun.com/xml/ns/javaee&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;      http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;      version="2.5"&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;   &amp;lt;session-config&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;      &amp;lt;session-timeout&amp;gt;30&amp;lt;/session-timeout&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;   &amp;lt;/session-config&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;   &amp;lt;welcome-file-list&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;      &amp;lt;welcome-file&amp;gt;index.jsp&amp;lt;/welcome-file&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;   &amp;lt;/welcome-file-list&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;   &amp;lt;servlet&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;      &amp;lt;servlet-name&amp;gt;Faces Servlet&amp;lt;/servlet-name&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;      &amp;lt;servlet-class&amp;gt;javax.faces.webapp.FacesServlet&amp;lt;/servlet-class&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;      &amp;lt;load-on-startup&amp;gt;1&amp;lt;/load-on-startup&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;   &amp;lt;/servlet&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;   &amp;lt;servlet-mapping&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;      &amp;lt;servlet-name&amp;gt;Faces Servlet&amp;lt;/servlet-name&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;      &amp;lt;url-pattern&amp;gt;*.jsf&amp;lt;/url-pattern&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;   &amp;lt;/servlet-mapping&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;&amp;lt;/web-app&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;&lt;/span&gt;&lt;/pre&gt;&lt;/span&gt;&lt;/span&gt;&lt;p class="western" style="margin-bottom: 0cm; text-align: justify;"&gt;Agora vamos criar o arquivo faces-config.xml, na pasta WEB-INF clique com o botão direito selecione New&amp;gt;XML Document nome do arquivo faces-config e deixe as opções default, o resto você ja sabe (mais ctrl+c ctr+v, afinal se chegou ate aqui você já deve estar craque nisso).&lt;br /&gt;&lt;/p&gt;&lt;p class="western" style="margin-bottom: 0cm;"&gt;&lt;small&gt;&lt;b&gt;&lt;span style="font-family:courier new;"&gt;&lt;/span&gt;&lt;/b&gt;&lt;/small&gt;&lt;/p&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;&lt;pre&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;&amp;lt;faces-config xmlns="http://java.sun.com/xml/ns/javaee"&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;      xsi:schemaLocation="http://java.sun.com/xml/ns/javaee&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;      http://java.sun.com/xml/ns/javaee/web-facesconfig_1_2.xsd"&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;      version="1.2"&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;   &amp;lt;managed-bean&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;      &amp;lt;managed-bean-name&amp;gt;agendaMB&amp;lt;/managed-bean-name&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;      &amp;lt;managed-bean-class&amp;gt;agenda.AgendaMB&amp;lt;/managed-bean-class&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;   &amp;lt;managed-bean-scope&amp;gt;session&amp;lt;/managed-bean-scope&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;   &amp;lt;/managed-bean&amp;gt;                &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;&amp;lt;/faces-config&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;&lt;/span&gt;&lt;/pre&gt;&lt;/span&gt;&lt;/span&gt;&lt;p class="western" style="margin-bottom: 0cm;"&gt;&lt;small&gt;&lt;b&gt;&lt;span style="font-family:courier new;"&gt;&lt;/span&gt;&lt;/b&gt;&lt;/small&gt;&lt;br /&gt;&lt;/p&gt;&lt;div style="text-align: justify;"&gt;E já que declaramos o agenda.AgendaMB, vamos então criá-lo, seguindo o mesmo ritual, botão direito, New&amp;gt;Java Class ........ ctrl+v.&lt;br /&gt;&lt;/div&gt;&lt;p class="western"  style="margin-bottom: 0cm;font-family:courier new;"&gt;&lt;span style="font-size:85%;"&gt;&lt;b style="font-family: courier new;"&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;&lt;pre&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;package agenda;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;import java.util.Date;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;import javax.ejb.EJB;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;import javax.faces.context.FacesContext;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;import javax.faces.model.DataModel;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;import javax.faces.model.ListDataModel;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;public class AgendaMB {&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;   private Agenda agenda;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;   private DataModel lista;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;   @EJB&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;   private AgendaLocal agendaBean;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;   public void salvar(){&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;      agendaBean.salvar(agenda);&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;      this.agenda = null;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;      this.lista = null;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;   }&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;   public void excluir(){&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;      agendaBean.excluir(agenda);&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;      this.agenda = null;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;      this.lista = null;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;   }&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;   public DataModel getLista(){&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;      if (lista==null) {&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;         lista = new ListDataModel(agendaService.consultar());&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;      }&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;      return lista;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;   }&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;   public void selecionar(){&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;      agenda = (Agenda) lista.getRowData();&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;   }&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;   public Agenda getAgenda(){&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;      if (agenda ==null)&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;         agenda =new Agenda();&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;      return agenda;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;   }&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;}&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;&lt;/span&gt;&lt;/pre&gt;&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;Agora vamos a parte chata, criar a pagina jsp para nossa agenda, afinal vamos ter que fazer mais ctrl+c ctrl+v. Mais uma vez botão direito..... O nome da página será agenda (dã!).&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;b&gt;&lt;small&gt;&lt;span style="font-family:courier new;"&gt;&lt;/span&gt;&lt;/small&gt;&lt;/b&gt;&lt;pre&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;&amp;lt;%@page contentType="text/html"%&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;&amp;lt;%@page pageEncoding="UTF-8"%&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;&amp;lt;%@ taglib uri="http://java.sun.com/jsf/core" prefix="f" %&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;&amp;lt;%@ taglib uri="http://java.sun.com/jsf/html" prefix="h" %&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;&amp;lt;!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;   "http://www.w3.org/TR/html4/loose.dtd"&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;&amp;lt;html&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;   &amp;lt;f:view&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;      &amp;lt;head&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;         &amp;lt;title&amp;gt;Agenda&amp;lt;/title&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;      &amp;lt;/head&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;      &amp;lt;body&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;         &amp;lt;h1&amp;gt;Agenda&amp;lt;/h1&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;         &amp;lt;h:form&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;            &amp;lt;h:panelGrid columns="2"&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;               &amp;lt;h:outputLabel id="labelID" value="ID" /&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;               &amp;lt;h:panelGroup&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;                  &amp;lt;h:inputText id="id" value="#{agendaMB.agenda.id}"&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;                        disabled="true" label="labelID"&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;                     &amp;lt;f:convertNumber integerOnly="true"/&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;                  &amp;lt;/h:inputText&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;                  &amp;lt;h:message for="id"&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;                        errorStyle="color:red"/&amp;gt;                 &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;               &amp;lt;/h:panelGroup&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;               &amp;lt;h:outputLabel id="labelNome" value="Nome"/&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;            &amp;lt;h:panelGroup&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;            &amp;lt;h:inputText id="nome" value="#{agendaMB.agenda.nome}"&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;                  label="labelNome" size="40" maxlength="50"&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;                  required="true"/&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;            &amp;lt;h:message for="nome"&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;                  errorStyle="color:red"/&amp;gt;                 &lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;         &amp;lt;/h:panelGroup&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;         &amp;lt;h:outputLabel id="labelTelefone" value="Telefone"/&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;         &amp;lt;h:panelGroup&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;               &amp;lt;h:inputText id="telefone"&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;                  value="#{agendaMB.agenda.telefone}"&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;                     label="labelTelefone" size="20"                    &lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;                  maxlength="30"/&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;               &amp;lt;h:message for="telefone"&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;                  errorStyle="color:red"/&amp;gt;                 &lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;         &amp;lt;/h:panelGroup&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;               &amp;lt;h:outputLabel id="labelEmail" value="E-Mail"/&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;         &amp;lt;h:panelGroup&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;         &amp;lt;h:inputText id="email"&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;      &lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;      value="#{agendaMB.agenda.email}"&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;         label="labelEmail" size="30" maxlength="30"/&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;      &amp;lt;h:message for="email"&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;                  errorStyle="color:red"/&amp;gt;                 &lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;         &amp;lt;/h:panelGroup&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;         &amp;lt;h:outputLabel id="labelNascimento"&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;               value="Data de Nascimento"/&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;         &amp;lt;h:panelGroup&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;      &amp;lt;h:inputText id="dtnascimento"&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;            value="#{agendaMB.agenda.dtnascimento}"&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;         label="labelNascimento" size="12" maxlength="10"&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;         &amp;lt;f:convertDateTime pattern="dd/MM/yyyy" /&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;      &amp;lt;/h:inputText&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;&amp;lt;h:message for="dtnascimento"&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;&lt;span style="font-size:85%;"&gt;   &lt;/span&gt;&lt;span&gt;   errorStyle="color:red"/&amp;gt;            &lt;br /&gt;          &lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;lt;/h:panelGroup&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;&amp;lt;f:facet name="footer"&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;&amp;lt;h:panelGroup&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;&amp;lt;h:commandButton value="Salvar"&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;action="#{agendaMB.salvar}" /&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;&amp;lt;h:commandButton value="Excluir"&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;action="#{agendaMB.excluir}"&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;rendered="#{agendaMB.agenda.id&amp;gt;0}" /&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;&amp;lt;/h:panelGroup&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;&amp;lt;/f:facet&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;&amp;lt;/h:panelGrid&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;&amp;lt;/h:form&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;&amp;lt;hr/&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &amp;lt;h:form&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;&amp;lt;h:dataTable value="#{agendaMB.lista}" var="linha"&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;&amp;lt;h:column&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;&amp;lt;f:facet name="header"&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;&amp;lt;h:outputText value="ID"/&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;&amp;lt;/f:facet&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;&amp;lt;h:commandLink action="#{agendaMB.selecionar}" &amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;&amp;lt;h:outputText value="#{linha.id}" /&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;&amp;lt;/h:commandLink&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;&amp;lt;/h:column&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;&amp;lt;h:column&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;&amp;lt;f:facet name="header"&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;&amp;lt;h:outputText value="Nome"/&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;&amp;lt;/f:facet&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;&amp;lt;h:outputText value="#{linha.nome}" /&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;&amp;lt;/h:column&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;&amp;lt;/h:dataTable&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;&amp;lt;/h:form&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;&amp;lt;/body&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;&amp;lt;/f:view&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;&amp;lt;/html&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/pre&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;div style="text-align: justify;"&gt;E por último vamos alterar a pagina index.jsp que é criada por default para que ela redirecione para nossa página, é só apagar tudo que tem la e incluir este bloco imenso de código (o maior ate agora):&lt;br /&gt;&lt;/div&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;br /&gt;&lt;big style="font-family: courier new;"&gt;&amp;lt;jsp:forward page="agenda.jsf" /&amp;gt;&lt;/big&gt;&lt;br /&gt;&lt;br /&gt;(pelo menos a fonte é a maior :)&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;div style="text-align: justify;"&gt;&lt;/div&gt;&lt;span&gt;Agora é só executar a aplicação e começar a cadastrar os contatos. Num próximo post vou comentar alguns passos (afinal isto aqui ja ta grande pacas).&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://photos1.blogger.com/blogger/7761/1900/1600/screenshot8.0.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://photos1.blogger.com/blogger/7761/1900/320/screenshot8.0.png" alt="" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;span&gt;&lt;br /&gt;E por favor comentem pra eu saber que não foi só a minha esposa que viu :P&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19241548-115928032064994638?l=cafebatizado.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cafebatizado.blogspot.com/feeds/115928032064994638/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19241548&amp;postID=115928032064994638&amp;isPopup=true' title='8 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19241548/posts/default/115928032064994638'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19241548/posts/default/115928032064994638'/><link rel='alternate' type='text/html' href='http://cafebatizado.blogspot.com/2006/09/primeiro-teste-com-jee5.html' title='Primeiro teste com JEE5'/><author><name>Bulinha</name><uri>http://www.blogger.com/profile/02428632736934670936</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>8</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19241548.post-113574277100907036</id><published>2005-12-28T01:57:00.000-02:00</published><updated>2006-03-19T18:38:48.876-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='java'/><category scheme='http://www.blogger.com/atom/ns#' term='_bulinha_'/><title type='text'>Ubuntu, Java, NetBeans e Eclipse</title><content type='html'>Um amigo meu me perguntou outro dia como instalar o NetBeans 5.0 no Ubuntu, eu ja tinha feito isso, mas não lembrava o que tinha feito, faltava alguma lib ou dependencia que acabei resolvendo, mas para variar não anotei. E como vira e mexe eu tenho que fazer isso novamente (instalar java, linux, netbeans, eclipse, etc...) resolvi criar um "manualzinho" pra ajudar todo mundo :)&lt;br /&gt;&lt;br /&gt;1) Pra começar precisamos do Ubuntu, pra quem não sabe esta é uma distribuição Linux que tem feito muito sucesso ultimamente, eu comecei a usar ela no inicio do ano, e gostei muito. Ela é gratuita, incluindo o envio dos CDs!!! Então para termos o nosso ubuntu temos 2 opções:&lt;br /&gt;Fazer o download em &lt;a href="http://www.ubuntulinux.org/download"&gt;http://www.ubuntulinux.org/download&lt;/a&gt; ou fazer o pedido dos cds em &lt;a href="https://shipit.ubuntu.com/"&gt;https://shipit.ubuntu.com/&lt;/a&gt;, na ultima vez eu pedi 80 cds, a maioria ja foi distribuida (em palestras e cursos). Demora um pouco pra chegar, eu não tive paciencia e fiz o download, mas a intenção do pedido era distribuir mesmo :P&lt;br /&gt;Assim que estiver de posse da sua versão, basta instalá-la (não é dificil, só preste anteção na hora de criar partições, etc...)&lt;br /&gt;&lt;br /&gt;Depois de instalado, faça a atualização, demora um pouco mas vai resolver vários problemas.&lt;br /&gt;&lt;br /&gt;2) Agora que ja temos nosso Linux devemos fazer o download do JDK. Vá para o link &lt;a href="http://java.sun.com/j2se/1.5.0/download.jsp"&gt;http://java.sun.com/j2se/1.5.0/download.jsp&lt;/a&gt; e baixe o JDK 5.0 update 6 (esta era a última versão quando estava escrevendo este post), apesar de no topo eu falar que vamos instalar o NetBeans, não vamos pegar a versão que esta disponível nesta pagina, pois ela é a versão 4.1 e vamos instalar a 5.0.&lt;br /&gt;Quando for redirecionado para a página de download propriamente dita, você deve aceitar os termos da Licença e escolher o arquivo jdk-1_5_0_06-linux-i586.bin (arquivo RPM é apena para distribuições baseadas no RedHat, como o Fedora, etc...).&lt;br /&gt;Caso apenas você seja o único usuário da máquina, você pode até instalar no seu diretório home, mas não aconselho a você fazer isso. Vamos então instalar o java no diretorio /opt, para isso devemos estar como usuário root, no ubuntu você pode abrir o console e digitar este comando :&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;sudo su&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Será solicitado uma senha, basta que você entre com a senha de seu usuário. Caso você esteja usando outra distribuição, ou você tenha configurado de alguma maneira diferente seu ubuntu você poderá usar apenas o comando su, mas será necessário o conhecimento da senha do root. Agora devemos mover o arquivo java para o diretório opt, e dar a ele "direitos de execução":&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;mv jdk-1_5_0_06-linux-i586.bin /opt&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;cd /opt&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;chmod +x jdk-1_5_0_06-linux-i586.bin&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;(uma pequena dica, pra não ter que ficar digitando o nome do arquivo o tempo todo, basta começar a digitar jdk e ir pressionando tab que o linux completa o resto, se você tiver mais de um arquivo que inicie com jdk basta ir pressionando tab várias vezes até chegar no arquivo certo)&lt;br /&gt;&lt;br /&gt;Depois é só executar o arquivo, será exibido os termos de licença e depois será solicitada a confirmação y/n:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;./jdk-1_5_0_06-linux-i586.bin&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;(o ./ é usado para executar programas que estão no mesmo diretorio que vc se encontra)&lt;br /&gt;&lt;br /&gt;Será criado o diretório jdk1.5.0_06.&lt;br /&gt;&lt;br /&gt;Agora já temos o linux instalado no nosso sistema, mas ele ainda não está configurado, devemos agora incluir ele no path, e setar outras variáveis no ambiente. Ainda como usuário root, iremos editar o arquivo bash.bashrc que fica no diretório /etc:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;gedit /etc/bash.bashrc&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Devemos incluir as seguintes linhas ao final do arquivo:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;JAVA_HOME=/opt/jdk1.5.0_06&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;CLASSPATH=.:$JAVA_HOME/lib/tools.jar&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;PATH=$JAVA_HOME/bin:$PATH&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;export JAVA_HOME CLASSPATH PATH&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Depois de salvar o arquivo basta fechar o gedit, fechar o console. Agora abra novamente um novo console para verificar se as alterações que fizemos nas variáveis de ambiente estão ok, para isto digite no prompt:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;java -version&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;E você deverá ver a versão do java que acabamos de instalar, se ocorrer algum problema revise todos os passos.&lt;br /&gt;&lt;br /&gt;3) Agora que ja temos o java instalado podemos usar qualquer aplicativo no console, criar pequenos aplicativos usando o gedit (ou qualquer outro editor de texto que vc queira, por exemplo o vi, kedit se vc esta usando o kubuntu, etc...) e compilar com javac. Mas isto eu só aconselho para quem esta começando com o java, pois a melhor maneira de aprender e quebrando bastante a cabeça na linha de comando, mas pra quem ja esta trabalhando e quer apenas desenvolver no linux, o ideal e ter uma boa IDE instalada. As duas melhores IDEs free/open source do momento são o Eclipse e o NetBeans, cada uma tem suas vantagens e desvantagens e a escolha vai do gosto de&lt;br /&gt;cada um (mais tarde eu pretendo fazer um comparativo entre elas, mas fica pra depois :P).&lt;br /&gt;&lt;br /&gt;3.1) Vamos começar com o NetBeans:&lt;br /&gt;Primeiro vamos fazer o download, em &lt;a href="http://www.netbeans.info/downloads/download.php?type=5.0b2"&gt;http://www.netbeans.info/downloads/download.php?type=5.0b2&lt;/a&gt; selecione o sistema Linux e deixe o idioma em English (se no seu aparecer outra opção, me avise :P), entre com seu email, caso queira assinar alguma das listas de noticias do NetBeans deixe a checkbox correspondente selecionada.&lt;br /&gt;Vamos baixar o primeiro arquivo: netbeans-5_0-beta2-bin-linux.bin&lt;br /&gt;O processo de instalação é semelhante ao do java, primeiro vamos para o console e mudamos para o usuário root:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;sudo su&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;(se você tiver executado a instalação do java a pouco tempo, talvez o ubuntu não solicite a sua senha)&lt;br /&gt;&lt;br /&gt;Caso não tenha feito o update do ubuntu, faça agora ou pelo menos faça esta atualização (como root mesmo, no console):&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;apt-get install bc&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Confirme todas as dependencias, exceto se ele disser que vai remover alguma coisa, neste caso vc ta fú :(&lt;br /&gt;(se você tiver uma outra distribuição, verifique como deve ser feita esta atualização)&lt;br /&gt;&lt;br /&gt;Vamos instalar no mesmo diretório que instalamos o java, no /opt&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;mv netbeans-5_0-beta2-bin-linux.bin /opt&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;chmod +x netbeans-5_0-beta2-bin-linux.bin&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;./netbeans-5_0-beta2-bin-linux.bin&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;O NetBeans tem um instalador gráfico do tipo next, next, next, finish. E você pode ir fazendo exatamente isso :P, sem stress. Você verá que ele irá encontrar a versão do ajva que instalamos anteriormente. No final da instalação ele irá indicar quais comandos você deve usar para executar o netbeans e para desinstalá-lo.&lt;br /&gt;Se tudo foi feito corretamente (e se você estiver usando o gnome, no kde eu não testei) você terá já um item no menu do gnu para o NetBeans em Aplicações/Programação.&lt;br /&gt;&lt;br /&gt;3.2) Agora vamos instalar o Eclipse. No caso do Eclipse eu vou fazer um pouco diferente, vou dar dois opções de sabores :P. Podemos instalar o Eclipse 3.1.1 puro, ou o Eclipse + WebTools (pra quem não sabe o WebTools é um plug-in que permite ao eclipse desenvolver aplicativos J2EE). Pra fazer o download:&lt;br /&gt;&lt;br /&gt;Eclipse puro: &lt;a href="http://www.eclipse.org/downloads"&gt;http://www.eclipse.org/downloads&lt;/a&gt; provavelmente irá aparecer já de cara a última versão para o seu sistema operacional (se você fizer o download de uma estação com windows instalado, você tera que selecionar o link Other Downloads&lt;br /&gt;&lt;br /&gt;Eclipse + WebTools: &lt;a href="http://download.eclipse.org/webtools/downloads"&gt;http://download.eclipse.org/webtools/downloads&lt;/a&gt; o Build mais recente é o 1.0 de 21/12/2005 mas ainda não é a versão final. Você pode baixar o webtools separado do eclipse, caso queira instalar o eclipse puro e depois instalar o webtoos, mas para isso você deve instalar mais uma série de plug-ins (GEM, JEM, etc...), sem contar que deve ser de uma versão específica. Caso você queira trabalhar com desenvolvimento web baixe este pacote contendo os 2 juntos.&lt;br /&gt;&lt;br /&gt;Na verdade, durante a instalação, não há diferença nenhuma entre uma ou outra opção pois ambas são arquivos compactados, o que vai mudar é unicamente o nome do arquivo, portanto vou considerar que fizemos apenas o download do eclipse.&lt;br /&gt;&lt;br /&gt;Vamos mover o arquivo que baixamos para o diretorio /opt e descompactá-lo (lembre-se que devemos estar como usuário root).&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;sudo su&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;mv eclipse-SDK-3.1.1-linux-gtk.tar.gz /opt&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;cd /opt&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;tar -xf eclipse-SDK-3.1.1-linux-gtk.tar.gz&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Depois que isto foi feito o eclipse já está instalado, basta sair do usuário root (pode-se usar o comando exit, ou simplesmente fechar o console e abri um novo) e usar o comando&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;/opt/eclipse/eclipse&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Será solicitado a criação de um workspace no diretório home do usuário, e pronto temos o eclipse rodando.&lt;br /&gt;&lt;br /&gt;Caso você queira criar um lançador no desktop basta usar este mesmo comando como comando para o lançador, ou se quiser incluir no menu, a última versão do ubunto que vem como gnome 2.12 vem com um editor de menus (no menu Aplicações/Ferramentas do Sistema). Para icone do lançador o eclipse vem com um arquivo chamado icon.xpm que fica no diretório raiz do eclipse.&lt;br /&gt;&lt;br /&gt;Bom galera, com isso já dá pra começar a trabalhar com java no linux tranquilamente, mas como eu ja expliquei como instalar o java, netbeans e eclipse acho que da pra aproveitar e dar mais um help rapidinho. Como ja estamos com o java instalado podemos aproveitar e instalar o plugin do java no FireFox, é rápido e rasteiro. Mais uma vez vamos para o console e vamos para o usuário root:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;sudo su&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;Vamos agora para o diretório onde o FireFox armazena os plug-ins&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;cd /usr/lib/mozilla-firefox/plugins&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Estando neste diretório iremos criar um link para o plugin que vem dentro do java&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;ln -s /opt/jdk1.5.0_0 6/jre/plugin/i386/ns7/libjavaplugin_oji.so&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;E pronto, ja podemos testar &lt;a href="http://java.sun.com/applets/other/TumblingDuke/index.html"&gt;http://java.sun.com/applets/other/TumblingDuke/index.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Bom espero que ajude ;-)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19241548-113574277100907036?l=cafebatizado.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cafebatizado.blogspot.com/feeds/113574277100907036/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19241548&amp;postID=113574277100907036&amp;isPopup=true' title='3 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19241548/posts/default/113574277100907036'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19241548/posts/default/113574277100907036'/><link rel='alternate' type='text/html' href='http://cafebatizado.blogspot.com/2005/12/ubuntu-java-netbeans-e-eclipse.html' title='Ubuntu, Java, NetBeans e Eclipse'/><author><name>Bulinha</name><uri>http://www.blogger.com/profile/02428632736934670936</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19241548.post-113521261571173116</id><published>2005-12-21T22:34:00.000-02:00</published><updated>2005-12-21T22:50:15.720-02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='java'/><category scheme='http://www.blogger.com/atom/ns#' term='_bulinha_'/><title type='text'>Oracle irá doar o ADF para o MyFaces</title><content type='html'>Durante o evento &lt;a href="http://www.javapolis.com/confluence/display/JP05/Home"&gt;JavaPolis &lt;/a&gt;que ocorreu na Belgica de 12 a 16 de dezembro deste ano (semana passada ;-) foi anunciado que a Oracla ira doar o ADF Faces para o Apache, mais precisamente ao MyFaces. O MyFaces é a primeira implementação de JavaServer Faces open source (eu sou fã de carteirinha), alem dos componentes básicos da JSF ele traz vários outros componetes. O ADF é uma implementação da JSF feita pela Oracle que tambem incluir muitos componentes. Com a adição das bilbiotecas do ADF ao MyFaces serão ao todo mais de 150 componentes (é componente que não acaba mais), muitos ja com suporte a Ajax.&lt;br /&gt;&lt;br /&gt;Veja mais em:&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.javapolis.com/confluence/display/JP05/Apache+MyFaces"&gt;http://www.javapolis.com/confluence/display/JP05/Apache+MyFaces&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19241548-113521261571173116?l=cafebatizado.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cafebatizado.blogspot.com/feeds/113521261571173116/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19241548&amp;postID=113521261571173116&amp;isPopup=true' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19241548/posts/default/113521261571173116'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19241548/posts/default/113521261571173116'/><link rel='alternate' type='text/html' href='http://cafebatizado.blogspot.com/2005/12/oracle-ir-doar-o-adf-para-o-myfaces.html' title='Oracle irá doar o ADF para o MyFaces'/><author><name>Bulinha</name><uri>http://www.blogger.com/profile/02428632736934670936</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19241548.post-113455897616985505</id><published>2005-12-14T08:46:00.000-02:00</published><updated>2005-12-14T09:18:55.136-02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='java'/><category scheme='http://www.blogger.com/atom/ns#' term='_bulinha_'/><title type='text'>Novo update do JRE disponível, e o Google se meteu em mais uma</title><content type='html'>&lt;a href="http://photos1.blogger.com/blogger/7761/1900/1600/java_google.jpg"&gt;&lt;img style="FLOAT: left; MARGIN: 0px 10px 10px 0px; CURSOR: hand" alt="" src="http://photos1.blogger.com/blogger/7761/1900/320/java_google.jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;Hoje pela manha, ao começar mais um dia de trabalho, topo com mais um dos balãozinhoz de update que aparecem na barra do XP, desta vez era da Sun, update da JRE. Como geralmente isto poderia representar updates de segurança, etc... como um bom usuário fiz o update. E vamos clicando nos nexts da vida ate que me surpreendo com esta imagem, no meio do update aparece a opção de instalar a Google Toolbar para o IE. Por esta eu não esperava, até aqui o Google meteu o nariz.&lt;br /&gt;Pelo visto a M$ arrumou um concorrente na tentativa de "dominar o mundo", como diria o Cérebro (amigo do Pink).&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19241548-113455897616985505?l=cafebatizado.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cafebatizado.blogspot.com/feeds/113455897616985505/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19241548&amp;postID=113455897616985505&amp;isPopup=true' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19241548/posts/default/113455897616985505'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19241548/posts/default/113455897616985505'/><link rel='alternate' type='text/html' href='http://cafebatizado.blogspot.com/2005/12/novo-update-do-jre-disponvel-e-o.html' title='Novo update do JRE disponível, e o Google se meteu em mais uma'/><author><name>Bulinha</name><uri>http://www.blogger.com/profile/02428632736934670936</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19241548.post-113275018190846315</id><published>2005-11-23T10:46:00.000-02:00</published><updated>2005-11-23T10:49:41.916-02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='_bulinha_'/><title type='text'>Primeira Postagem</title><content type='html'>Para começar, este blog é feito por um programador java, para programadores java. Mas principalmente, para aqueles que alem de programar tambem gostam de tomar um &lt;em&gt;café batizado&lt;/em&gt;, uma cervejinha, etc...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19241548-113275018190846315?l=cafebatizado.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cafebatizado.blogspot.com/feeds/113275018190846315/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19241548&amp;postID=113275018190846315&amp;isPopup=true' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19241548/posts/default/113275018190846315'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19241548/posts/default/113275018190846315'/><link rel='alternate' type='text/html' href='http://cafebatizado.blogspot.com/2005/11/primeira-postagem.html' title='Primeira Postagem'/><author><name>Bulinha</name><uri>http://www.blogger.com/profile/02428632736934670936</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry></feed>
