java blog jAbLoK

... řekněte Javě Ja!

/** * @author Pavel Kolesnikov * @date 31.12.2003 v 18:32 */

JBoss 4 — novoroční předsevzetí

Hlavní vývojáři projektu JBoss — Bill Burke a Scott Stark — zveřejnili dokument nazvaný JBoss 4 Roadmap, kde popisují krátkodobé a střednědobé cíle svého snažení.

V krátkodobém horizontu jde zejména o přiblížení ke kompatibilitě s J2EE 1.4, dále důkladná integrace Hibernate (a využití Hibernate v implemenatci CMP), vylepšení GUI, přeambiciózní plán na vysoce dostupné JMS a další věci, zejména v souvislosti s AOP.

Klíčovým prvkem dlouhodobé strategie jsou POJOs — obyčejné objekty, nesvázané překombinovanými API (téma naťuknuto v nedávném článku Explicitní vs. implicitní API v J2EE).

Pro zajímavost stručný výtah z komentářů na TheServerSide.com:

  • konečně publikovali nějaký plán vývoje. příjemná změna
  • ovšem plán je to odvážný — kompletní přepis JMS implemetace opravdu odhadují na jeden člověkoměsíc??
  • dobré, dobré, ale co zapracovat na bezplatné dokumentaci (nic proti kvalitám té placené)?
  • pár zajímavých (a samozrejmě kontroverzních) příspěvku Marca Fleuryho, jejichž komentář už by byl nad rámec tohoto upozornění
/** * @author Pavel Kolesnikov * @date 30.12.2003 v 15:41 */

Tiles pro pokročilé

Na javovských stránkách IBM developerWorks si můžete po registraci prohlédnout tutorial Mastering the Tiles Framework. Přijde mi rozhodně čitelnější než dokumentace Struts, pokud máte tušení, že tiles používáte tak nějak od oka, a rádi byste se dozvěděli více, je tento tutorial pro vás tím pravým. Jen bych mu coby výukovému nástroji vytkl používání v době JSTL poněkud archaických logických tagů Struts.

(Nevíte-li, o čem tento příspěvek pojednává, stručně: Tiles je šablonovací systém, součást MVC frameworku Struts.)

/** * @author Pavel Kolesnikov * @date 30.12.2003 v 09:30 */

15 rad jak na Ant

Spoluautor knížky Java Extreme Programming Cookbook Eric M. Burke sepsal na OnJava.Com "15 antovských best practices".

Stručné shrnutí:

  • přijměte jednotné názvosloví, udržujte build.xml čitelné
  • mějte build.xml v kořenovém adresáři projektu (znáte parametr find?)
  • používejte jediný build.xml. potřebujete-li opravdu několik dílčích, mějte jeden centrální, který je používá
  • poskytněte uživatelům srozumitelnou nápovědu pomocí atributu description případně targetu help
  • poskytněte target clean
  • rozdělte build-proces do přiměřených částí, definujte závislosti
  • definujte všechny cesty centrálně v úvodu build.xml (nebo build.properties)
  • správně definujte závislosti mezi jednotlivými targety
  • udělejte váš projekt konfigurovatelný pomocí *.properties souborů, poskytněte soubor typu "sample.properties" jako příklad konfigurace
  • vyhněte se závislostem na rozházené externí zdroje — udržujte používané jary jako součást projektu nebo mějte jednotlivý pseudo-projekt, v kterém jsou tyto jary obsaženy
  • používejte správu verzí (tj. i na build.xml)
  • stanovte si Ant jako jednotný build systém. Ať vaši kolegové používají jakékoli IDE, projekt musí jít sestavit pomocí Antu
  • při vytváření archívů používejte tagu zipfileset. Tuto radu doporučuju aplikovat s rozumem — při vývoji webových aplikací vám může být užitečné deployovat aplikaci jako adresář a ne jako archív: případné změny JSP stránek se pak projeví rychleji, protože není nutné aplikaci redeployovat.
  • proveďte jednoduchý test svého build.xml: ant clean; ant compile; ant compile. Druhá kompilace by neměla nic dělat
  • nedistribujte antové obálky závislé na platformě (build.bat, build.sh)
/** * @author Pavel Kolesnikov * @date 29.12.2003 v 19:17 */

Pár nových verzí — Lucene, Websphere, eXo platform

Kromě beta verze J2SE 1.5 se nám během svátků urodilo pár dalších novinek.

Určitě potěší nová verze (1.3) fulltextového prohledávače Jakarta Lucene — podrobnosti najdete v dokumentu CHANGES.

IBM vydala preview verzi svého J2EE aplikačního serveru Websphere, která má být kompatibilní s nedávno schválenou specifikací J2EE 1.4.

Nejzajímavější z dnešní dávky je ale rozhodně portálový framework eXo platform. Z vlastností namátkou vybírám:

  • kompatibilita s JSR-168
  • Java Server Faces
  • podpora Struts
  • workflow pomocí jBPM
  • licence GPL (nikoli LGPL) + možnost placeného supportu
  • obsahuje CMS, s plánem implementovat chystaný standard Content Repository for Java
  • vývojářům pomůže grafický Wizard coby Eclipse plugin

Na TheServerSide.com vyšlo o tomto projektu velmi podrobné povídání

/** * @author Pavel Kolesnikov * @date 29.12.2003 v 15:46 */

Vánoční dárek: J2SE 1.5 Early Access i pro vás!

Před časem Sun umožnil prvním zájemcům zapojit se do testování J2SE 1.5, jak například na blogu Java.Net psal začátkem prosince Tomáš Kouba. Pro velký zájem byl příjem nových zájemců po čase pozastaven.

23.prosince se ale server JavaLobby se dohodl se Sunem na zpřístupnění beta verze J2SE registrovaným členům JavaLobby (navíc samozřejmě musíte být registrováni i u Sunů).

A protože registrovaným členem se může stát zdarma kdokoli, nic vám nebrání navštívit stránku http://www.javalobby.org/members/j2se15.jsp a vlastnoručně si ošahat, copak nám to u Sunů chystají.

Staženou verzi prý ale nesmíte diskutovat ve veřejných fórech, anžto se k tomu zavazujete při stažení. Což samozřejmě lidi budou těžko dodržovat, jak se lze přesvědčit letmým zagooglováním... Sun se prý chystá zveřejnit oficiální mailing-list k diskusím na toto téma.

Začnete-li si s nově staženou Javou hrát, určitě zjistíte, že by se hodila nějaká ta dokumentace. K ní vám snadno a rychle dopomůže antovský skript od pana Santose. Před aplikováním skriptu nezapomeňte nahradit řetězec JDK HOME za cestu ke stažené J2SE 1.5, JDK MAJOR VERSION za např. 1.5 a PLATFORM EXTENSION za .exe, nic a podobně, podle nátury vašeho operačního systému. Ovšem na Debianu mi to stejně zsegfaultovalo :), dokud jsem se nepřesunul na Tomuchův Mandrake.

Doplnění: nebylo a stále mi není jasné, co Suny vedlo k takovéto propagační akci pro JavaLobby. Přesto, že někteří desperáti bezostyšně linkují přímo na distribuční stránku, na http://java.sun.com/ o celé akci stále není ani zmínka.