marți, mai 22, 2007

Who is the boss, JBoss?

JBoss (acum divizie a Red Hat) trebuie urmarit cu atentie pentru ca se misca foarte repede si bine. Ce am retinut din istoria firmei este numele unui personaj ciudat - francez se pare - numit Marc Fleury (de curand a parasit firma imediat ce aceasta a fost preluata de Red Hat). E cel care a avut se pare ambitia de a construi un server de aplicatii open source spargand monopolul marilor corporatii IBM, BEA, Sun, Oracle lideri in acest domeniu. In fapt JCP-ul da specificatii pe care oricine poate sa le implementeze (daca are placerea si bunavointa).

E una din firmele care a promis si a facut soft Open Source Profesionist. A nu se intelege ca neaparat in open source nu sunt implicati bani. In spatele JBoss stau surprinzator fonduri de investitii care in mod normal investesc ca sa castige (se pare ca aceleasi investitori au inceput sa investeasca si in Interface 21 - cei care sunt in spatele framework-ului Spring - normal, tot pentru a castiga bani).

Ce e de remarcat la JBoss sunt oamenii. Fondatorul framework-ului Hibernate - Gavin King - s-a alaturat lor. Ce s-a intamplat de atunci? JBoss a lanseaza un server de aplicatii conform EJB3, o implementare de JPA avand la baza Hibernate. Mai mult, Gavin King pentru a incununa totul s-a apucat de facut Seam un framework care sa lege cele 2 tehnologii la moda (EJB3 si JSF) ducand adnotarile la extrem. Il pot compara cu Rod Johnson cel care a pornit Spring-ul. Si framework-urle lor sunt aproape la acelasi nivel: Seam creaza un ecosistem peste tehnologii standard gen EJB3 si JSF. Spring realizeaza un ecosistem fara cele 2 tehnologii enuntate. Dar cu un acelasi scop: usurinta in dezvoltare.

Dupa parerea mea in acest moment astea sunt si alternativele pe care trebuie mers. Ori EJB3 si JSF legate cu Seam ori Spring. Amandoua ofera acelasi unvers light de dezvoltare. JBoss, spre deosebire de Spring pare a costrui in jurul specificatiilor de la Sun de JEE 5.0. Spring construieste de la 0 pe JSE. Poate pentru ca JBoss au deja un server de aplicatii pe care il promoveaza (dar au si o versiune de EJB3 embedabila in Tomcat spre exemplu). Scopul declarat al Spring-ului a fost tocmai acela de a se feri de serverul de aplicatii (mai bine spus de containerul de EJB). Oricum e clar ca Spring-ul a fost cel care a produs tranformarea in iarna grea din EJB.

JBoss tinde sa fie o platforma de dezvoltare. Are in primul rand serverul de aplicatii, un container usor in genul lui Spring numit JBoss Microcontainer, are implementare de JMS (JBoss Messaging inlocuind neclusterabilul JBossMQ), un cache numit JBoss Cache, JBoss Rules - motor de reguli de bussines, jBPM - o implementare de BPM, multicasting cu JGroups, un container de portlets - JBoss Portal, etc. De curand a pus mana (nu se spune pre clar cum) pe produsele Exadel: un set de componente JSF numit RichFaces, Ajax4JSF - un framework care aduce Ajax in JSF fara Java Script, si IDE-ul de la Exadel (o implementare in Eclipse cu suport pentru JSF - nteresant suportul pentru facelets) care o sa fie lansat in curand (vara 2007) sub numele Red Hat Developer Studio si va ingloba toate toate unelte Eclipse ale JBoss-ului. Kito Mann explica mai multe.

Deci intr-un fel sau altul JBoss (padon... Red Hat) are in maini tot felul de bunatati pe care sunt sigur ca le va exploata cu succes. De ce i-au luat Red Hat? Pentru ca au nevoie de middleware pe Linux. Linux si Java par a deveni pieteni buni (se stie ca pana acum din cauza licentelor de la Sun, Linux-ul nu venea cu compilatorul si JRE-ul de la Sun). Lucrurile se schimba, Sun scotandu-si uneltele sub licente cu adevarat Open Source. Eu deja mi-am instalat UBUNTU (deocamdata in VMWare).