java blog jAbLoK

... řekněte Javě Ja!

/** * @author Pavel Kolesnikov * @date 16.11.2003 v 16:57 */

Pár knížek

Na mém oblíbeném TheServerSide jsou ke stažení ukázkové kapitoly z následujících chystaných knížek:

Vypadají — aspoň pro mě — celkem užitečně.

/** * @author Pavel Kolesnikov * @date 16.11.2003 v 15:53 */

J2EE 1.4 — schváleno

11.listopadu nám výkonný výbor pro J2SE/J2EE schválil specifikaci J2EE 1.4. Zahrnuje — aspoň z mě nejběžnějších technologií — např. EJB 2.1, Servlet 2.4, JSP 2.0.

Což v konkrétních případech znamená:

  • podpora pro elegantní napojení webové služby na stateless session beans (či naopak zpřístupnění SLSB pomocí WS)
  • vylepšení, která zaznamenal dotazovací jazyk EJB-QL — pár (nejen) agregačních funkcí a hlavně ORDER BY
  • pár užitečných metod třídy ServletRequest (byť nad takovouto "novinkou" se každý, kdo kdy zplodil nějaké CGIčko, musí ušklíbnout)
  • podpora pro znakové sady (paradoxně až v době, kdy takovouto funkcionalitu díky Unicode potřebuje málokdo)
  • možnost specifikovat volaní filtrů podle toho, jde-li o přímý či přeposlaný (forwarded) požadavek, vložení (include) nebo chybové přesměrování
  • přibyly listenery na úrovni požadavku (ServletRequest)
  • jako "welcome page" může být definován i čistokrevný servlet, nejen stránka — drobnost, která potěší :)
  • integrace EL z JSTL do JSP — tj. napíšete někam ${brekeke.sumafuk} a zobrazí se vám výstup metody getSumafuk() objektu uloženého v nejbližším "scope" pod jménem "brekeke"
  • podpora JSTL 1.1, které přidává do EL spoustu nových funkcí, na které byste dřív psali ohyzdné scriptlety či používali spoustu speciálních taglibů
  • naopak součástí J2EE 1.4 nejsou a nemohou být Java Server Faces, a to především z pochopitelného důvodu — nejsou hotovy

Sun Microsystems vzápětí oznámil, že nabízí svůj Java System Application Server (dříve Sun ONE application server a tuším, že ne tak dávno ještě nějak jinak) jako referenční implementaci J2EE 1.4, a to v základní verzi zdarma.

Mezi další aplikační servery implementující J2EE 1.4 bude jistě patřit i JBoss 4.0, ten je ale zatím ve fázi "Developer Release 2", a ostré verze se těŽko dočkáme dříve než začátkem roku 2004.

A na závěr ještě pár odkazů na podrobnější spisky na toto téma (vše v angličtině):

/** * @author Pavel Kolesnikov * @date 13.11.2003 v 20:05 */

JBoss vs. ASF — co na to JBoss Group?

Předevčírem jsem nakousl rozepři mezi JBoss Group a ASF, zejména na základě informací z vývojářské konference projektu Geronimo o dopise zaslaném JBossími právníky na adresu vedení ASF (nevíte-li, oč jde, začněte oním článkem).

Celá záležitost byla pochopitelně diskutována všude možně, a mj. i na prestižním webu www.TheServerSide.com

Právě tam se člověk mohl setkat s názory lidí z JG, nejčastěji diskutovali Bill Burke a Marc Fleury, za ASF oponoval zejména VP Jim Jagielski a tu a tam někteří z "přeběhnuvších" vývojářů.

Základní teze, které je třeba vypíchnout, aby v člověku nepřevážil dojem, že se jedná o další otravné páně Fleuryho tajtrdlíkování, jsou tyto:

  • JG se nesnaží veřejně útočit na Apache Software Foundation. Šlo pouze o soukromé upozornění k rukám prezidenta ASF — právě ASF tuto záležitost vypustila do světa.
  • JG nikomu nevyhrožuje soudními spory. Nechce se soudit. Pouze upozornilo vedení ASF na chybu.
  • Záležitost nelze smést ze světa tim, že vývojáři mají právo darovat svůj původně JBossí kód projektu Geronimo. V mnoha případech lze totiž dohledat, že kód "přeběhlíků" je založen na kódu starším, typicky Marca Fleuryho či Scotta Starka (ovšem jediný takový příklad dementuje Dain Sunstrom s tím, že pointou byla zcela nová implementace, a jestli zůstalo něco převzatého, jedná se o nepodstatné drobty)

Celá záležitost na mě působí následujícím dojmem

  • V ASF má velké slovo Sun, který se již párkrát s Fleurym veřejně poškorpil (základem rozepří byla certifikace JBosse coby J2EE aplikačního serveru)
  • ASF chtělo mít pod křídly J2EE server, vzhledem k předchozímu bylo nerealistické chtít pohltit JBosse
  • Proto se ASF rozhodlo k řešení vzít design JBosse a reimplementovat jej po svém
  • Nakolik je toto řešení legální, netuším — LGPL licencí jsou označeny jednotlivé kusy kódu, ne však design. IMHO to ale neznamená, že design je public domain ;)
  • Rozhodně plně chápu, že tento přístup se v JG nesetkal s příznivou odezvou

Rozhodně bude zajímavé tuto causu sledovat jako příspěvek k rozšíření právního vědomí v místy poněkud anarchistickém světě open-source

Související drobnosti

Během včerejška ze seznamu vývojářu projektu Elba na Sourceforge zmizeli téměř všichni vývojáři — zjevně nechtěli být dále spojeni s touto blamáží.

Vic Cekvenich, věčný to rejpal vývojářské konference jiného ASF projektu, se do zmíněné diskuse rovněž aktivně zapojil a navíc se v obecné konferenci Jakarty pustil do prezidenta ASF, přirovnal jeho povědomí o autorských právech k číně a vyzval jej k reziganci. Vzápětí byl odkaz na jeho firmu odstraněn z webu Struts. No, ale v tomto případě se ASF až tak nedivím.

/** * @author Pavel Kolesnikov * @date 11.11.2003 v 17:59 */

JBoss vs. ASF — dopis od JBossích právníků

Začátkem srpna rozvířil okurkovou sezónu rozbroj mezi JBossem a ASF, důkladně propíraný v konferencích jboss-user a jboss-development.

Geronimo a velká čistka

Ve zkratce — několik významných vývojářů JBosse se přihlásilo k projektu Geronimo, což má být J2EE aplikační server plánovaný ASF. Tito lidé byli zároveň uvedeni pod dále nerozvíjeným projektem Elba, což zjevně zkopírovaný JBoss.

Marc Fleury, zakladatel JBosse a šéf JBoss Group, na to reagoval razantními prohlášeními v JBossí konferenci a ještě razatnějším počinem — vyhozením inkriminovaných vývojářů, resp. jejich zbavením práva zápisu do CVS. Mimochodem mezi vyhozenými figurovala jména jako Hiram Chirimo (JMS), Dain Sunstrom (CMP), Greg Wilkins (Jetty) a další členové JBossí elity.

Následovala bouřlivá debata a zdánlivé vyšumění. Kromě velkého vyhazovu mi v paměti utkvělo všudypřítomné podezření, že ASF hodlá JBosse brutálně vykrást, což by už bylo vůči JBoss Group nad rámec LGPL, pod níž je JBoss licencován.

Dopis od právníků

Včera (10.listopadu) zaslal viceprezident ASF Jim Jagielski do vývojářské konference již zmíněného projektu Geronimo zajímavý mail. Píše, že ASF obdržela od právníků JBoss Group dopis (kopie přiložena v PDF), v němž jsou zmíněna následující obvinění:

  • kód Geronima je nadobyčejne podoben kódu JBosse
  • způsobem, kterým ASF bere kód z JBosse, dochází k porušování podmínek LGPL (ač právníci hovoří jasně, pan Jagielski z nejasných důvodů píše "(L)GPL")

Dále pak právníci ujišťují, že chápou, že se takovýto kód mohl do Geronima dostat nedopatřením, jednoznačně však žádají nápravu a prevenci obdobných neplech v budoucnu.

ASF však zjevně sleduje fakt, že JBoss je výsledek práce mnoha nezávislých vývojářů na celém světě, nikoli autorským dílem plně vlastněným JBoss Group.

Jagielski proto ve svém mailu vývojářům dodává:

"Tímto vyzývám všechny vývojáře projektu Geronimo, aby se ujistili, že žádný kód z JBosse zkopírován nebyl."

Dále pak připomíná, že i vývojář, který svůj kód daroval JBoss Group, může tentýž kód věnovat i ASF pro projekt Geronimo (pochopitelně pokud toto není explicitně vyloučeno extra smluvnim vstahem mezi vývojářem a JBoss Group).

Kromě nelichotivých komentářů adresovaných na adresu pana Fleuryho se v následující debatě řešily zejména úvahy na téma, zdali JBoss Group vlastní veškerý kód JBosse a může se tudíž cítit poškozena a konstruktivní příspěvky jasně deklarující, že ASF situaci hodlá řešit, byť za cenu času investovaného do důkladného auditu kódu Geronima.

Oficiální vyjádření ASF jsem zatím nepotkal. Bude ještě veselo...

Aktualizace (13.11.)

V konferenci geronimo-dev se pustili do auditu kódu.

/** * @author Pavel Kolesnikov * @date 10.11.2003 v 14:00 */

Open Symphony — pár postřehů

Náhodou jsem zabrousil na web projektu OpenSymphony. Dvě věci mi přijdou zaznamenáníhodné:

  • OSWorkflow — autoři je charakterizují jako "extrémně flexibilní open-source workflow mašinku". Sice nedisponuje GUI konfigurovátkem, ale přesto vypadá zajímavě. Snad se dostanu k podrobnějšímu prozkoumání.
  • WebWork — MVC framework, podle zmínek v konferenci@java.cz v českých končinách docela známý. Stránky mj. obsahují srovnání s mými oblíbenými Struts.

A kromě toho další užitečně vypadající drobnosti.