Pokaždé, když odešlete formulář metodou POST, musíte na serveru udělat redirect. Možná je to pro vás samozřejmost, ale stále se setkávám se spoustou lidí, kteří to buď neznají nebo v tom dělají chyby. více »

AspectWorks sponzoruje první závod světového poháru MTBO konaného o tomto víkendu v Řitce. MTBO (Mountain Bike Orienteering) jsou orientační závody na kole podobně jako orientační běh. Více o tomto sportu a dalších obdobných závodech najdete na stránkách mtbo.cz.
Možná jste se již také na vašem projektu setkali s nutností vytvořit unit testy pro části kódu, které při načítání dat z databáze využívají uložené procedury nebo funkce. Toto na první pohled jednoduché zadání s sebou může ovšem nést jeden problém, a tím je použití java embedded databáze pro testování. Obecně mají embedded databáze slabou nebo dokonce žádnou podporu pro psaní uložených procedur a funkcí v jazyce PL/SQL, a proto je testování částí kódů, které je využívají, problematické.
více »
Na mnoha projektech je třeba řešit databázový žurnál aplikace, který zaznamenává události v systému včetně dat, která při těchto událostech byla změněna či jen čtena. Zákazníci často požadují u událostí, které mění data, žurnálovat jak staré tak i nové hodnoty záznamu.
Implementace takového mechanismu přímo na DAO vrstvě by byla pracná a hlavně složitě konfigurovatelná. Řešení žurnálování na úrovni databázových procedur a triggerů by zase zrušilo nezávislost aplikace na konkrétním typu databáze. Hibernate pro žurnálování nabízí zajímavou funkčnost interceptor pro zachycení a zpracování různých událostí, jako například databázové CRUD operace.
více »
Na zákaznickém projektu bylo potřeba umožnit asynchronní spouštění různých handlerů, registrovaných jako Spring bean. Typicky jde o případ, kdy uživatel iniciuje vykonání nějaké činnosti, která může trvat desítky sekund nebo dokonce minut. Zároveň jsme potřebovali, aby řešení bylo persistentní, a tedy aby se naplánované úlohy neztrácely při pádu serveru.
Protože jsme již na projektu využívali Quartz Scheduler pro spouštění pravidelných úloh, použili jsme ho i pro účel tohoto asynchronního zpracování.
více »
Na twitteru vám pravidelně přinášíme doporučení nejen na technické články. Pro ty, kteří nás nesledují, ale i pro ty, kterým například nějaký odkaz utekl, přinášíme seznam toho nejzajímavějšího. Doporučená četba, která by neměla zapadnout ve štěbetání twitteru. Nakonec pro odlehčení jeden Dilbert strip.
více »
V termínu 11. – 13. dubna 2012 pořádáme školení Spring Framework v Praze a máme ještě několik volných míst. Jde o nejúspěšnější kurz z dílny AspectWorks, který je tentokrát otevřený všem zájemcům, kteří chtějí získat přehled o vývoji nad Spring Frameworkem. Cílem školení je představit Spring Framework pro všechny oblasti vývoje webových aplikací.
Zažili jste při vývoji softwaru nějaký ten „epic fail“? To se jistě rádi pobavíte na cizí účet. Následující řádky budou o tom, jak se posloupností logických kroků a racionálních rozhodnutí dopracovat k neúspěchu. Podotýkám že osoby vystupující v tomto příspěvku jsou čistě smyšlené :-)
K psaní seriálu Eclipse efektivně nás motivuje pozorování, že někteří (i zkušení) vývojáři nejsou dostatečně efektivní při práci s Eclipse IDE. Možná, že některé tipy, které našim stážistům vtloukáme do hlavy, se budou hodit i vám.
Tentokrát se zaměřím na to, jak získat přehledný výpis chyb. Dále nastavení generování metod equals a hashCode. Nechybí vám, že content assist nenabízí statické importy? Víte, že find dialog dokáže hledat zároveň jak píšete? Nakonec se naučíme kouzlit s řádky.
Při vývoji webových aplikací používáme Eclipse IDE. Z workspace dostáváme Maven závislosti na Tomcat pomocí pluginu Sysdeo. Toto řešení funguje, ale není ideální. Nastavení aplikace lze ovšem jednoduše upravit tak, aby šla spouštět na tc Serveru přímo z STS (SpringSource Tool Suite).
více »