-
Integração Continua - Builds rápidos com Grids e paralelismo
Como já comentamos em um post anterior, aqui na Caelum fazemos a Integração Contínua das nossas aplicações, com a ajuda de algumas ferramentas, entre elas o Selenium, para os testes de integração das aplicações. Um dos princípios de Integração Contínua é que, no final do processo de build, tenhamos um produto pronto pra ir pra produção. Para garantir que a aplicação está nesta situação, precisamos criar diversos tipos de testes automatizados, como os unitários e os de integração. Testes de integração são aqueles que testam funcionalidades completas, ou seja, testam a integração de vários módulos do seu sistema para garantir que a funcionalidade desejada está completa. Em aplicações web, esse tipo de teste costuma envolver abertura de browsers e simulação da interação do usuário com o sistema. O problema desses testes fazerem parte do build da aplicação, é que eles tendem a demorar demais à medida que a aplicação cresce, ferindo outro princípio da Integração Contínua: seu build deve ser o mais rápido possível. Não adianta nada ter um servidor de Integração Contínua, se seu build demora demais, por exemplo mais de 30 minutos. Imagine que você só descobre que a última mudança que enviou para o controle de versão (commit) quebrou alguns pontos de seu programa somente meia hora depois de iniciar uma nova tarefa. Sua mente, como desenvolvedor, já está muito longe do que executou até meia hora atrás e focada em um problema totalmente distinto. Dez minutos é um bom limitante superior pro tempo do seu build, fazendo com que o feedback seja rápido, assim um build quebrado tende a ser corrigido imediatamente, e a aplicação a estar sempre no estado pronto pra deploy o tempo todo. Mas como fazer um build de menos de dez minutos, quando só os meus testes de integração demoram mais de meia hora? Uma alternativa é tirá-los do processo de build, e rodá-lo só no fim do dia, ou a cada hora. O problema é que perdemos o feedback rápido dos testes de integração, caindo em uma situação ainda pior que a citada acima, com o feedback de 30 minutos. Outra alternativa, bem mais interessante, é rodar seus testes de integração em paralelo. Aqui na Caelum usamos algumas ferramentas para conseguir rodar os testes dessa maneira. A primeira delas é o Parallel Junit, capaz de rodar em paralelo um conjunto qualquer de testes compatíveis com JUnit. Para aqueles que usam o TestNG, existe um suporte natural à essa funcionalidade, que permite somente passar parâmetros na sua tag do ant ou maven. De qualquer maneira, não adianta rodar somente uma instância do Selenium e tentar rodar os testes em paralelo. Então usamos o Selenium Grid, que permite subir mais de uma instância do Selenium Server na mesma máquina, ou melhor ainda, em várias máquinas, deixando isso transparente para os testes que usam o Selenium. De uma maneira ainda mais emocionate, podemos levantar diversos browsers distintos em máquinas com sistemas operacionais diferentes, possibilitando rodar os testes em paralelo em ambientes como Windows e Linux. No Selenium Grid temos duas partes importantes: O Selenium Hub, que vai responder aos comandos do selenium emitidos pela sua aplicação, e delegá-los para algum dos Remote Controls, que executarão os mesmos no selenium de verdade. Em outras palavras, o Hub funciona como um proxy para cada comando que o teste deseja executar no browser, delegando essa requisição para algum Remote Control ocioso. Um grande problema do Selenium Grid é a sua usabilidade. Para configurá-lo, precisamos subir o Selenium Hub em uma máquina, depois ir em cada máquina que rodará os Remote Controls, e subir um por um na mão, usando uma task pronta do Ant. Chato? Mas ainda não é o maior problema… Se a máquina que tem o Hub cair, precisamos ir em todas as máquinas que tem os Remotes, e registrar tudo novamente. Se uma máquina que tem os Remotes cair sem executar um shutdown limpo, não desregistrando seus remotes, precisamos reiniciar tudo de novo, pois se um teste tentar usar o Remote “fantasma”, vai dar erro. Por fim, se um teste abrir um Selenium, e esquecer de fechar, o Remote Control associado a esse Selenium ficará travado para sempre, e então você terá que reiniciar todos os programas novamente. Por causa disso, eu e o Guilherme Silveira resolvemos hackear o Selenium Grid e resolver esses problemas. Criamos então um fork do projeto original no github, e um novo projeto, o Selenium Box Agent. A idéia desse novo projeto é a seguinte: Em cada máquina onde serão rodados os Remote Controls, deixamos uma instância do Box Agent rodando. Na máquina onde rodará o Hub, rodamos o projeto do Grid modificado. E então é só ir na página de console do Hub (geralmente em http://localhost:4444/console, substituindo localhost pelo ip do seu servidor) e registrar os Box Agents, pedindo para iniciar os Remotes na mesma página, sem necessidade de linha de comando, tasks do ant, nem qualquer outro trabalho manual e repetitivo. Apenas formulários e links na página do console. Página Principal do Hub modificado Box adicionado Remote Control Adicionado Se a máquina do Hub cair, quando ela voltar levantará automaticamente os Remotes de todos os Boxes registrados. Se uma máquina de Box cair, o Hub desregistrará automáticamente todos os seus Remote Controls, e quando ela voltar o Hub registra todos eles automaticamente também. Se um teste esquecer de devolver um Selenium, você pode desregistrar o RemoteControl associado, e pedir pra registrá-lo novamente, direto da página de console. Um dos nossos builds, que demorava cerca de 50 minutos quando os testes eram rodados serialmente, demora por volta de 8 minutos quando rodado em paralelo, usando 7 threads simultâneas de testes. Se a aplicação crescer mais, é só registrar mais Remote Controls e aumentar o número de Testes simultâneos. E pronto, conseguimos o build de dez minutos, sem sacrificar os testes de integração. O resultado? Uma equipe mais propensa a corrigir seus próprios erros a medida que eles são cometidos, sem ter que esperar o feedback de um cliente, possivelmente furioso, sobre algo que foi quebrado na última entrega. Aqui na Caelum tentamos sempre encontrar alguns projetos com os quais podemos contribuir, seja com comentários, documentação ou código e ter sido capazes de criar uma extensão para o Selenium Hub é mais uma maneira que encontramos para compartilhar algo criado por nós com aqueles que procuram e precisam de uma solução similar. 09/02/2009 22:34
-
Tutorial para integrar Cobertura en un entorno TDD
Hola,Hace unos días publicaba un tutorial en el que explicaba cómo integrar NetBeans, Subversion y Hudson. Ahora escribo una segunda parte en la que explico cómo integrar la herramienta de cobertura de código por tests unitarios Cobertura.Explico cómo inyectar los tasks de Cobertura en los scripts de Ant del NetBeans para poder utilizarlo tanto desde el propio IDE como después desde Hudson. También comento la configuración requerida para que Hudson saque los diferentes informes.Hackear los scripts del NetBeans no es demasiado complicado pero tiene su gracia, así que espero que el post ayude a acelerar el proceso.Espero que lo encontréis útil. Comentarios: 3 Fecha último comentario: 10/02/2009 16:14Noticia publicada en www.javahispano.org. Accede a la página web y participa 09/02/2009 06:34
-
Patrones para la automatización de despliegues
El despligue de aplicaciones Java suele ser un proceso complejo y propenso a errores, en el cual deberían aplicarse técnicas y principios de ingeniería de software, como una parte más del ciclo de desarrollo. En la nota Automatización de despliegues (traducción del original) repasamos ocho patrones relacionados al despliegue de aplicaciones, donde con ejemplos veremos como resolver problemas comunes y crear una solución completamente automatizada.En donde trabajo se está revisando el proceso de despliegue, y en particular el patrón de Configuración externalizada y Configuración por tokens son los que me resultan de aplicación más inmediata. ¿Cómo despliegan las aplicaciones en los distintos ambientes? Comentarios: 8 Fecha último comentario: 26/01/2009 16:11Noticia publicada en www.javahispano.org. Accede a la página web y participa
-
Apache Camel es ahora un top level project de la fundación Apache
Entre tantos proyectos que gestiona la fundación Apache, desde hace un tiempo ha venido destacando Apache Camel. Este producto es una implementación de los patrones para integración empresarial descritos en el libro Enterprise Integration Patterns de Gregor Hohpe y Bobby Woolf hecha en Spring.Estos patrones de diseño permiten integrar sistemas heterogéneos usando sistemas de Mensajería. Actualmente Apache Camel soporta un gran número de transportes de mensajería, como JMS, ActiveMQ, CXF Bus, JBI e incluso HTTP simple. Hasta hace poco, el proyecto estaba en la incubadora de Apache, lo que no le detuvo para llegar a su release 1.5 y a partir del 17 de diciembre pasado, el comité de la fundación a decidido promoverlo a top level project, por lo que su url es ahora http://camel.apache.org.Enhorabuena a los commiters de Camel que han venido haciendo un gran trabajo y no le quitéis los ojos al proyecto que seguramente dentro de poco os tocará usarlo en vuestros desarrollos JEE. Comentarios: 1 Fecha último comentario: 22/01/2009 14:39Noticia publicada en www.javahispano.org. Accede a la página web y participa
-
JavaTV: La nueva plataforma Java
Sun ha publicado en java.net JavaTV SDK que como se puede inferir de su nombre, es la implementación de Java que se ejecuta en diferentes dispositivos relacionados con la TV: desde top boxes para televisión por cable y satelital hasta lectores de discos.Además han publicado una serie de tutoriales y videotutoriales. Uno de ellos muestra las capacidades de JavaTV para crear una aplicación que incluye un coverflow con el listado de películas disponibles y hasta una versión de PacMan.Por lo que veo, el SDK y emulador solo funciona en Windows (necesita DirectX) y es una versión de prueba por 60 días.Comentarios: 6 Fecha último comentario: 22/01/2009 18:30Noticia publicada en www.javahispano.org. Accede a la página web y participa
-
Charlas gratuitas en la 4a reunión de SpringHispano y JavaMexico
Este próximo sábado 24 de enero a partir de las 10:30 a.m., se llevará a cabo la 4a reunión de SpringHispano y JavaMexico, en la ciudad de México. En esta ocasión, habrá dos charlas paralelas:1. Sistemas de control de versiones distribuidos: Bazaar por Julio Carlos Sánchez Ortega (twitter: @thegeekinside) y blog. Git por Sergio Acosta (twitter: @scasware) y blog.2. Struts 2, impartida por Marco Antonio Muñiz Ochoa (linkedin).Como siempre -cortesía de SynergyJ - las charlas son gratuitas pero requieren registro previo. Espero que la gente que viva cerca de la ciudad de México pueda asistir, las pasadas reuniones han sido muy buenas, nos vemos por allá.Comentarios: 2 Fecha último comentario: 22/01/2009 14:25Noticia publicada en www.javahispano.org. Accede a la página web y participa
-
Pruebas de rendimiento con diferentes implementaciones sobre la JVM
Normal 0 21 MicrosoftInternetExplorer4 /* Style Definitions */ table.MsoNormalTable {mso-style-name:Tabla normal; mso-tstyle-rowband-size:0; mso-tstyle-colband-size:0; mso-style-noshow:yes; mso-style-parent:; mso-padding-alt:0cm 5.4pt 0cm 5.4pt; mso-para-margin:0cm; mso-para-margin-bottom:.0001pt; mso-pagination:widow-orphan; font-size:10.0pt; font-family:Times New Roman;} Como ya describí en un una noticia anterior, ?La plataforma Java y otros lenguajes?, he estado realizando unas pruebas, implementando la misma lógica de negocio en diferentes lenguajes que corren sobre la JVM y también usando diferentes formas de hacerlo en Java. La segunda parte de las pruebas ha sido comparar el rendimiento las diferentes implementaciones, para ver si había algún aspecto que llamara la atención. Para aquellos interesados, los resultados los podéis en esta entrada: Separating Concerns: Business Logic Implementations performance. Y como últimamente ha habido un par de noticias comparando rendimientos y parecen interesar, pues he aquí la noticia :). Como resumen, decir que: .- Pnuts parece no estar maduro del todo, ya que el rendimiento era bastante malo comparado con el resto, y luego se le detectaron problemas de rendimiento por que lo no aparece en los tests. .- PHP/Quercus no lo hacia nada mal en los tests, pero tuvo que ser descartado por un ?memory leak? en las versiones recientes cuando se le llama a través del Scripting API y un fallo de empaquetado en la última versión. .- Para algo simple como una consulta básica, las diferencias entre JDBC y librerías más ?complejas? (Ibatis, Hibernate, JPA) son mínimas (salvando el caso de la primera petición). Por supuesto que para otros casos las diferencias existirán y serán enormes, pero simplemente quería constatar si por el mero hecho de usar una de estas librerías ya estábamos haciéndolo todo más lento. Y constatado queda que no es cierto. .- Groovy usado ?correctamente?, lo cual quiere decir no inicializar cada vez un ScriptingEngine nuevo, es prácticamente igual de eficiente que precompilándolo, y prácticamente igual de eficiente que Java. De nuevo, seguro que para muchas otras cosas Java es mucho más eficiente, pero para consultar una BDD y ?escupir? XML, parece que los dos lo hacen igual de bien. .- A Scala y Jython parecen gustarles los conjuntos de datos grandes y las peticiones simultáneas, donde aparentemente le sacan más partido a la forma funcional/recursiva de trabajar. .- Al contrario, a JavaScript no le gustan los conjuntos de datos grandes ni las peticiones simultáneas.Y concatenando cadenas aún menos que usando el API E4X. .- JRuby ha sido en muchos casos el más lento, exceptuando a JavaScript y una vez descartado Pnuts, pero tampoco me quedo muy convencido puesto que no soy ningún experto en este lenguaje y podría ser cuestión mía. De todas formas la función es muy sencilla y nadie sugirió ninguna versión más ?Rubish?, así como en Jython y Scala sí que los expertos en esos lenguajes me mandaron sugerencias, así que, en principio, ahí queda. El código fuente de todas las implementaciones, la aplicación de prueba y los scripts del JMeter para ejecutar los tests están todos disponibles, por si alguien quiere repetirlos. O por si alguien quiere cambiar el código para hacer otro tipo de pruebas. De todas formas y como en cualquier micro-prueba, hay que tomarse los resultados con algo de sano escepticismo y hay que saber qué es lo que se está mirando. Extrapolar alegremente los resultados es equivocado. Comentarios: 8 Fecha último comentario: 21/01/2009 19:14Noticia publicada en www.javahispano.org. Accede a la página web y participa
-
SpringSource: licencias, open source, y el poderoso caballero (opinión publicada originalmente en sólo programadores)
SpringSource: licencias, open source, y el poderoso caballero (opinión publicada originalmente en sólo programadores) Daniel Fernández A finales de septiembre, a muchos desarrolladores Java nos temblaron las piernas cuando leímos que SpringSource, empresa del creador de Spring Framework Rod Johnson, pretendía modificar la política de mantenimiento de Spring para que los binarios de sus distintas correcciones de bugs sólo estuviesen accesibles al público durante los tres meses siguientes a una major release, reservando el resto de correcciones para los suscritoptores de pago hasta la siguiente major release. Y, para mayor inri, eliminando los tags del repositorio de fuentes. Una jugarreta. A unas alturas en las que Spring se ha instalado como estándar de facto en el sector, una distribución más restrictiva resultaba sencillamente fatal, tirando abajo muchas arquitecturas y mandando a la papelera muchas horas de formación de muchos profesionales. Pero hubo reacción. La comunidad, ese ente abstracto compuesto por tantos invisibles usuarios de open source, se puso en marcha y ejerció sobre SpringSource una presión descomunal, criticando el movimiento como traicionero y orientado al dinero fácil por encima de los intereses de todos aquellos usuarios de base que habían elevado Spring a donde estaba. Y surtió efecto. A la semana, SpringSource rectificaba y modificaba la política de manera que se siguiesen distribuyendo los binarios de bugfixes de las últimas versiones, sin límite de tiempo. La comunidad había triunfado, SpringSource había salvado Spring... y el open source había demostrado quién manda en él.Comentarios: 10 Fecha último comentario: 23/01/2009 08:55Noticia publicada en www.javahispano.org. Accede a la página web y participa
-
NetBeans ganador en 5 de las 12 categorías de Developer.com
Pues tal cual, en los premios de Developer.com y como dicen ellos mismos: Este año un producto, NetBeans, ha dominado las categorías ganando cinco de doce (This year one product, NetBeans, dominated the categories by winning five out of twelve. Las cinco categorías han sido: Development Tool, Development Utilities (el Profiler), Wireless/Mobile, Java Tool y OpenSource.Además, MySQL Workbench ha ganado en la categoría de DataBase Tool.Enhorabuena a NetBeans, a todos los que contribuyen con este proyecto (me incluyo) y a todos los que lo usamos (me vuelvo a incluir).También enhorabuena a MySQL por la parte que le toca.Un saludo. Comentarios: 9 Fecha último comentario: 22/01/2009 02:09Noticia publicada en www.javahispano.org. Accede a la página web y participa
-
SunLabs University Day en Madrid el 29 de enero
El próximo 29 de enero se va a celebrar en la Universidad Complutense de Madrid un "SunLabs University Day". En este evento tres ingenieros de SunLabs (el centro de investigación de nuevas tecnologías de Sun) realizarán varias charlas presentando varios de los productos que han nacido en SunLabs. Podéis encontrar más información aquí.Noticia publicada en www.javahispano.org. Accede a la página web y participa
-
Charla Gratuita: Pruebas web con Selenium HQ
Continuamos con nuestro proyecto de realizar charlas para empleados de la empresa y cualquiera que desee asistir de forma gratuita con un especialista en la materia.El planteamiento va a ser igual que la primera que hicimos sobre la gestión de repositorios Maven. Va a ser una charla interna para los empleados donde os invitamos a asistir ya que vuestra atención e interés nos motiva a continuar y a intentar hacerlo cada vez mejor. La fecha será el Jueves 19 de este mes de Febrero La hora, las 18:30. La duración estimada: 1,5 - 2 horas. El lugar: Centro de Negocios Best Point. Av de Castilla 1, sala de reuniones. Precio: Gratuito. Confirmación: gema.perez@autentia.com Límite de asistentes externos: Los 20 primeros que confirmen. Índice del curso: Pruebas sobre aplicaciones Web con Selenium HQ Selenium IDE. Selenium CORE. Firebug. Xpath. Maven, Selenium IDE, Cargo, JBoss/Tomcat. Iniciación a Selenium RC. Iniciación a Selenium GRID. Ronda de preguntas. Recordad que ya tenemos tutoriales sobre el tema: AQUÍ de Víctor (que será el ponente de la charla). Trataremos de usar la gestión de eventos para la organización. http://www.xing.com/group-11952.036319. Bueno, esperemos que os animéis a participar. Por nuestra parte le pondremos mucho interés y cariño y procuraremos generar tangibles que compartir con vosotros terminada la charla.Roberto Canales. www.autentia.com / www.adictosaltrabajo.comComentarios: 3 Fecha último comentario: 21/01/2009 09:29Noticia publicada en www.javahispano.org. Accede a la página web y participa
-
Curso Online sobre JavaFX
Parece que Sang Shin está a punto de comenzar otro de sus cursos Online, en este caso sobre JavaFX en su portal javapassion.com.Estos son los contenidos y los días que comenzarán: 1. JavaFX Technology Overview - Jan. 30th, 2009 2. JavaFX Script I - Language Basics - Feb. 7th, 2009 3. JavaFX Script II - Data binding and Triggers - Feb. 14th, 2009 4. Creating GUIs I - March 1st, 2009 5. Creating GUIs II - binding, layout, event handling - March 8th, 2009 6. Animation - March 15th, 2009 7. JavaFX and NetBeans - March 29th, 2009 8. JavaFX Media - April 6th, 2009 9. JavaFX Deployment (and Java SE 6 Update 10) - April 13th , 2009 10. Project Nile (Designer Tool) - April 27th, 2009 11. Mixing JavaFX and Java - May 13th, 2009 12. Accessing Web Services, Mashup, JavaScript integration - May 20th, 2009 13. JavaFX Mobile - May 27th, 2009 14. Example code analysis: <to be determined later> - June 5th, 2009 15. Example code analysis: <to be determined later> - June 12th, 2009 end of the courseEn cuanto a las prácticas entregables y el certificado final parece que no hay ningún cambio respecto a anteriores cursos.http://www.javapassion.com/javafx/ Comentarios: 10 Fecha último comentario: 22/01/2009 18:52Noticia publicada en www.javahispano.org. Accede a la página web y participa
-
Secomp 08 e CCT de novembro
Falando em eventos, na próxima quinta-feira (20/11) irei ministrar mais uma palestra (felizmente) Apresentando o CEJUG e o poder do Java. A palestra ocorrerá na SECOMP, evento que ocorre na Faculdade Lourenço Filho e que já está na sua oitava edição. Irá ocorrer também o CCT deste mês, com a presença do meu velho amigo Jeveaux, do PortalJava. Palestras do CCT: Testes de Software - Jeveaux Desenvolvendo aplicações web no eclipse utilizando Tapestry 5 - Marcus Veloso
-
Eventos em 2008: fizemos bem o feijão com arroz
Este ano foi marcante no quesito eventos tecnológicos no Brasil. Desde linguagens de programação à metodologias de desenvolvimento de software, esses eventos estiveram presentes na maioria dos estados brasileiros. Em setembro ocorreu o mês de Java no Brasil, onde evangelistas Java da Sun Microsystems percorreram mais de 10 cidades participando de eventos em JUGs locais. Este ano participei do JustJava 08 (também como palestrante) e do Jazoon. Entretanto, eu gostaria de ter participado de, no mínimo, mais três eventos nacionais. Participei também de dois workshops: Uma visão prática da arquitetura java em 2008 (Paulo Silveira) e Workshop SOA de Tecnologias Opensource JBoss (Edgar Silva). Abaixo, selecionei os principais eventos (nacionais e locais) que ocorreram em 2008. Eventos nacionais Falando em Java 08 Mês de Java Sun Tech Days 08 TDC 08 Railssummit 08 Just Java 08 Falando em Agile 08 fisl9.0 Eventos locais (CEJUG) A comunidade Java do Ceará, no meu ponto de vista, está muito bem servida no quesito eventos e disseminação de informação. Este ano pisaram na terra da luz três palestrantes internacionais e cinco nacionais. Em fevereiro aconteceu o evento Café com Tapioca de Coco. Em julho, cinco participantes do Jazoon apresentaram o evento para a comunidade. Em agosto tivemos dois eventos: Café com Tapioca com o melhor do WebDays 2008 e Conversando sobre Java. Em setembro tivemos o Aniversário do CEJUG de 6 anos. Este ano o CEJUG expandiu o território e foi até Juazeiro do Norte, Sobral e Iguatu. Ainda teremos mais dois eventos* e já atingimos a marca de 1400 participantes em eventos do CEJUG até este mês. Tivemos 27 palestrantes abordando os mais variados temas sobre Java e afins: NetBeans, Spring, SunSpot, Frameworks AJAX, linguagens de scripting, EJB 3.0, JavaFX, SOA, SVN, open social, Domain Driven Design, JavaME, CruiseControl, TDD, open source, Glassfish e REST. Palestrantes Internacionais: Gregg Sporar Simon Ritter Kohsuke Kawaguchi Reggie Hutcherson Michael Yuan Tim Jacobson Edward Pilatowicz Tim Boudreau Nacionais: Bruno Souza Maurício Leal Fernando Lozano Daniel de Oliveira Paulo Silveira Eduardo Guerra Bruno Pereira Edgar Silva Paulo César Jeveaux Li em diversos blogs o sucesso do railssummit que ocorreu a poucos dias e aproveito o embalo para anunciar que acontecerá na próxima semana o evento Ceará on Rails, com participação de Fábio Akita. Finalizo esse post parabenizando todos os heróis que fizeram esses eventos acontecerem. * Novembro e dezembro, respectivamente: Testes de Software e Desenvolvendo aplicações web no eclipse utilizando Tapestry 5, com Paulo César Jeveaux (palestrante nacional) e Marcus Veloso Mini-cursos de JavaME e Android, por Vando Batista
-
SOAndo no próximo sábado
No próximo sábado irei participar do Workshop SOA de Tecnologias OpenSource da JBoss na FA7. O workshop será ministrado pelo Edgar Silva. Já assisti duas palestras ministradas pelo Edgar: uma sobre o Greenbox no Sun Tech Days de 2006 pelo CEJUG e outra de JavaServer Faces no III Natal Java Day, em novembro do ano passado. O conteúdo do workshop está focado em ESB e acredito que será bastante proveitoso, sem falar na confraternização após o workshop.
-
Comentários do I Café com Tapioca em Sobral
Overview No último sábado participei do I Café com Tapioca em Sobral, um evento realizado pelo CEJUG. Na oportunidade, tive o prazer de viajar e palestrar com Paulo Sobreira, Silveira Neto e Tarso Bessa. Falamos sobre o CEJUG, JavaServer Faces, NetBeans, JPA, Hibernate, iReport e certificações Java. O evento contou com a presença de 95 participantes, de Sobral e da Parnaíba. Foi um público muito bom, ultrapassando até CCTs realizados em Fortaleza! Gostaria de agradecer o apoio e hospitalidade do Yuri, Patrick e Adriano. O Silveira fez um excelente post sobre o evento, vale a pena conferir. Palestra Apresentando o CEJUG e o poder do Java Mini-curso JPA com Hibernate Fotos Mais fotos em: http://picasaweb.google.com.br/cafecomtapioca/ICafComTapiocaEmSobral
-
Aniversário do CEJUG
Este ano o CEJUG completa 6 anos e para comemorar trouxe a Fortaleza, com o apoio da Sun Microsystems e do SouJava, Kohsuke Kawaguchi e Maurício Leal. Para completar essa grande festa, o CEJUG trouxe Bruno Pereira, da Concrete Solutions e Globo.com! Venha participar dessa grande festa, rever os amigos, conhecer os evangelistas da Sun, curtir um som com a banda Alarme Falso e concorrer a diversos brindes (entre eles um voucher)! Entre os sorteios, haverá um voucher, livros, assinaturas de revistas e camisas do CEJUG! Dia: 16/09/08 Local: FA7 Mais informações: Acesse a página do evento.
-
Mapa com links dos JUGs do Mês de Java
-
Apresentação do Café com Tapioca de julho disponível
A apresentação do Café com Tapioca de julho está disponível. O evento aconteceu na barraca de praia Cocobeach, praia do futuro, Fortaleza - CE. O objetivo da palestra era mostrar para os membros do CEJUG a experiência vivida no Jazoon 08, que é um evento internacional sobre Java. Confira a página do evento no site do CEJUG. Apresentação Fotos Mais fotos em: http://picasaweb.google.com/cafecomtapioca/CafComTapiocaComJazoon08
-
Café com Tapioca de julho: muito Jazoon com caranguejo!
O Café com Tapioca deste mês será um luau na praia, com muito caranguejo, cerveja e Jazoon! Os integrantes da Caravana CEJUG rumo ao Jazoon 08 irão falar das principais tecnologias transmitidas no evento, bem como contar as suas experiências de participar de um evento internacional, mostrando fotos e vídeos. Assuntos como REST, JavaEE, JavaME, testes e rich applications serão abordados no evento. O evento acontecerá na barraca de praia CocoBeach, na Praia do Futuro, no próximo dia 17 de julho (quinta-feira), às 18:30h. Esse evento poderá ser o primeiro evento tecnológico sobre Java do Brasil a ser realizado na praia. Haverá dois engradados de cerveja gratuitos para os participantes! Se você estiver em Fortaleza nessa data, não deixe de comparecer ao evento. Veja em anexo o folder de divulgação do evento.
Total: 976
|
Próximo >>
Registros por página:20
Registros por página:20
- Evento Flex Mania 2009
- applet + imagem + abrir outra pagina html
- Duvida Strategy
- Acesso negado para gravar na pasta de aplicação web com Tomca...
- Conectividade Hibernate - phpMyAdmin no Servidor remoto
- SEAM - Redirecionar Página ao perder Conexão com Banco
- Rolagem do JScrollPane com a tecla "Tab"
- [RESOLVIDO] Jasper erro java.io.FileNotFoundException ?
- Ordenação de Matriz
- selectBooleanCheckbox converter Urgente
- Conversão de Text field para Integer ou double ou float
- arquivo .txt
- Problemas imagem applet
- Adicionar JButtons ao vetor
- Between "Inverso" usando Hibernate Criteria

Java Blogs
